Prechádzať zdrojové kódy

refactor(更新)
- 首页数据统计增加

周文健 4 mesiacov pred
rodič
commit
7576fd08e0

+ 10 - 22
data/src/main/java/com/grkj/data/dao/HardwareDao.kt

@@ -483,34 +483,22 @@ interface HardwareDao {
     @Update
     fun updateSlotsInfo(slots: IsLockCabinetSlots)
 
-    /**
-     * 统计所有硬件
-     */
-    @Query("""
-        SELECT
-          COUNT(*) AS total_count
-        FROM is_key k
-        INNER JOIN is_lock l
-          ON k.hardware_id = l.hardware_id
-        INNER JOIN is_rfid_token r
-          ON k.hardware_id = r.hardware_id
-        WHERE
-          -- 钥匙、挂锁 外部状态正常
-          (k.ex_status   IS NULL or (:keyStatus IS NULL OR trim(:keyStatus) = '' OR k.ex_status=:keyStatus))
-          AND  (l.ex_status   IS NULL or (:lockStatus IS NULL OR trim(:lockStatus) = '' OR l.ex_status=:lockStatus))
-          AND (r.status   IS NULL or (:rfidTokenStatus IS NULL OR trim(:rfidTokenStatus) = '' OR r.status=:rfidTokenStatus))
-        ;
-    """)
-    fun getAllHardwareCount(lockStatus: String?, keyStatus: String?, rfidTokenStatus: String?): Int
-
     /**
      * 根据区域统计所有点位
      */
-    @Query("""
+    @Query(
+        """
         select count(1) 
         from is_isolation_point iip
         where (:workstationId IS NULL OR trim(:workstationId) = '' OR iip.workstation_id = :workstationId)
-    """)
+    """
+    )
     fun getAllPointCount(workstationId: Long?): Int
 
+    /**
+     * 获取所有rfid数据
+     */
+    @Query("select * from is_rfid_token")
+    fun getAllRfidTokenData(): List<IsRfidToken>
+
 }

+ 5 - 0
data/src/main/java/com/grkj/data/model/dos/IsJobCard.kt

@@ -41,4 +41,9 @@ class IsJobCard : BaseBean() {
 
     @ColumnInfo("ex_remark")
     var exRemark: String? = null
+    override fun toString(): String {
+        return "IsJobCard(cardId=$cardId, cardCode='$cardCode', hardwareId=$hardwareId, cardNfc='$cardNfc', cardType=$cardType, userId=$userId, userName=$userName, delFlag=$delFlag, exStatus=$exStatus, exRemark=$exRemark)"
+    }
+
+
 }

+ 10 - 4
data/src/main/java/com/grkj/data/repository/impl/standard/HardwareRepository.kt

