소스 검색

补充检查当前机柜钥匙、锁具数量

Frankensteinly 11 달 전
부모
커밋
2c430f8bfa

+ 37 - 5
app/src/main/java/com/grkj/iscs/BusinessManager.kt

@@ -9,9 +9,7 @@ import com.clj.fastble.data.BleDevice
 import com.clj.fastble.exception.BleException
 import com.grkj.iscs.ble.BleBean
 import com.grkj.iscs.ble.BleCmdManager
-import com.grkj.iscs.ble.BleCmdManager.assembleData
 import com.grkj.iscs.ble.BleConst
-import com.grkj.iscs.ble.BleConst.REQ_WORK_TICKET_RESULT
 import com.grkj.iscs.ble.BleConst.REQ_WORK_TICKET_RESULT_PART
 import com.grkj.iscs.ble.BleConst.STATUS_READY
 import com.grkj.iscs.ble.BleConst.STATUS_WORK
@@ -36,9 +34,10 @@ import com.grkj.iscs.model.DeviceConst.DOCK_TYPE_KEY
 import com.grkj.iscs.model.DeviceConst.DOCK_TYPE_LOCK
 import com.grkj.iscs.model.DeviceConst.DOCK_TYPE_PORTABLE
 import com.grkj.iscs.model.bo.WorkTicketSendBO
-import com.grkj.iscs.presentation.PresentationManager
+import com.grkj.iscs.model.vo.ticket.TicketDetailRespVO
 import com.grkj.iscs.util.CommonUtils
 import com.grkj.iscs.util.Executor
+import com.grkj.iscs.util.SPUtils
 import com.grkj.iscs.util.ToastUtils
 import com.grkj.iscs.util.log.LogUtil
 import pub.devrel.easypermissions.AfterPermissionGranted
@@ -202,6 +201,36 @@ object BusinessManager {
 
 
     /****************************************** 蓝牙 ******************************************/
+
+    fun checkLockCount(pointCount: Int) {
+        var lockCount = 0
+        var keyCount = 0
+        val lockDockList = ModBusController.dockList.filter { it.type == DOCK_TYPE_LOCK || it.type == DOCK_TYPE_PORTABLE }
+        val keyDockList = ModBusController.dockList.filter { it.type == DOCK_TYPE_KEY || it.type == DOCK_TYPE_PORTABLE }
+        lockDockList.forEach {
+            lockCount += it.getLockList().size
+        }
+        keyDockList.forEach {
+            keyCount += it.getKeyList().size
+        }
+        // TODO 待完善锁具数量判断
+        if (lockCount < pointCount) {
+            val msg = MyApplication.instance!!.applicationContext.resources.getString(R.string.lock_is_not_enough)
+            LogUtil.e(msg)
+            ToastUtils.tip(msg)
+            // TODO 是否用户确认
+            return
+        }
+        if (keyCount == 0) {
+            val msg = MyApplication.instance!!.applicationContext.resources.getString(R.string.key_is_not_enough)
+            LogUtil.e(msg)
+            ToastUtils.tip(msg)
+            // TODO 是否用户确认
+            return
+        }
+        // TODO 弹出锁、弹出钥匙
+    }
+
     /**
      * 下发工作票
      */
@@ -386,8 +415,11 @@ object BusinessManager {
      *
      * @param isLock true:上锁任务 false:解锁任务
      */
-    fun genTicketSendJson(isLock: Boolean): WorkTicketSendBO {
-        val bo = WorkTicketSendBO()
+    fun genTicketSendJson(isLock: Boolean, vo: TicketDetailRespVO): WorkTicketSendBO {
+        val bo = WorkTicketSendBO(
+            SPUtils.getLoginUser(MyApplication.instance!!.applicationContext)?.cardNfc,
+
+        )
         return bo
     }
 

+ 3 - 0
app/src/main/java/com/grkj/iscs/fragment/TicketListFragment.kt

@@ -49,6 +49,9 @@ class TicketListFragment(var type: Int) :
                     TICKET_STATUS_FINISHED -> resources.getString(R.string.finished)
                     else -> ""
                 })
+                holder.setOnClickListener(R.id.tv_action) {
+
+                }
             }
         }
 

+ 2 - 0
app/src/main/res/values/strings.xml

@@ -57,6 +57,8 @@
     <string name="key_return_confirm_tip">工作票尚未完成,是否确认归还钥匙?</string>
     <string name="cancel">取消</string>
     <string name="ticket_id_is_null">作业票编号不能为空</string>
+    <string name="lock_is_not_enough">锁具数量不足</string>
+    <string name="key_is_not_enough">钥匙数量不足</string>
 
 
     <!--  演示页  -->