Преглед на файлове

完成取消作业和结束作业的显示和触发逻辑

Frankensteinly преди 9 месеца
родител
ревизия
32e77ec240

+ 1 - 7
app/src/main/java/com/grkj/iscs/view/fragment/JobProgressFragment.kt

@@ -30,15 +30,9 @@ class JobProgressFragment(val goBack: () -> Unit) :
         mBinding?.rvPoint?.adapter =
             object : CommonAdapter<TicketDetailMonitorRespVO.IsJobTicketPointsVO>(requireActivity(), R.layout.item_rv_point, mPointList) {
                 override fun convert(holder: ViewHolder, point: TicketDetailMonitorRespVO.IsJobTicketPointsVO, position: Int) {
+                    // TODO 缺开关状态
                     holder.setText(R.id.tv_name, point.pointName)
                     holder.setText(R.id.tv_function, point.remark)
-
-
-                    holder.setVisible(R.id.ll_lock_status, true)
-                    holder.getView<LinearLayout>(R.id.ll_lock_status).isSelected = false
-                    holder.setText(R.id.tv_lock_status, getString(R.string.unlocked))
-
-
                     when(point.pointStatus) {
                         "1" -> {
                             holder.setVisible(R.id.ll_lock_status, true)

+ 20 - 8
app/src/main/java/com/grkj/iscs/view/fragment/StepFragment.kt

@@ -1,5 +1,6 @@
 package com.grkj.iscs.view.fragment
 
+import android.view.View
 import android.widget.ImageView
 import com.bumptech.glide.Glide
 import com.google.android.material.card.MaterialCardView
@@ -26,6 +27,7 @@ class StepFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> Uni
     private var mLotoList = mutableListOf<LotoMapRespVO>()
     private var mChangePage: PageChangeBO? = null
     private var mMachineryDetail: MachineryDetailRespVO? = null
+    private var mStep: Int = 0
 
     override val viewBinding: FragmentStepBinding
         get() = FragmentStepBinding.inflate(layoutInflater)
@@ -82,15 +84,16 @@ class StepFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> Uni
             goBack()
         }
 
-        mBinding?.cbCancel?.setOnClickListener {
-            presenter?.cancelTicket(mChangePage?.ticketId!!) {
-                changePage(PageChangeBO(-1))
+        mBinding?.cbAction?.setOnClickListener {
+            if (mStep in 1..5) {
+                presenter?.cancelTicket(mChangePage?.ticketId!!) {
+                    changePage(PageChangeBO(-1))
+                }
+            } else if (mStep == 8) {
+                presenter?.finishTicket(mChangePage?.ticketId!!) {
+
+                }
             }
-            // TODO 结束作业票
-//            mBinding?.cbCancel?.setText(getString(R.string.finish_the_job))
-//            presenter?.finishTicket(mChangePage?.ticketId!!) {
-//
-//            }
         }
 
         mBinding?.llDetail?.setOnClickListener {
@@ -114,6 +117,15 @@ class StepFragment(val goBack: () -> Unit, val changePage: (PageChangeBO) -> Uni
                 step.stepDetail = it?.find { it.stepIndex == step.index }
             }
             mBinding?.rvStep?.adapter?.notifyDataSetChanged()
+            it?.filter { it.stepStatus == "1" }?.maxByOrNull { it.stepIndex!! }?.stepIndex?.let {
+                mStep = it
+            }
+            if (mStep <= 5) {
+                mBinding?.cbAction?.visibility = View.VISIBLE
+            } else if (mStep == 8) {
+                mBinding?.cbAction?.visibility = View.VISIBLE
+                mBinding?.cbAction?.setText(getString(R.string.finish_the_job))
+            }
         }
 
         presenter?.getMachineryDetail(pageChangeBO.machineryId!!,

+ 3 - 2
app/src/main/res/layout/fragment_step.xml

@@ -17,12 +17,13 @@
         app:btn_name="@string/back" />
 
     <com.grkj.iscs.view.widget.CommonBtn
-        android:id="@+id/cb_cancel"
+        android:id="@+id/cb_action"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_marginRight="@dimen/common_spacing"
         android:layout_toLeftOf="@id/cb_back"
+        android:visibility="invisible"
         app:btn_bg="@drawable/common_btn_red_bg"
         app:btn_icon="@mipmap/stop"
         app:btn_name="@string/cancel_the_job" />
@@ -30,7 +31,7 @@
     <androidx.constraintlayout.widget.ConstraintLayout
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        android:layout_above="@id/cb_cancel"
+        android:layout_above="@id/cb_action"
         android:layout_marginBottom="@dimen/common_spacing"
         android:background="@drawable/item_rv_technology_sop_bg_normal"
         android:padding="5dp">