Преглед изворни кода

2023-12-15 信息牌刷卡问题。

chaiyunlong пре 2 година
родитељ
комит
38a18eb9cc

+ 15 - 1
zd-modules/zd-base/src/main/java/com/zd/base/app/controller/LabBoardApi.java

@@ -467,7 +467,8 @@ public class LabBoardApi {
         if(StringUtils.isNull(cardNum) || StringUtils.isEmpty(cardNum)){
             return ResultData.fail("未识别到身份信息,请联系管理人员录入卡号信息");
         }
-        cardNum= HexStrUtils.decode(cardNum);
+        logger.info("转换前cardNum:"+hexToAscii(cardNum));
+        cardNum= HexStrUtils.decode(hexToAscii(cardNum));
         logger.info("转换后cardNum:"+cardNum);
         ResultData resultData=remoteDutyService.securityNumList(labId,cardNum);
         if(resultData==null || resultData.getCode()!=HttpStatus.SUCCESS){
@@ -481,6 +482,19 @@ public class LabBoardApi {
     }
 
 
+    public static String hexToAscii(String hexString) {
+        StringBuilder asciiStringBuilder = new StringBuilder();
+        for (int i = 0; i < hexString.length(); i += 2) { String hex = hexString.substring(i, i + 2);
+            int decimal = Integer.parseInt(hex, 16);
+            char asciiChar = (char) decimal;
+            asciiStringBuilder.append(asciiChar);
+        }
+
+        return asciiStringBuilder.toString().replace("\r", "").replace("\n", "");
+    }
+
+
+
     /**
      * 电子信息牌指纹录入
      * @param xxpUserAuthVo