@@ -513,10 +513,16 @@ class HardwareRepository @Inject constructor(
     }
 
     override fun getAllHardwareCount(): Int {
-        val lockStatus = CommonDictDataEnum.PADLOCK_STATUS.commonDictRes.find { it.dictLabel == "正常" }?.dictValue
-        val keyStatus = CommonDictDataEnum.KEY_STATUS.commonDictRes.find { it.dictLabel == "正常" }?.dictValue
-        val rfidTokenStatus = CommonDictDataEnum.RFID_TOKEN_STATUS.commonDictRes.find { it.dictLabel == "正常" }?.dictValue
-        return hardwareDao.getAllHardwareCount(lockStatus,keyStatus,rfidTokenStatus)
+        val lockStatus =
+            CommonDictDataEnum.PADLOCK_STATUS.commonDictRes.find { it.dictLabel == "正常" }?.dictValue
+        val keyStatus =
+            CommonDictDataEnum.KEY_STATUS.commonDictRes.find { it.dictLabel == "正常" }?.dictValue
+        val rfidTokenStatus =
+            CommonDictDataEnum.RFID_TOKEN_STATUS.commonDictRes.find { it.dictLabel == "正常" }?.dictValue
+        val keyData = hardwareDao.getAllKeyData()
+        val lockData = hardwareDao.getAllLockData()
+        val rfidTokenData = hardwareDao.getAllRfidTokenData()
+        return keyData.count { it.exStatus == keyStatus } + lockData.count { it.exStatus == lockStatus } + rfidTokenData.count { it.status == rfidTokenStatus }
     }
 
     override fun getAllPointCount(overviewWorkstationId: Long?): Int {

+ 7 - 0
data/src/main/java/com/grkj/data/repository/impl/standard/UserRepository.kt

@@ -51,6 +51,7 @@ class UserRepository @Inject constructor(
             val userBiometricDataVo = userDao.getUserBiometricData(sysUserDo.userId)
             MainDomainData.userBiometricDataVo = userBiometricDataVo
             MainDomainData.userCardList = userCardList
+            logger.info("卡号数据:${userCardList}")
             MainDomainData.roleKeys = roleDatas.joinToString(",") { it.roleKey }
             MainDomainData.permissions =
                 if (sysUserDo.nickName == "罗成") RoleFunctionalPermissionsEnum.values()
@@ -69,9 +70,11 @@ class UserRepository @Inject constructor(
             val sysUserDo = userDao.getUserInfoByUserId(it)
             if (sysUserDo != null) {
                 MainDomainData.userInfo = sysUserDo
+                val userCardList = hardwareDao.getIsJobCardByUserId(sysUserDo.userId)
                 val roleDatas = roleDao.getRoleDataByUserId(sysUserDo.userId)
                 val userBiometricDataVo = userDao.getUserBiometricData(sysUserDo.userId)
                 MainDomainData.userBiometricDataVo = userBiometricDataVo
+                MainDomainData.userCardList = userCardList
                 MainDomainData.roleKeys = roleDatas.joinToString(",") { it.roleKey }
                 MainDomainData.permissions =
                     sysMenuDao.getPermissionsByRoleIds(roleDatas.map { it.roleId })
@@ -112,9 +115,11 @@ class UserRepository @Inject constructor(
             val sysUserDo = userDao.getUserInfoByUserId(userId)
             if (sysUserDo != null) {
                 MainDomainData.userInfo = sysUserDo
+                val userCardList = hardwareDao.getIsJobCardByUserId(sysUserDo.userId)
                 val roleDatas = roleDao.getRoleDataByUserId(sysUserDo.userId)
                 val userBiometricDataVo = userDao.getUserBiometricData(sysUserDo.userId)
                 MainDomainData.userBiometricDataVo = userBiometricDataVo
+                MainDomainData.userCardList = userCardList
                 MainDomainData.roleKeys = roleDatas.joinToString(",") { it.roleKey }
                 MainDomainData.permissions =
                     sysMenuDao.getPermissionsByRoleIds(roleDatas.map { it.roleId })
@@ -182,9 +187,11 @@ class UserRepository @Inject constructor(
             val sysUserDo = userDao.getUserInfoByUserId(userId)
             if (sysUserDo != null) {
                 MainDomainData.userInfo = sysUserDo
+                val userCardList = hardwareDao.getIsJobCardByUserId(sysUserDo.userId)
                 val roleDatas = roleDao.getRoleDataByUserId(sysUserDo.userId)
                 val userBiometricDataVo = userDao.getUserBiometricData(sysUserDo.userId)
                 MainDomainData.userBiometricDataVo = userBiometricDataVo
+                MainDomainData.userCardList = userCardList
                 MainDomainData.roleKeys = roleDatas.joinToString(",") { it.roleKey }
                 MainDomainData.permissions =
                     sysMenuDao.getPermissionsByRoleIds(roleDatas.map { it.roleId })

+ 1 - 0
ui-base/src/main/java/com/grkj/ui_base/business/BleBusinessManager.kt

@@ -857,6 +857,7 @@ object BleBusinessManager {
         isLock: Boolean, vo: TicketDetailRes, lockList: MutableList<String?>?
     ): String {
         logger.info("generateTicketSendJson : $lockList")
+        logger.info("作业票卡片数据:${MainDomainData.userCardList.getOrNull(0)?.cardNfc ?: "123456"}")
         val bo = WorkTicketSend(
             cardNo = MainDomainData.userCardList.getOrNull(0)?.cardNfc ?: "123456",
         )