瀏覽代碼

补充初始化钥匙的时候连接钥匙的逻辑;添加非上锁人操作提示

Frankensteinly 9 月之前
父節點
當前提交
45654330d7

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

@@ -369,7 +369,7 @@ object BusinessManager {
     /**
      * 注册连接监听
      */
-    private fun registerConnectListener(mac: String, callBack: ((Boolean, BleBean?) -> Unit)? = null) {
+    fun registerConnectListener(mac: String, callBack: ((Boolean, BleBean?) -> Unit)? = null) {
         if (connectListeners.any { it.mac == mac }) {
             return
         }

+ 10 - 4
app/src/main/java/com/grkj/iscs/modbus/ModBusController.kt

@@ -11,6 +11,7 @@ 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.util.Executor
+import com.grkj.iscs.util.NetApi
 import com.grkj.iscs.util.ToastUtils
 import com.grkj.iscs.util.log.LogUtil
 import java.util.concurrent.Executors
@@ -183,10 +184,15 @@ object ModBusController {
                         val rfid = res.copyOfRange(3, 11).toHexStrings(false).removeLeadingZeros()
                         LogUtil.i("初始化钥匙 RFID : $rfid")
                         updateKeyRfid(dockBean.addr.toInt(), isLeft, rfid)
-                        // TODO 蓝牙准备操作
-//                        BusinessManager.prepareBle(mac, ActivityUtils.currentActivity() as BaseActivity<*>, { _,_,_ -> }) { _,_ ->
-//
-//                        }
+                        // 蓝牙准备操作
+                        NetApi.getKeyInfo(rfid) {
+                            if (it != null && !it.macAddress.isNullOrEmpty()) {
+                                updateKeyMac(dockBean.addr.toInt(), key.isLeft, it.macAddress)
+                                BusinessManager.registerConnectListener(it.macAddress)
+                            } else {
+                                ToastUtils.tip(R.string.get_key_info_fail)
+                            }
+                        }
                     }
                     controlKeyBuckle(false, key.isLeft, dockBean.addr.toInt() - 1)
                 } else {

+ 2 - 0
app/src/main/java/com/grkj/iscs/view/presenter/JobProgressPresenter.kt

@@ -77,6 +77,7 @@ class JobProgressPresenter : BasePresenter<IJobProgressVIew>() {
         getTicketDetail(ticketId) { ticketDetail ->
             val role = ticketDetail?.jobTicketUserList?.find { it.userId == SPUtils.getLoginUser(mContext!!)?.userId && it.userType == USER_TYPE_LOCKER }
             if (role == null) {
+                ToastUtils.tip(R.string.you_are_not_locker_tip)
                 return@getTicketDetail
             }
 
@@ -143,6 +144,7 @@ class JobProgressPresenter : BasePresenter<IJobProgressVIew>() {
         getTicketDetail(ticketId) { ticketDetail ->
             val role = ticketDetail?.jobTicketUserList?.find { it.userId == SPUtils.getLoginUser(mContext!!)?.userId && it.userType == USER_TYPE_LOCKER }
             if (role == null) {
+                ToastUtils.tip(R.string.you_are_not_locker_tip)
                 return@getTicketDetail
             }
             BusinessManager.checkEquipCount(0) { keyPair, _ ->

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

@@ -171,4 +171,6 @@
     <string name="cancel_countdown">取消(%d秒)</string>
     <string name="confirm_to_colock">%s是否确认共锁?</string>
     <string name="confirm_to_uncolock">%s是否确认解除共锁?</string>
+    <string name="not_involved_in_ticket">您不参与该工票</string>
+    <string name="you_are_not_locker_tip">您不是上锁人,无法执行此操作</string>
 </resources>