merge code
This commit is contained in:
parent
6c29e7f6c7
commit
884ec8a583
@ -89,8 +89,15 @@ class TaskListFragment : BaseFragment() {
|
|||||||
deleteItem.background = requireContext().getDrawable(R.color.red)
|
deleteItem.background = requireContext().getDrawable(R.color.red)
|
||||||
deleteItem.setTextColor(requireContext().resources.getColor(R.color.white))
|
deleteItem.setTextColor(requireContext().resources.getColor(R.color.white))
|
||||||
rightMenu.addMenuItem(deleteItem)
|
rightMenu.addMenuItem(deleteItem)
|
||||||
}
|
|
||||||
|
|
||||||
|
val resetDownLoad = SwipeMenuItem(context)
|
||||||
|
resetDownLoad.height = Util.convertDpToPx(requireContext(), 60)
|
||||||
|
resetDownLoad.width = Util.convertDpToPx(requireContext(), 80)
|
||||||
|
resetDownLoad.text = "重新下载"
|
||||||
|
resetDownLoad.background = requireContext().getDrawable(R.color.btn_bg_blue)
|
||||||
|
resetDownLoad.setTextColor(requireContext().resources.getColor(R.color.white))
|
||||||
|
rightMenu.addMenuItem(resetDownLoad)
|
||||||
|
}
|
||||||
|
|
||||||
val layoutManager = LinearLayoutManager(context)
|
val layoutManager = LinearLayoutManager(context)
|
||||||
//// 设置 RecyclerView 的固定大小,避免在滚动时重新计算视图大小和布局,提高性能
|
//// 设置 RecyclerView 的固定大小,避免在滚动时重新计算视图大小和布局,提高性能
|
||||||
@ -104,11 +111,15 @@ class TaskListFragment : BaseFragment() {
|
|||||||
binding.taskListRecyclerview.setOnItemMenuClickListener { menuBridge, position ->
|
binding.taskListRecyclerview.setOnItemMenuClickListener { menuBridge, position ->
|
||||||
menuBridge.closeMenu()
|
menuBridge.closeMenu()
|
||||||
val taskBean = adapter.data[position]
|
val taskBean = adapter.data[position]
|
||||||
if (taskBean.syncStatus != FileManager.Companion.FileUploadStatus.DONE) {
|
if(menuBridge.position==0){
|
||||||
Toast.makeText(context, "数据未上传,不允许关闭!", Toast.LENGTH_SHORT)
|
if (taskBean.syncStatus != FileManager.Companion.FileUploadStatus.DONE) {
|
||||||
.show()
|
Toast.makeText(context, "数据未上传,不允许关闭!", Toast.LENGTH_SHORT)
|
||||||
} else {
|
.show()
|
||||||
viewModel.removeTask(requireContext(), taskBean)
|
} else {
|
||||||
|
viewModel.removeTask(requireContext(), taskBean)
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
viewModel.resetDownload(requireContext(), taskBean)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -410,6 +410,62 @@ class TaskViewModel @Inject constructor(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 重新下载数据任务
|
||||||
|
*/
|
||||||
|
fun resetDownload(context: Context, taskBean: TaskBean){
|
||||||
|
val mDialog = FirstDialog(context)
|
||||||
|
mDialog.setTitle("提示?")
|
||||||
|
mDialog.setMessage("是否重置下载状态,请确认!")
|
||||||
|
mDialog.setPositiveButton(
|
||||||
|
"确定"
|
||||||
|
) { dialog, _ ->
|
||||||
|
dialog.dismiss()
|
||||||
|
viewModelScope.launch(Dispatchers.IO) {
|
||||||
|
//删除已下载的数据
|
||||||
|
val fileTemp = File("${Constant.DOWNLOAD_PATH}${taskBean.evaluationTaskName}_${taskBean.dataVersion}.zip")
|
||||||
|
if(fileTemp.exists()){
|
||||||
|
fileTemp.deleteOnExit()
|
||||||
|
}
|
||||||
|
val taskFileTemp = File(Constant.USER_DATA_PATH + "/${taskBean.id}")
|
||||||
|
//重命名
|
||||||
|
if(taskFileTemp.exists()){
|
||||||
|
taskFileTemp.renameTo(File(Constant.USER_DATA_PATH + "/${taskBean.id}-back-${DateTimeUtil.getNowDate().time}"))
|
||||||
|
}
|
||||||
|
//将下载状态修改已下载
|
||||||
|
val realm = realmOperateHelper.getRealmDefaultInstance()
|
||||||
|
taskBean.syncStatus = FileManager.Companion.FileUploadStatus.NONE
|
||||||
|
taskBean.status = FileManager.Companion.FileDownloadStatus.NONE
|
||||||
|
realm.executeTransaction { r ->
|
||||||
|
r.copyToRealmOrUpdate(taskBean)
|
||||||
|
}
|
||||||
|
val nowTime: Long = DateTimeUtil.getNowDate().time
|
||||||
|
val beginNowTime: Long = nowTime - 90 * 3600 * 24 * 1000L
|
||||||
|
val syncUpload: Int = FileManager.Companion.FileUploadStatus.DONE
|
||||||
|
val objects =
|
||||||
|
realm.where(TaskBean::class.java).notEqualTo("syncStatus", syncUpload).or()
|
||||||
|
.between("operationTime", beginNowTime, nowTime)
|
||||||
|
.equalTo("syncStatus", syncUpload).findAll()
|
||||||
|
val taskList = realm.copyFromRealm(objects)
|
||||||
|
for (item in taskList) {
|
||||||
|
FileManager.checkOMDBFileInfo(item)
|
||||||
|
}
|
||||||
|
liveDataTaskList.postValue(taskList)
|
||||||
|
realm.close()
|
||||||
|
withContext(Dispatchers.Main) {
|
||||||
|
setSelectTaskBean(taskBean)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
mDialog.setNegativeButton(
|
||||||
|
"取消"
|
||||||
|
) { _, _ ->
|
||||||
|
liveDataCloseTask.postValue(false)
|
||||||
|
mDialog.dismiss()
|
||||||
|
}
|
||||||
|
mDialog.show()
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 关闭任务
|
* 关闭任务
|
||||||
*/
|
*/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user