修改同步逻辑

This commit is contained in:
qiji4215 2023-05-08 10:59:58 +08:00
parent 8b20da237b
commit 077d5bb32f
2 changed files with 29 additions and 28 deletions

View File

@ -61,7 +61,6 @@ class TaskUploadScope(
}
}
/**
* 更新状态
* @param status [OfflineMapCityBean.Status]
@ -70,6 +69,8 @@ class TaskUploadScope(
if (taskBean.syncStatus != status) {
taskBean.syncStatus = status
uploadData.postValue(taskBean)
//同步中不进行状态记录,只做界面变更显示
if(status!=FileUploadStatus.UPLOADING){
launch {
val realm = Realm.getDefaultInstance()
realm.executeTransaction {
@ -78,6 +79,7 @@ class TaskUploadScope(
}
}
}
}
/**
* 是否未上传
@ -106,18 +108,16 @@ class TaskUploadScope(
}
val realm = Realm.getDefaultInstance()
taskBean.hadLinkDvoList.forEach { hadLinkDvoBean ->
val objects = realm.where(QsRecordBean::class.java)
.equalTo("linkId", /*"84207223282277331"*/hadLinkDvoBean.linkPid).findAll()
if (objects.size == 0) {
if (taskBean.syncStatus == FileUploadStatus.WAITING)
change(FileUploadStatus.NONE)
return
}
val bodyList: MutableList<EvaluationInfo> = ArrayList()
if (objects != null) {
taskBean.hadLinkDvoList.forEach { hadLinkDvoBean ->
val objects = realm.where(QsRecordBean::class.java)
.equalTo("linkId", /*"84207223282277331"*/hadLinkDvoBean.linkPid).findAll()
if (taskBean.syncStatus == FileUploadStatus.WAITING){
change(FileUploadStatus.UPLOADING)
}
if (objects != null&&objects.size>0) {
val copyList = realm.copyFromRealm(objects)
copyList.forEach {
val evaluationInfo = EvaluationInfo(
@ -139,6 +139,8 @@ class TaskUploadScope(
bodyList.add(evaluationInfo)
}
}
}
val result = uploadManager.netApi.postRequest(bodyList)// .enqueue(object :
// Callback<ResponseBody> {
@ -154,8 +156,6 @@ class TaskUploadScope(
} else {
change(FileUploadStatus.ERROR)
}
}
}
} catch (e: Throwable) {
change(FileUploadStatus.ERROR)

View File

@ -27,6 +27,7 @@ class FileManager {
const val DONE = 1 //完成
const val ERROR = 2 //错误
const val WAITING = 3 //等待中
const val UPLOADING = 4 //同步中
}
//初始化数据文件夹