From 09100ea916ea1ce023161b92d76c58e26202b93a Mon Sep 17 00:00:00 2001 From: sy Date: Mon, 17 Oct 2022 17:53:05 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E8=96=AA=E9=85=AC=E7=B3=BB=E7=BB=9F-?= =?UTF-8?q?=E7=A6=8F=E5=88=A9=E6=A1=A3=E6=A1=88=E7=BB=93=E6=9E=84=E6=94=B9?= =?UTF-8?q?=E9=80=A0=EF=BC=8C=E6=AD=A3=E5=9C=A8=E7=BC=B4=E7=BA=B3=E9=A1=B5?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E5=8A=9F=E8=83=BD=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/salary/service/impl/SISchemeServiceImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/com/engine/salary/service/impl/SISchemeServiceImpl.java b/src/com/engine/salary/service/impl/SISchemeServiceImpl.java index 14d9059c3..1b11c4659 100644 --- a/src/com/engine/salary/service/impl/SISchemeServiceImpl.java +++ b/src/com/engine/salary/service/impl/SISchemeServiceImpl.java @@ -775,10 +775,10 @@ public class SISchemeServiceImpl extends Service implements SISchemeService { } //根据导入接口附带的runStatus来区分待增员导入和正在缴纳导入 - if (StringUtils.isNotBlank(runStatus) && runStatus.equals(EmployeeStatusEnum.PAYING)) { - if (StringUtils.isBlank((String) socialStartTimeMap.get(SalaryI18nUtil.getI18nLabel(91323, "社保起始缴纳月"))) - && StringUtils.isBlank((String) fundStartTimeMap.get(SalaryI18nUtil.getI18nLabel(91323, "公积金起始缴纳月"))) - && StringUtils.isBlank((String) otherStartTimeMap.get(SalaryI18nUtil.getI18nLabel(91323, "其他福利起始缴纳月"))) + if (StringUtils.isNotBlank(runStatus) && runStatus.equals(EmployeeStatusEnum.PAYING.getValue())) { + if (StringUtils.isBlank((String) socialStartTimeMap.get(SalaryI18nUtil.getI18nLabel(91319, "社保起始缴纳月"))) + && StringUtils.isBlank((String) fundStartTimeMap.get(SalaryI18nUtil.getI18nLabel(91483, "公积金起始缴纳月"))) + && StringUtils.isBlank((String) otherStartTimeMap.get(SalaryI18nUtil.getI18nLabel(91490, "其他福利起始缴纳月"))) ) { Map errorMessageMap = Maps.newHashMap(); errorMessageMap.put("message", rowIndex + SalaryI18nUtil.getI18nLabel(100312, "社保,公积金,其他福利方案起始缴纳月不可同时为空")); From b577295a5d342e3df2a73737aefaa3d4f78df6f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=A0=8B?= Date: Tue, 18 Oct 2022 15:42:49 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E8=96=AA=E8=B5=84=E6=A1=A3=E6=A1=88?= =?UTF-8?q?=E5=8A=A0=E5=AF=86=E8=AE=BE=E7=BD=AE=E5=A4=8D=E5=8E=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/salary/encrypt/AESEncryptUtil.java | 79 +++++++++++++------ 1 file changed, 53 insertions(+), 26 deletions(-) diff --git a/src/com/engine/salary/encrypt/AESEncryptUtil.java b/src/com/engine/salary/encrypt/AESEncryptUtil.java index 7b2ad3449..c667d39b2 100644 --- a/src/com/engine/salary/encrypt/AESEncryptUtil.java +++ b/src/com/engine/salary/encrypt/AESEncryptUtil.java @@ -27,14 +27,40 @@ public class AESEncryptUtil { * @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); + if (StringUtils.isNotBlank(source)) { + return 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; +// } + /** * 应用设置是否开启加密 * @@ -54,20 +80,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解密 @@ -76,13 +102,14 @@ 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; +// 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; } } From 1f48539e1ca3298b31b498996dd9da3cb45fe0ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Tue, 18 Oct 2022 16:44:31 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=BE=85=E5=AE=9A?= =?UTF-8?q?=E8=96=AA=E4=BB=A3=E5=8A=9E=20=E5=88=A0=E9=99=A4=E5=BE=85?= =?UTF-8?q?=E5=81=9C=E8=96=AA=E4=BB=A3=E5=8A=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/archive/SalaryArchiveMapper.java | 4 + .../mapper/archive/SalaryArchiveMapper.xml | 24 ++++++ .../salary/service/SalaryArchiveService.java | 24 ++++-- .../impl/SalaryArchiveServiceImpl.java | 75 +++++++++++-------- .../salary/web/SalaryArchiveController.java | 53 ++++++------- .../salary/wrapper/SalaryArchiveWrapper.java | 45 ++++++----- 6 files changed, 136 insertions(+), 89 deletions(-) diff --git a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.java b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.java index ce2bd1414..1775995f3 100644 --- a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.java +++ b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.java @@ -118,4 +118,8 @@ public interface SalaryArchiveMapper { void gotoPendingFromStop(@Param("ids") Collection ids); void gotoFixedFromStop(@Param("ids") Collection ids); + + void deletePendingTodo(@Param("ids") Collection ids); + + void deleteSuspendTodo(@Param("ids") Collection ids); } \ No newline at end of file diff --git a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml index 27d22f85d..9ff3290a2 100644 --- a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml +++ b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml @@ -586,4 +586,28 @@ + + UPDATE hrsa_salary_archive + + run_status='STOP_FROM_PENDING' + + WHERE run_status = 'PENDING' + and id IN + + #{id} + + + + + UPDATE hrsa_salary_archive + + run_status='FIXED' + + WHERE run_status = 'SUSPEND' + and id IN + + #{id} + + + \ No newline at end of file diff --git a/src/com/engine/salary/service/SalaryArchiveService.java b/src/com/engine/salary/service/SalaryArchiveService.java index 9649605cd..33db0ce63 100644 --- a/src/com/engine/salary/service/SalaryArchiveService.java +++ b/src/com/engine/salary/service/SalaryArchiveService.java @@ -180,6 +180,15 @@ public interface SalaryArchiveService { */ Map queryTabTotal(); + + /** + * 删除待定薪待办 + * + * @param ids + * @return + */ + String deletePendingTodo(Collection ids); + /** * 设为定薪员工 * @@ -220,13 +229,13 @@ public interface SalaryArchiveService { */ Map allGotoStop(SalaryArchiveQueryParam queryParam); -// /** -// * 删除待停薪待办 -// * -// * @param ids -// * @return -// */ -// String deleteSuspendTodo(Collection ids); + /** + * 删除待停薪待办 + * + * @param ids + * @return + */ + String deleteSuspendTodo(Collection ids); /** * 取消停薪 @@ -236,4 +245,5 @@ public interface SalaryArchiveService { */ String cancelStop(Collection ids); + } diff --git a/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java b/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java index 761424269..fef44987f 100644 --- a/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java @@ -2012,6 +2012,29 @@ public class SalaryArchiveServiceImpl extends Service implements SalaryArchiveSe return result; } + @Override + public String deletePendingTodo(Collection ids) { + if (CollectionUtils.isEmpty(ids)) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(84026, "参数错误")); + } + + List oldList = getSalaryArchiveMapper() + .listSome(SalaryArchivePO.builder() + .ids(ids) + .runStatus(SalaryArchiveStatusEnum.PENDING.getValue()) + .build()); + + + if (CollectionUtils.isEmpty(oldList)) { + return StringUtils.EMPTY; + } + // 从待定薪到停薪 + getSalaryArchiveMapper().deletePendingTodo(ids); + + return StringUtils.EMPTY; + } + + @Override public Map gotoFixed(Collection ids) { if (CollectionUtils.isEmpty(ids)) { @@ -2155,38 +2178,26 @@ public class SalaryArchiveServiceImpl extends Service implements SalaryArchiveSe return this.gotoStop(salaryArchiveIds); } -// @Override -// public String deleteSuspendTodo(Collection ids) { -// if (org.springframework.util.CollectionUtils.isEmpty(ids)) { -// throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel( 84026, "参数错误")); -// } -// List oldList = new LambdaQueryChainWrapper<>(salaryArchiveMapper) -// .eq(SalaryArchivePO::getDeleteType, 0) -// .eq(SalaryArchivePO::getTenantKey, currentTenantKey) -// .in(SalaryArchivePO::getId, ids) -// .eq(SalaryArchivePO::getRunStatus, SalaryArchiveStatusEnum.SUSPEND.getValue()) -// .list(); -// List unableList = oldList.stream().filter(f->Objects.nonNull(f.getPayEndDate()) && !f.getPayEndDate().isAfter(LocalDate.now())).collect(Collectors.toList()); -// if (CollectionUtils.isNotEmpty(unableList)) { -// throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel( 115789, "最后发薪日必须晚于今天")); -// } -// -// // 从待停薪到定薪 -// new LambdaUpdateChainWrapper<>(salaryArchiveMapper) -// .eq(SalaryArchivePO::getDeleteType, 0) -// .eq(SalaryArchivePO::getTenantKey, currentTenantKey) -// .in(SalaryArchivePO::getId, ids) -// .eq(SalaryArchivePO::getRunStatus, SalaryArchiveStatusEnum.SUSPEND.getValue()) -// .set(SalaryArchivePO::getRunStatus, SalaryArchiveStatusEnum.FIXED.getValue()) -// .set(SalaryArchivePO::getModifier, currentEmployeeId) -// .update(); -// // 记录日志 -// List newList = this.listByIds(ids); -// String operatedesc = SalaryI18nUtil.getI18nLabel( 106839, "删除待办"); -// recordLog(oldList, newList, operatedesc, currentTenantKey); -// -// return StringUtils.EMPTY; -// } + @Override + public String deleteSuspendTodo(Collection ids) { + if (org.springframework.util.CollectionUtils.isEmpty(ids)) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel( 84026, "参数错误")); + } + + List oldList = getSalaryArchiveMapper() + .listSome(SalaryArchivePO.builder() + .ids(ids) + .runStatus(SalaryArchiveStatusEnum.SUSPEND.getValue()) + .build()); + List unableList = oldList.stream().filter(f->Objects.nonNull(f.getPayEndDate()) && !f.getPayEndDate().after(new Date())).collect(Collectors.toList()); + if (CollectionUtils.isNotEmpty(unableList)) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel( 115789, "最后发薪日必须晚于今天")); + } + + // 从待停薪到定薪 + getSalaryArchiveMapper().deleteSuspendTodo(ids); + return StringUtils.EMPTY; + } @Override public String cancelStop(Collection ids) { diff --git a/src/com/engine/salary/web/SalaryArchiveController.java b/src/com/engine/salary/web/SalaryArchiveController.java index 20011d61f..f9342be27 100644 --- a/src/com/engine/salary/web/SalaryArchiveController.java +++ b/src/com/engine/salary/web/SalaryArchiveController.java @@ -118,18 +118,20 @@ public class SalaryArchiveController { } -// /** -// * 删除待定薪待办 -// * -// * @param ids -// * @return -// */ -// @PostMapping("/deletePendingTodo") -// @ApiOperation("删除待定薪待办") -// @WeaPermission -// public WeaResult deletePendingTodo(@RequestBody Collection ids) { -// return WeaResult.success(salaryArchiveWrapper.deletePendingTodo(ids, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); -// } + /** + * 删除待定薪待办 + * + * @param ids + * @return + */ + @POST + @Path("/deletePendingTodo") + @Produces(MediaType.APPLICATION_JSON) + public String deletePendingTodo(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody Collection ids) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult, String>(user).run(getSalaryArchiveWrapper(user)::deletePendingTodo, ids); + } + /** * 发薪列表 @@ -190,18 +192,19 @@ public class SalaryArchiveController { } -// /** -// * 删除待停薪待办 -// * -// * @param ids -// * @return -// */ -// @PostMapping("/deleteSuspendTodo") -// @ApiOperation("删除待停薪待办") -// @WeaPermission -// public WeaResult deleteSuspendTodo(@RequestBody Collection ids) { -// return WeaResult.success(salaryArchiveWrapper.deleteSuspendTodo(ids, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); -// } + /** + * 删除待停薪待办 + * + * @param ids + * @return + */ + @POST + @Path("/deleteSuspendTodo") + @Produces(MediaType.APPLICATION_JSON) + public String stopList(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody Collection ids) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult, String>(user).run(getSalaryArchiveWrapper(user)::deleteSuspendTodo, ids); + } /** * 停薪列表 @@ -233,7 +236,6 @@ public class SalaryArchiveController { } - /** * 薪资档案列表 * @@ -303,7 +305,6 @@ public class SalaryArchiveController { } - /** * 保存发薪设置 * diff --git a/src/com/engine/salary/wrapper/SalaryArchiveWrapper.java b/src/com/engine/salary/wrapper/SalaryArchiveWrapper.java index 88228c667..e361dbfdb 100644 --- a/src/com/engine/salary/wrapper/SalaryArchiveWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryArchiveWrapper.java @@ -190,6 +190,16 @@ public class SalaryArchiveWrapper extends Service { return list(queryParam, SalaryArchiveListTypeEnum.PENDING); } + /** + * 删除待定薪待办 + * + * @param ids + * @return + */ + public String deletePendingTodo(Collection ids) { + return getSalaryArchiveService(user).deletePendingTodo(ids); + } + /** * 定薪列表 * @@ -243,17 +253,6 @@ public class SalaryArchiveWrapper extends Service { return getSalaryArchiveService(user).allGotoFixed(queryParam); } -// /** -// * 删除待定薪待办 -// * -// * @param ids -// * @param currentEmployeeId -// * @param currentTenantKey -// * @return -// */ -// public String deletePendingTodo(Collection ids) { -// return getSalaryArchiveService(user).deletePendingTodo(ids); -// } /** * 停薪 @@ -275,17 +274,15 @@ public class SalaryArchiveWrapper extends Service { return getSalaryArchiveService(user).allGotoStop(queryParam); } -// /** -// * 删除待停薪待办 -// * -// * @param ids -// * @param currentEmployeeId -// * @param currentTenantKey -// * @return -// */ -// public String deleteSuspendTodo(Collection ids) { -// return getSalaryArchiveService(user).deleteSuspendTodo(ids); -// } + /** + * 删除待停薪待办 + * + * @param ids + * @return + */ + public String deleteSuspendTodo(Collection ids) { + return getSalaryArchiveService(user).deleteSuspendTodo(ids); + } /** * 取消停薪 @@ -345,8 +342,8 @@ public class SalaryArchiveWrapper extends Service { List> salaryItems = Lists.newArrayList(); // 2.发薪设置表单 - Map paySetForm = new HashMap<>(); - paySetForm.put("data",po); + Map paySetForm = new HashMap<>(); + paySetForm.put("data", po); // 获取所有可被引用的薪资项目 From f45dac865c1a9546f00784c71909c6091f9709ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=A0=8B?= Date: Tue, 18 Oct 2022 18:01:17 +0800 Subject: [PATCH 4/8] =?UTF-8?q?=E8=96=AA=E8=B5=84=E6=A1=A3=E6=A1=88?= =?UTF-8?q?=E5=8A=A0=E5=AF=86=E8=AE=BE=E7=BD=AE=E5=A4=8D=E5=8E=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/salary/encrypt/AESEncryptUtil.java | 79 +++++++++++++------ 1 file changed, 53 insertions(+), 26 deletions(-) diff --git a/src/com/engine/salary/encrypt/AESEncryptUtil.java b/src/com/engine/salary/encrypt/AESEncryptUtil.java index 7b2ad3449..c667d39b2 100644 --- a/src/com/engine/salary/encrypt/AESEncryptUtil.java +++ b/src/com/engine/salary/encrypt/AESEncryptUtil.java @@ -27,14 +27,40 @@ public class AESEncryptUtil { * @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); + if (StringUtils.isNotBlank(source)) { + return 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; +// } + /** * 应用设置是否开启加密 * @@ -54,20 +80,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解密 @@ -76,13 +102,14 @@ 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; +// 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; } } From 9b9daab14978f2726204680c31dafbb5fbf8fe0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=A0=8B?= Date: Tue, 18 Oct 2022 18:02:04 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E8=96=AA=E8=B5=84=E6=A1=A3=E6=A1=88?= =?UTF-8?q?=E5=8A=A0=E5=AF=86=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/salary/encrypt/AESEncryptUtil.java | 79 ++++++------------- 1 file changed, 26 insertions(+), 53 deletions(-) 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; } } From 039c7891816944f906dd32c494e838d7e346633a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=A0=8B?= Date: Wed, 19 Oct 2022 09:25:45 +0800 Subject: [PATCH 6/8] =?UTF-8?q?=E8=96=AA=E8=B5=84=E6=A1=A3=E6=A1=88?= =?UTF-8?q?=E5=8A=A0=E5=AF=86=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/encrypt/AESEncryptUtil.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/com/engine/salary/encrypt/AESEncryptUtil.java b/src/com/engine/salary/encrypt/AESEncryptUtil.java index 7b2ad3449..952a440b6 100644 --- a/src/com/engine/salary/encrypt/AESEncryptUtil.java +++ b/src/com/engine/salary/encrypt/AESEncryptUtil.java @@ -61,7 +61,8 @@ public class AESEncryptUtil { encryptStr = encryptStr.substring(4, encryptStr.length()); return AES.decrypt(encryptStr, aesEncryptScrect); } - //未配置加密设置时需要解密 + //第一版没有加AES_前缀为加密标识,所以初始解密时,需要根据是否有配置判断是否需要解密 + //未配置加密设置时,需要解密 if (ObjectUtils.isEmpty(sysConfPo)) { return AES.decrypt(encryptStr, aesEncryptScrect); } From 0e6ec32c1268df135e17c3de690c3fb4a146f16a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Wed, 19 Oct 2022 09:39:01 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E6=A1=A3=E6=A1=88=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/web/SalaryArchiveController.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/com/engine/salary/web/SalaryArchiveController.java b/src/com/engine/salary/web/SalaryArchiveController.java index f9342be27..b5b5f7209 100644 --- a/src/com/engine/salary/web/SalaryArchiveController.java +++ b/src/com/engine/salary/web/SalaryArchiveController.java @@ -440,6 +440,10 @@ public class SalaryArchiveController { if (StringUtils.isNotBlank(archiveStatus)) { param.setArchiveStatus(archiveStatus); } + String runStatusLists = request.getParameter("runStatusList"); + if (StringUtils.isNotBlank(runStatusLists)) { + param.setRunStatusList(Arrays.stream(runStatusLists.split(",")).collect(Collectors.toList())); + } return param; } From a2716c433009774b68d8442e7f1dbe95edd56cf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Wed, 19 Oct 2022 13:36:31 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E5=A4=84=E7=90=86=E6=A1=A3=E6=A1=88?= =?UTF-8?q?=E9=87=8D=E5=A4=8D=E7=94=9F=E6=88=90=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resource/sql/{薪资还原脚本.sql => 薪酬还原脚本.sql} | 3 +++ .../service/impl/SalaryArchiveServiceImpl.java | 12 ++++++------ 2 files changed, 9 insertions(+), 6 deletions(-) rename resource/sql/{薪资还原脚本.sql => 薪酬还原脚本.sql} (99%) diff --git a/resource/sql/薪资还原脚本.sql b/resource/sql/薪酬还原脚本.sql similarity index 99% rename from resource/sql/薪资还原脚本.sql rename to resource/sql/薪酬还原脚本.sql index f3846763f..ffeefcc0b 100644 --- a/resource/sql/薪资还原脚本.sql +++ b/resource/sql/薪酬还原脚本.sql @@ -119,6 +119,9 @@ delete from hrsa_tax_rate_detail where 1=1 delete from hrsa_salary_acct_result_report where 1=1 ; +delete from hrsa_insurance_base_info where 1=1 +; + INSERT INTO hrsa_insurance_category (id, insurance_name, welfare_type, is_use, payment_scope, data_type, create_time, update_time, creator, delete_type, tenant_key) VALUES (9001, '养老保险', 1, 1, '1,2', 1, '2022-02-22 10:46:02', '2022-02-22 10:46:02', 0, 0, 'all_teams') ; diff --git a/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java b/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java index fef44987f..867798b79 100644 --- a/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryArchiveServiceImpl.java @@ -1950,12 +1950,12 @@ public class SalaryArchiveServiceImpl extends Service implements SalaryArchiveSe public Map queryTabTotal() { long currentEmployeeId = user.getUID(); - // 1.历史数据处理 - handleHistory(currentEmployeeId); - // 2.待停薪自动处理 - handleSuspendData(currentEmployeeId); - // 3.增量数据处理 - handleChangeData(currentEmployeeId); +// // 1.历史数据处理 +// handleHistory(currentEmployeeId); +// // 2.待停薪自动处理 +// handleSuspendData(currentEmployeeId); +// // 3.增量数据处理 +// handleChangeData(currentEmployeeId); // tab页签数量