From e234a15b428267997c903a4ed42536c5d9f14a1f Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期一, 10 十一月 2025 13:10:42 +0800
Subject: [PATCH] 2025.11.10 1. 新增巡查场景历史详情相关数据逻辑; 2. 新增工地施工阶段修改界面;
---
app/src/main/java/cn/flightfeather/thirdappmodule/repository/SceneRepository.kt | 68 ++++++++++++++++++++++++++++------
1 files changed, 56 insertions(+), 12 deletions(-)
diff --git a/app/src/main/java/cn/flightfeather/thirdappmodule/repository/SceneRepository.kt b/app/src/main/java/cn/flightfeather/thirdappmodule/repository/SceneRepository.kt
index 8d709dd..335e07b 100644
--- a/app/src/main/java/cn/flightfeather/thirdappmodule/repository/SceneRepository.kt
+++ b/app/src/main/java/cn/flightfeather/thirdappmodule/repository/SceneRepository.kt
@@ -1,14 +1,20 @@
package cn.flightfeather.thirdappmodule.repository
import cn.flightfeather.thirdappmodule.bean.entity.*
+import cn.flightfeather.thirdappmodule.bean.vo.BaseSubScene
+import cn.flightfeather.thirdappmodule.bean.vo.SceneConstructionSite
+import cn.flightfeather.thirdappmodule.bean.vo.SceneDetailStrVo
+import cn.flightfeather.thirdappmodule.bean.vo.SceneDetailVo
import cn.flightfeather.thirdappmodule.common.net.ResponseBodyCallBack
import cn.flightfeather.thirdappmodule.common.net.ResultCallBack
import cn.flightfeather.thirdappmodule.common.net.ResultObserver
import cn.flightfeather.thirdappmodule.common.net.RetrofitFactory
import cn.flightfeather.thirdappmodule.httpservice.ScenseService
+import cn.flightfeather.thirdappmodule.model.bean.BaseResponse
import cn.flightfeather.thirdappmodule.module.task.Division
import cn.flightfeather.thirdappmodule.repository.dao.DomainDao
import cn.flightfeather.thirdappmodule.repository.dao.SceneDao
+import cn.flightfeather.thirdappmodule.util.Constant
import io.reactivex.Observable
import io.reactivex.functions.Function4
import okhttp3.ResponseBody
@@ -55,16 +61,16 @@
val dbService4 = domainDao.getTown()
val zipService = Observable.zip(dbService1, dbService2, dbService3, dbService4,
- Function4<List<Province>, List<City>, List<District>, List<Town>, Response<Division>> { t1, t2, t3, t4 ->
- Response.success(
- Division(
- ArrayList(t1),
- ArrayList(t2),
- ArrayList(t3),
- ArrayList(t4)
- )
+ Function4<List<Province>, List<City>, List<District>, List<Town>, Response<Division>> { t1, t2, t3, t4 ->
+ Response.success(
+ Division(
+ ArrayList(t1),
+ ArrayList(t2),
+ ArrayList(t3),
+ ArrayList(t4)
)
- })
+ )
+ })
RetrofitFactory.executeResult(zipService, object : ResultObserver<Division>() {
override fun onSuccess(result: Division?) {
@@ -105,7 +111,7 @@
fun putScene(scene: Scense, resultCallBack: ResultCallBack<ResponseBody>) {
sceneDao.insert(scene)
retrofit.create(ScenseService::class.java).putScense(scene)
- .enqueue(ResponseBodyCallBack(resultCallBack))
+ .enqueue(ResponseBodyCallBack(resultCallBack))
}
/**
@@ -114,7 +120,7 @@
fun updateScene(scene: Scense, resultCallBack: ResultCallBack<ResponseBody>) {
sceneDao.update(scene)
retrofit.create(ScenseService::class.java).updateScense(scene)
- .enqueue(ResponseBodyCallBack(resultCallBack))
+ .enqueue(ResponseBodyCallBack(resultCallBack))
}
/**
@@ -125,6 +131,44 @@
sceneDao.update(it)
}
retrofit.create(ScenseService::class.java).updateSceneList(sceneList)
- .enqueue(ResponseBodyCallBack(resultCallBack))
+ .enqueue(ResponseBodyCallBack(resultCallBack))
+ }
+
+ /**
+ * 鑾峰彇鍦烘櫙璇︽儏锛屽寘鍚熀纭�淇℃伅鍜屽満鏅壒鏈変俊鎭�
+ */
+ fun getSceneDetail(scene: Scense, resultCallBack: ResultCallBack<SceneDetailVo<SceneConstructionSite>>) {
+ val sceneService = when (scene.typeid.toString()) {
+ Constant.SCENE_TYPE_SITE -> retrofit.create(ScenseService::class.java).getSceneDetail(scene.guid)
+ else -> return
+ }
+
+ RetrofitFactory.executeResult(sceneService, object : ResultObserver<BaseResponse<SceneDetailVo<SceneConstructionSite>>>() {
+ override fun onSuccess(result: BaseResponse<SceneDetailVo<SceneConstructionSite>>?) {
+ resultCallBack.onSuccess(result?.data)
+ }
+
+ override fun onFailure(e: Throwable, isNetWorkError: Boolean) {
+ resultCallBack.onFailure()
+ }
+ })
+ }
+
+ /**
+ * 鏇存柊鍦烘櫙璇︽儏
+ */
+ fun updateSceneDetail(vo: SceneDetailStrVo, resultCallBack: ResultCallBack<String>) {
+ vo.scene ?: return
+ val sceneService = retrofit.create(ScenseService::class.java).updateSceneDetail(vo.scene!!.typeid.toInt(), vo)
+
+ RetrofitFactory.executeResult(sceneService, object : ResultObserver<BaseResponse<String>>() {
+ override fun onSuccess(result: BaseResponse<String>?) {
+ resultCallBack.onSuccess(result?.data)
+ }
+
+ override fun onFailure(e: Throwable, isNetWorkError: Boolean) {
+ resultCallBack.onFailure()
+ }
+ })
}
}
\ No newline at end of file
--
Gitblit v1.9.3