[6.6.0]接管记录
This commit is contained in:
@@ -262,11 +262,11 @@ class TakeOverReasonWindow constructor(activity: Activity) : View.OnTouchListene
|
||||
}
|
||||
setAudio(audioStatus)
|
||||
}
|
||||
//上报
|
||||
//保存
|
||||
tvTakeOverSave.setOnClickListener{
|
||||
mTakeOverRecordInfo.reportNote = etNoteInput.text.toString()
|
||||
CallerTakeOverManager.updateRecord(mActivity,mTakeOverRecordInfo)
|
||||
clickListener?.onSaveReason()
|
||||
clickListener?.onSaveReason(mTakeOverRecordInfo)
|
||||
hideFloatWindow()
|
||||
}
|
||||
//取消
|
||||
@@ -425,7 +425,7 @@ class TakeOverReasonWindow constructor(activity: Activity) : View.OnTouchListene
|
||||
}
|
||||
|
||||
interface ClickListener {
|
||||
fun onSaveReason()
|
||||
fun onSaveReason(info: TakeOverRecordInfo)
|
||||
}
|
||||
|
||||
override fun getCategoriesSuccess(list: List<CategoryInfo>) {
|
||||
|
||||
@@ -51,6 +51,7 @@ class TakeOverRecordView @JvmOverloads constructor(
|
||||
private var takeOverListAdapter: TakeOverListAdapter ?= null
|
||||
private var clickListener: ClickListener? = null
|
||||
private val selectedUploadRecord = ArrayList<TakeOverRecordInfo>()
|
||||
private var recordList: MutableList<TakeOverRecordInfo> ?= null
|
||||
|
||||
init {
|
||||
LayoutInflater.from(context).inflate(R.layout.view_take_over_record, this, true)
|
||||
@@ -74,9 +75,8 @@ class TakeOverRecordView @JvmOverloads constructor(
|
||||
?: throw IllegalStateException("please ensure context is FragmentActivity.")
|
||||
val takeOverReasonWindow = TakeOverReasonWindow(activity)
|
||||
takeOverReasonWindow.setClickListener(object: TakeOverReasonWindow.ClickListener{
|
||||
override fun onSaveReason() {
|
||||
//刷新列表 TODO 应该局部刷新
|
||||
refreshList()
|
||||
override fun onSaveReason(info: TakeOverRecordInfo) {
|
||||
takeOverListAdapter?.notifyRecordItemChanged(info)
|
||||
}
|
||||
})
|
||||
takeOverReasonWindow.showFloatWindow(takeOverRecordInfo)
|
||||
@@ -109,12 +109,16 @@ class TakeOverRecordView @JvmOverloads constructor(
|
||||
if(selectedUploadRecord.isEmpty()){
|
||||
ToastUtils.showShort("请选择需要删除的接管记录")
|
||||
}else{
|
||||
selectedUploadRecord.forEach {
|
||||
CallerTakeOverManager.deleteRecord(context,it)
|
||||
val iterator = selectedUploadRecord.iterator()
|
||||
while (iterator.hasNext()){
|
||||
val removeRecord = iterator.next()
|
||||
CallerTakeOverManager.deleteRecord(context,removeRecord)
|
||||
takeOverListAdapter?.notifyRecordItemRemoved(removeRecord)
|
||||
iterator.remove()
|
||||
}
|
||||
refreshList()
|
||||
}
|
||||
}
|
||||
//获取接管记录列表
|
||||
refreshList()
|
||||
}
|
||||
|
||||
@@ -123,16 +127,16 @@ class TakeOverRecordView @JvmOverloads constructor(
|
||||
*/
|
||||
private fun refreshList(){
|
||||
scope.launch(Dispatchers.IO){
|
||||
val recordList= CallerTakeOverManager.getAllRecord(context)
|
||||
recordList = CallerTakeOverManager.getAllRecord(context)
|
||||
ThreadUtils.runOnUiThread {
|
||||
if(recordList.isEmpty()){
|
||||
if(recordList.isNullOrEmpty()){
|
||||
tvRecordNoData.visibility = View.VISIBLE
|
||||
recordGroup.visibility = View.GONE
|
||||
}else{
|
||||
tvRecordNoData.visibility = View.GONE
|
||||
recordGroup.visibility = View.VISIBLE
|
||||
//更新列表
|
||||
takeOverListAdapter?.setData(recordList)
|
||||
takeOverListAdapter?.setData(recordList!!)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.zhjt.mogo_core_function_devatools.workorder.adapter
|
||||
|
||||
import android.content.Context
|
||||
import android.util.Log
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
@@ -21,14 +22,36 @@ import com.zhjt.mogo_core_function_devatools.R
|
||||
*/
|
||||
class TakeOverListAdapter(private val context: Context): RecyclerView.Adapter<TakeOverListAdapter.TakeOverRecordHolder>() {
|
||||
|
||||
private var data:List<TakeOverRecordInfo> ?= null
|
||||
private var data:MutableList<TakeOverRecordInfo> ?= null
|
||||
private var clickListener: RecordClickListener ?= null
|
||||
|
||||
fun setData(data: List<TakeOverRecordInfo>){
|
||||
fun setData(data: MutableList<TakeOverRecordInfo>){
|
||||
this.data = data
|
||||
notifyDataSetChanged()
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除元素
|
||||
*/
|
||||
fun notifyRecordItemRemoved(info: TakeOverRecordInfo){
|
||||
val pos = data?.indexOf(info)
|
||||
pos?.let {
|
||||
data?.removeAt(it)
|
||||
notifyItemRemoved(it)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改元素
|
||||
*/
|
||||
fun notifyRecordItemChanged(info: TakeOverRecordInfo){
|
||||
val pos = data?.indexOf(info)
|
||||
pos?.let {
|
||||
data!![pos] = info
|
||||
notifyItemChanged(pos)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): TakeOverRecordHolder {
|
||||
val view = LayoutInflater.from(parent.context)
|
||||
.inflate(R.layout.item_take_over_record, parent, false)
|
||||
@@ -45,7 +68,11 @@ class TakeOverListAdapter(private val context: Context): RecyclerView.Adapter<Ta
|
||||
holder.ivCannotCheck.visibility = View.INVISIBLE
|
||||
holder.cbRecordSelect.visibility = View.VISIBLE
|
||||
}
|
||||
holder.cbRecordSelect.setOnCheckedChangeListener(null)
|
||||
holder.cbRecordSelect.isChecked = recordEntity.selectStatus
|
||||
holder.cbRecordSelect.tag = recordEntity
|
||||
holder.cbRecordSelect.setOnCheckedChangeListener { _, isChecked ->
|
||||
it[position].selectStatus = isChecked
|
||||
clickListener?.onSelectRecord(recordEntity,isChecked)
|
||||
}
|
||||
holder.ivCannotCheck.setOnClickListener {
|
||||
|
||||
Reference in New Issue
Block a user