Quellcode durchsuchen

fix: 消费服务
1.人员卡余加密密钥获取错误问题

luoyb vor 1 Jahr
Ursprung
Commit
8093997605

+ 10 - 6
ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/utils/YcEncryptUtil.java

@@ -121,7 +121,8 @@ public class YcEncryptUtil extends EncryptUtils {
      */
     public static String getBalanceSecretKey(String publicKey, String data) {
         String secretKey;
-        String cacheKey = StrUtil.replace(CacheNames.USER_SECRET_KEY, "30d", data);
+        //String cacheKey = StrUtil.replace(CacheNames.USER_SECRET_KEY, "30d", data);
+        String cacheKey = CacheNames.USER_SECRET_KEY + ":" + data;
         if (ObjectUtil.isNotNull(RedisUtils.getCacheObject(cacheKey))) {
             secretKey = RedisUtils.getCacheObject(cacheKey).toString();
         } else {
@@ -147,11 +148,12 @@ public class YcEncryptUtil extends EncryptUtils {
 
         return SecureUtil.desede(key).encryptHex(data, StandardCharsets.UTF_8);
     }
+
     /**
      * 客户公钥加密卡余
      *
-     * @param data      待加密余额
-     * @param userId    待加密余额的用户Id
+     * @param data   待加密余额
+     * @param userId 待加密余额的用户Id
      * @return 加密后的余额(16进制字符串)
      */
     public static String encryptBagBalanceByPublicKey(String data, String userId) {
@@ -172,16 +174,18 @@ public class YcEncryptUtil extends EncryptUtils {
 
         return SecureUtil.desede(key).decryptStr(data, StandardCharsets.UTF_8);
     }
+
     /**
      * 客户公钥解密卡余
      *
-     * @param data      待解密余额
-     * @param userId    待解密余额的用户Id
+     * @param data   待解密余额
+     * @param userId 待解密余额的用户Id
      * @return 解密后的余额(16进制字符串)
      */
     public static String decryptBagBalanceByPublicKey(String data, String userId) {
-         return decryptBagBalanceByPublicKey(data, userId, RedisUtils.getCacheObject(CacheNames.CUSTOM_PUB_KEY).toString());
+        return decryptBagBalanceByPublicKey(data, userId, RedisUtils.getCacheObject(CacheNames.CUSTOM_PUB_KEY).toString());
     }
+
     /**
      * 16进制字符串转字节码,只取24位
      *