|
|
@@ -12,6 +12,7 @@ import com.grkj.iscs.model.vo.machinery.MachineryDetailRespVO
|
|
|
import com.grkj.iscs.model.vo.ticket.LotoMapRespVO
|
|
|
import com.grkj.iscs.model.vo.ticket.StepDetailRespVO
|
|
|
import com.grkj.iscs.util.BitmapUtil
|
|
|
+import com.grkj.iscs.util.SPUtils
|
|
|
import com.grkj.iscs.util.ToastUtils
|
|
|
import com.grkj.iscs.util.log.LogUtil
|
|
|
import com.grkj.iscs.view.base.BaseMvpFragment
|
|
|
@@ -38,6 +39,7 @@ class StepFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> Uni
|
|
|
private var stationLayer: CustomStationLayer? = null
|
|
|
private val mStationList = mutableListOf<CustomStationLayer.IsolationPoint>()
|
|
|
private var mMapPicWidth = 1
|
|
|
+ private var mCanHandle = false // 是否可以操作,创建人、上锁人至少符合一个才可操作
|
|
|
|
|
|
override val viewBinding: FragmentStepBinding
|
|
|
get() = FragmentStepBinding.inflate(layoutInflater)
|
|
|
@@ -83,6 +85,10 @@ class StepFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> Uni
|
|
|
}
|
|
|
)
|
|
|
holder.setOnClickListener(R.id.root) {
|
|
|
+ if (!mCanHandle) {
|
|
|
+ ToastUtils.tip(R.string.no_permission_to_handle)
|
|
|
+ return@setOnClickListener
|
|
|
+ }
|
|
|
handleStep(step.index)
|
|
|
}
|
|
|
}
|
|
|
@@ -91,6 +97,10 @@ class StepFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> Uni
|
|
|
mBinding?.cbBack?.setOnClickListener { goBack() }
|
|
|
|
|
|
mBinding?.cbAction?.setOnClickListener {
|
|
|
+ if (!mCanHandle) {
|
|
|
+ ToastUtils.tip(R.string.no_permission_to_handle)
|
|
|
+ return@setOnClickListener
|
|
|
+ }
|
|
|
if (mStep in 1..5) {
|
|
|
presenter?.cancelTicket(mChangePage?.ticketId!!) {
|
|
|
if (it) changePage(PageChangeBO(-1))
|
|
|
@@ -113,6 +123,10 @@ class StepFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> Uni
|
|
|
}
|
|
|
|
|
|
mBinding?.llDetail?.setOnClickListener {
|
|
|
+ if (!mCanHandle) {
|
|
|
+ ToastUtils.tip(R.string.no_permission_to_handle)
|
|
|
+ return@setOnClickListener
|
|
|
+ }
|
|
|
if (mStep >= 4) {
|
|
|
changePage(PageChangeBO(2, mChangePage?.workstationId, mChangePage?.ticketId,
|
|
|
mChangePage?.machineryId, mChangePage?.machineryName))
|
|
|
@@ -149,9 +163,17 @@ class StepFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> Uni
|
|
|
override fun refreshPage(pageChangeBO: PageChangeBO) {
|
|
|
LogUtil.i("$pageChangeBO")
|
|
|
mChangePage = pageChangeBO
|
|
|
+ mCanHandle = false
|
|
|
|
|
|
presenter?.getTicketDetail(pageChangeBO.ticketId) {
|
|
|
mBinding?.tvTitle?.text = it?.ticketName
|
|
|
+ it?.createBy?.let { itCreator ->
|
|
|
+ if (itCreator.isEmpty()) {
|
|
|
+ return@let
|
|
|
+ }
|
|
|
+ mCanHandle = itCreator.toLong() == SPUtils.getLoginUser(requireContext())?.userId
|
|
|
+ }
|
|
|
+ mCanHandle = mCanHandle || it?.jobTicketUserList?.any { it.userId != null && it.userId.toLong() == SPUtils.getLoginUser(requireContext())?.userId } == true
|
|
|
}
|
|
|
|
|
|
presenter?.getStepDetail(pageChangeBO.ticketId!!) {
|