|
|
@@ -4,7 +4,11 @@ import android.view.View
|
|
|
import android.widget.ImageView
|
|
|
import com.grkj.iscs.R
|
|
|
import com.grkj.iscs.databinding.FragmentWorkerBinding
|
|
|
+import com.grkj.iscs.model.Constants.USER_ROLE_COLOCKER
|
|
|
+import com.grkj.iscs.model.Constants.USER_ROLE_LOCKER
|
|
|
import com.grkj.iscs.model.bo.PageChangeBO
|
|
|
+import com.grkj.iscs.model.vo.ticket.TicketDetailRespVO
|
|
|
+import com.grkj.iscs.model.vo.user.UserListRespVO
|
|
|
import com.grkj.iscs.view.base.BaseMvpFragment
|
|
|
import com.grkj.iscs.view.iview.IWorkerView
|
|
|
import com.grkj.iscs.view.presenter.WorkerPresenter
|
|
|
@@ -17,6 +21,12 @@ import com.zhy.adapter.recyclerview.base.ViewHolder
|
|
|
class WorkerFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> Unit) :
|
|
|
BaseMvpFragment<IWorkerView, WorkerPresenter, FragmentWorkerBinding>() {
|
|
|
|
|
|
+ private val mColockerSelectedList = mutableListOf<TicketDetailRespVO.UserVO>()
|
|
|
+ private val mLockerList = mutableListOf<UserListRespVO.Row>()
|
|
|
+ private val mColockerInsideList = mutableListOf<UserListRespVO.Row>()
|
|
|
+ private val mColockerOutsideList = mutableListOf<UserListRespVO.Row>()
|
|
|
+ private var mPageChangeBO: PageChangeBO? = null
|
|
|
+
|
|
|
override val viewBinding: FragmentWorkerBinding
|
|
|
get() = FragmentWorkerBinding.inflate(layoutInflater)
|
|
|
|
|
|
@@ -26,17 +36,11 @@ class WorkerFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> U
|
|
|
goBack()
|
|
|
}
|
|
|
|
|
|
- // TODO 测试数据
|
|
|
- val list = mutableListOf<String>()
|
|
|
- for (i in 0..25) {
|
|
|
- list.add("$i")
|
|
|
- }
|
|
|
-
|
|
|
mBinding?.rvWorkerSelected?.adapter =
|
|
|
- object : CommonAdapter<String>(requireActivity(), R.layout.item_rv_worker, list) {
|
|
|
- override fun convert(holder: ViewHolder, t: String, position: Int) {
|
|
|
+ object : CommonAdapter<TicketDetailRespVO.UserVO>(requireActivity(), R.layout.item_rv_worker, mColockerSelectedList) {
|
|
|
+ override fun convert(holder: ViewHolder, data: TicketDetailRespVO.UserVO, position: Int) {
|
|
|
holder.getView<ImageView>(R.id.iv_photo).isSelected = true
|
|
|
- holder.setText(R.id.tv_name, t)
|
|
|
+ holder.setText(R.id.tv_name, data.userName)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -53,30 +57,73 @@ class WorkerFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> U
|
|
|
}
|
|
|
|
|
|
mBinding?.rvLockerList?.adapter =
|
|
|
- object : CommonAdapter<String>(requireActivity(), R.layout.item_rv_worker, list) {
|
|
|
- override fun convert(holder: ViewHolder, t: String, position: Int) {
|
|
|
- holder.setText(R.id.tv_name, t)
|
|
|
+ object : CommonAdapter<UserListRespVO.Row>(requireActivity(), R.layout.item_rv_worker, mLockerList) {
|
|
|
+ override fun convert(holder: ViewHolder, user: UserListRespVO.Row, position: Int) {
|
|
|
+ holder.setText(R.id.tv_name, user.nickName)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
mBinding?.rvLockerInside?.adapter =
|
|
|
- object : CommonAdapter<String>(requireActivity(), R.layout.item_rv_worker, list) {
|
|
|
- override fun convert(holder: ViewHolder, t: String, position: Int) {
|
|
|
- holder.setText(R.id.tv_name, t)
|
|
|
+ object : CommonAdapter<UserListRespVO.Row>(requireActivity(), R.layout.item_rv_worker, mColockerInsideList) {
|
|
|
+ override fun convert(holder: ViewHolder, user: UserListRespVO.Row, position: Int) {
|
|
|
+ holder.setText(R.id.tv_name, user.nickName)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
mBinding?.rvLockerOutside?.adapter =
|
|
|
- object : CommonAdapter<String>(requireActivity(), R.layout.item_rv_worker, list) {
|
|
|
- override fun convert(holder: ViewHolder, t: String, position: Int) {
|
|
|
- holder.setText(R.id.tv_name, t)
|
|
|
+ object : CommonAdapter<UserListRespVO.Row>(requireActivity(), R.layout.item_rv_worker, mColockerOutsideList) {
|
|
|
+ override fun convert(holder: ViewHolder, user: UserListRespVO.Row, position: Int) {
|
|
|
+ holder.setText(R.id.tv_name, user.nickName)
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- fun refreshPage(pageChangeBO: PageChangeBO) {
|
|
|
+ override fun refreshPage(pageChangeBO: PageChangeBO) {
|
|
|
+ mPageChangeBO = pageChangeBO
|
|
|
+ mBinding?.layoutLocker?.root?.visibility = View.INVISIBLE
|
|
|
+
|
|
|
presenter?.getTicketDetail(pageChangeBO.ticketId) {
|
|
|
mBinding?.tvTitle?.text = it?.ticketName
|
|
|
+
|
|
|
+ if (it?.jobTicketUserList.isNullOrEmpty()) {
|
|
|
+ return@getTicketDetail
|
|
|
+ }
|
|
|
+ mColockerSelectedList.clear()
|
|
|
+ it?.jobTicketUserList?.forEach { user ->
|
|
|
+ if (user.userRole == USER_ROLE_LOCKER) {
|
|
|
+ mBinding?.layoutLocker?.root?.visibility = View.VISIBLE
|
|
|
+ mBinding?.layoutLocker?.tvName?.text = user.userName
|
|
|
+ } else if (user.userRole == USER_ROLE_COLOCKER) {
|
|
|
+ mColockerSelectedList.add(user)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ mBinding?.rvWorkerSelected?.adapter?.notifyDataSetChanged()
|
|
|
+ }
|
|
|
+
|
|
|
+ presenter?.getUserList(mPageChangeBO?.workstationId, 3, 9) {
|
|
|
+ println("上锁人 : $it")
|
|
|
+ mLockerList.clear()
|
|
|
+ if (!it?.rows.isNullOrEmpty()) {
|
|
|
+ mLockerList.addAll(it?.rows!!)
|
|
|
+ }
|
|
|
+ mBinding?.rvLockerList?.adapter?.notifyDataSetChanged()
|
|
|
+ }
|
|
|
+
|
|
|
+ presenter?.getUserList(mPageChangeBO?.workstationId, 4) {
|
|
|
+ println("共锁人 : $it")
|
|
|
+ mColockerInsideList.clear()
|
|
|
+ mColockerOutsideList.clear()
|
|
|
+ if (!it?.rows.isNullOrEmpty()) {
|
|
|
+ it?.rows?.forEach { user ->
|
|
|
+ if (user.unitId == 9L) {
|
|
|
+ mColockerInsideList.add(user)
|
|
|
+ } else {
|
|
|
+ mColockerOutsideList.add(user)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ mBinding?.rvLockerInside?.adapter?.notifyDataSetChanged()
|
|
|
+ mBinding?.rvLockerOutside?.adapter?.notifyDataSetChanged()
|
|
|
}
|
|
|
}
|
|
|
|