diff --git a/src/com/engine/salary/encrypt/AESEncryptUtil.java b/src/com/engine/salary/encrypt/AESEncryptUtil.java index c667d39b2..7b2ad3449 100644 --- a/src/com/engine/salary/encrypt/AESEncryptUtil.java +++ b/src/com/engine/salary/encrypt/AESEncryptUtil.java @@ -27,40 +27,14 @@ public class AESEncryptUtil { * @return 加密数据 */ public static String encrypt(String source) { - if (StringUtils.isNotBlank(source)) { - return AES.encrypt(source, aesEncryptScrect); + String isEncrypt = getSalarySysConfigValue(); + //防止初始化老数据时二次加密 + if (StringUtils.isNotBlank(source) && OpenEnum.OPEN.getValue().equals(isEncrypt) && !source.startsWith(SalarySysConstant.PRE_SIGN_ENCRYPT)) { + return SalarySysConstant.PRE_SIGN_ENCRYPT + AES.encrypt(source, aesEncryptScrect); } return source; } - /** - * AES解密 - * - * @param encryptStr 加密字符串 - * @return 解密字符串 - */ - public static String decrypt(String encryptStr) { - if (StringUtils.isNotBlank(encryptStr)) { - return AES.decrypt(encryptStr, aesEncryptScrect); - } - return encryptStr; - } - - /** - * AES加密 - * - * @param source 原始数据 - * @return 加密数据 - */ -// public static String encrypt(String source) { -// String isEncrypt = getSalarySysConfigValue(); -// //防止初始化老数据时二次加密 -// if (StringUtils.isNotBlank(source) && OpenEnum.OPEN.getValue().equals(isEncrypt) && !source.startsWith(SalarySysConstant.PRE_SIGN_ENCRYPT)) { -// return SalarySysConstant.PRE_SIGN_ENCRYPT + AES.encrypt(source, aesEncryptScrect); -// } -// return source; -// } - /** * 应用设置是否开启加密 * @@ -80,20 +54,20 @@ public class AESEncryptUtil { * @param encryptStr 加密字符串 * @return 解密字符串 */ -// public static String decrypt(String encryptStr) { -// SalarySysConfPO sysConfPo = salarySysConfService.getOneByCode(SalarySysConstant.OPEN_APPLICATION_ENCRYPT); -// if (StringUtils.isNotBlank(encryptStr)) { -// if (encryptStr.startsWith(SalarySysConstant.PRE_SIGN_ENCRYPT)) { -// encryptStr = encryptStr.substring(4, encryptStr.length()); -// return AES.decrypt(encryptStr, aesEncryptScrect); -// } -// //未配置加密设置时需要解密 -// if (ObjectUtils.isEmpty(sysConfPo)) { -// return AES.decrypt(encryptStr, aesEncryptScrect); -// } -// } -// return encryptStr; -// } + public static String decrypt(String encryptStr) { + SalarySysConfPO sysConfPo = salarySysConfService.getOneByCode(SalarySysConstant.OPEN_APPLICATION_ENCRYPT); + if (StringUtils.isNotBlank(encryptStr)) { + if (encryptStr.startsWith(SalarySysConstant.PRE_SIGN_ENCRYPT)) { + encryptStr = encryptStr.substring(4, encryptStr.length()); + return AES.decrypt(encryptStr, aesEncryptScrect); + } + //未配置加密设置时需要解密 + if (ObjectUtils.isEmpty(sysConfPo)) { + return AES.decrypt(encryptStr, aesEncryptScrect); + } + } + return encryptStr; + } /** * 用于关闭加密设置后AES解密 @@ -102,14 +76,13 @@ public class AESEncryptUtil { * @return 解密字符串 */ public static String closeEncryptSetting(String encryptStr) { -// SalarySysConfPO sysConfPo = salarySysConfService.getOneByCode(SalarySysConstant.OPEN_APPLICATION_ENCRYPT); -// if (StringUtils.isNotBlank(encryptStr) && encryptStr.startsWith(SalarySysConstant.PRE_SIGN_ENCRYPT)) { -// encryptStr = encryptStr.substring(4, encryptStr.length()); -// return AES.decrypt(encryptStr, aesEncryptScrect); -// } else if (ObjectUtils.isEmpty(sysConfPo) && StringUtils.isNotBlank(encryptStr)) { -// return AES.decrypt(encryptStr, aesEncryptScrect); -// } -// return encryptStr; - return null; + SalarySysConfPO sysConfPo = salarySysConfService.getOneByCode(SalarySysConstant.OPEN_APPLICATION_ENCRYPT); + if (StringUtils.isNotBlank(encryptStr) && encryptStr.startsWith(SalarySysConstant.PRE_SIGN_ENCRYPT)) { + encryptStr = encryptStr.substring(4, encryptStr.length()); + return AES.decrypt(encryptStr, aesEncryptScrect); + } else if (ObjectUtils.isEmpty(sysConfPo) && StringUtils.isNotBlank(encryptStr)) { + return AES.decrypt(encryptStr, aesEncryptScrect); + } + return encryptStr; } }