فهرست منبع

@task: add bdtpDownLoadTs and admDownload

bai 3 سال پیش
والد
کامیت
806c1df033

+ 2 - 1
demo/src/main/java/com/framework/app/Constants.kt

@@ -16,4 +16,5 @@ const val pathDownloadMap = "adm/downloadMap?key="
 
 const val DEVICE_ID = "device_id"
 
-const val timestamp = "timestamp"
+const val BDTP_TS = "bdtp_ts"
+const val ADM_TS = "adm_ts"

+ 4 - 0
demo/src/main/java/com/framework/mvvm/model/repository/AdmRepository.kt

@@ -2,6 +2,7 @@ package com.framework.mvvm.model.repository
 
 import android.content.SharedPreferences
 import android.util.Log
+import cn.hutool.core.util.IdUtil
 import com.framework.app.DEVICE_ID
 import com.framework.app.api.Api
 import com.framework.app.base.IRepository
@@ -415,6 +416,8 @@ class AdmRepository(
 
             val deviceId = sp.getString(DEVICE_ID, "") ?: ""
 
+            val jobId = IdUtil.simpleUUID()
+
             val building = Building(
                 buildingId = buildingId,
                 file = files,
@@ -426,6 +429,7 @@ class AdmRepository(
                 problemEquip = problemEquips,
                 areas = areas,
                 pipes = pipes,
+                uploadJobId = jobId
             )
 
             val uploadBuilding = UploadBuilding(

+ 5 - 2
demo/src/main/java/com/framework/mvvm/model/vo/AdmRequest.kt

@@ -6,5 +6,8 @@ data class AdmRequest(
     val groupCode: String = "",       // 集团代码
     val buildingId: String = "",      // 建筑id
     val uploadFlag: String = "",      // 设备唯一标识
-    val lastDownloadTime: String = "" // 时间戳
-)
+    val bdtpDownloadTs: Long = 0L,    // bdtp数据库下载同步时间戳
+    val admDownloadTs: Long = 0L      // adm数据库下载同步时间戳
+)
+
+// 先下项目, 不传buildingId

+ 3 - 1
demo/src/main/java/com/framework/mvvm/model/vo/Building.kt

@@ -16,5 +16,7 @@ data class Building(
     val problemEquip: List<ProblemEquipEntity>?,
     val pipes: List<PipeEntity>?,
     val areas: List<ServeAreaEntity>?,
-    val timestamp: String = ""
+    val bdtpDownloadTs: Long = 0L,   // bdtp数据库下载同步时间戳
+    val admDownloadTs: Long = 0L,     // adm数据库下载同步时间戳
+    val uploadJobId: String = ""
 )

+ 9 - 7
demo/src/main/java/com/framework/mvvm/mv/AdmViewModel.kt

@@ -6,12 +6,9 @@ import androidx.core.content.edit
 import androidx.lifecycle.ViewModel
 import androidx.lifecycle.viewModelScope
 import cn.sagacloud.cadengine.OkhttpUtil
-import com.framework.app.DEVICE_ID
-import com.framework.app.IP
+import com.framework.app.*
 import com.framework.app.http.FileInfo
 import com.framework.app.http.FileUploadInfo
-import com.framework.app.pathDownloadMap
-import com.framework.app.timestamp
 import com.framework.app.tools.md5
 import com.framework.app.tools.toBytes
 import com.framework.mvvm.model.data.*
@@ -92,11 +89,16 @@ class AdmViewModel(private val repository: AdmRepository) : ViewModel() {
                         groupCode = "BR",
                         buildingId = building.id,
                         uploadFlag = sp.getString(DEVICE_ID, "") ?: "",
-                        lastDownloadTime = sp.getString(timestamp, "") ?: ""
+                        bdtpDownloadTs = sp.getLong("${building.buildingId}.$BDTP_TS", 0L),
+                        admDownloadTs = sp.getLong("${building.buildingId}.$ADM_TS", 0L)
                     )
                 ) {
-                    println("downloadBuilding save buildingId and Timestamp  -> ${it.buildingId}, ${it.timestamp}")
-                    sp.edit { putString(it.buildingId, it.timestamp) }
+                    Log.e(
+                        "downloadBuilding",
+                        "bdtpDownloadTs:${it.bdtpDownloadTs}, admDownloadTs:${it.admDownloadTs}"
+                    )
+                    sp.edit { putLong("${it.buildingId}.$BDTP_TS", it.bdtpDownloadTs) }
+                    sp.edit { putLong("${it.buildingId}.$ADM_TS", it.admDownloadTs) }
                 }
             }