diff --git a/resource/WEB-INF/prop/hrmSalary.properties b/resource/WEB-INF/prop/hrmSalary.properties index c62ade2bb..116589d50 100644 --- a/resource/WEB-INF/prop/hrmSalary.properties +++ b/resource/WEB-INF/prop/hrmSalary.properties @@ -1,5 +1,5 @@ log=false defaultCloseNonStandard149=true AESEncryptScrect=990EB004A1C862721C1513AE90038C9E -version=2.14.3.2406.01 +version=2.14.4.2406.02 openFormulaForcedEditing=false \ No newline at end of file diff --git a/src/com/engine/salary/entity/salarysob/po/SalarySobBackItemPO.java b/src/com/engine/salary/entity/salarysob/po/SalarySobBackItemPO.java index d9751aeb8..793d64bfe 100644 --- a/src/com/engine/salary/entity/salarysob/po/SalarySobBackItemPO.java +++ b/src/com/engine/salary/entity/salarysob/po/SalarySobBackItemPO.java @@ -137,6 +137,7 @@ public class SalarySobBackItemPO{ ", valueType=" + valueType + ", formulaId=" + formulaId + ", backCalcType=" + backCalcType + + ", defaultValue=" + defaultValue + '}'; } diff --git a/src/com/engine/salary/entity/salarysob/po/SalarySobItemPO.java b/src/com/engine/salary/entity/salarysob/po/SalarySobItemPO.java index fa61408af..19a6db873 100644 --- a/src/com/engine/salary/entity/salarysob/po/SalarySobItemPO.java +++ b/src/com/engine/salary/entity/salarysob/po/SalarySobItemPO.java @@ -146,6 +146,7 @@ public class SalarySobItemPO { ", pattern=" + pattern + ", valueType=" + valueType + ", itemHide=" + itemHide + + ", defaultValue=" + defaultValue + '}'; } diff --git a/src/com/engine/salary/mapper/salaryitem/SalaryItemMapper.xml b/src/com/engine/salary/mapper/salaryitem/SalaryItemMapper.xml index 77e4b37d9..7b8f39b3b 100644 --- a/src/com/engine/salary/mapper/salaryitem/SalaryItemMapper.xml +++ b/src/com/engine/salary/mapper/salaryitem/SalaryItemMapper.xml @@ -24,6 +24,9 @@ + + + diff --git a/src/com/engine/salary/mapper/salarysob/SalarySobItemMapper.xml b/src/com/engine/salary/mapper/salarysob/SalarySobItemMapper.xml index 8765b0586..03b5a240f 100644 --- a/src/com/engine/salary/mapper/salarysob/SalarySobItemMapper.xml +++ b/src/com/engine/salary/mapper/salarysob/SalarySobItemMapper.xml @@ -16,6 +16,7 @@ + @@ -170,6 +171,7 @@ pattern=#{pattern}, value_type=#{valueType}, item_hide=#{itemHide}, + default_value=#{defaultValue}, WHERE id = #{id} AND delete_type = 0 @@ -230,9 +232,6 @@ item_hide=#{itemHide}, - - default_value=#{defaultValue}, - WHERE id = #{id} AND delete_type = 0 diff --git a/src/com/engine/salary/service/impl/SalarySendServiceImpl.java b/src/com/engine/salary/service/impl/SalarySendServiceImpl.java index be430e0a4..ba33308f5 100644 --- a/src/com/engine/salary/service/impl/SalarySendServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalarySendServiceImpl.java @@ -471,26 +471,24 @@ public class SalarySendServiceImpl extends Service implements SalarySendService @Override public Map mySalaryBill(Long salaryInfoId, Long currentEmployeeId) { -// List salarySendInfos = new LambdaQueryChainWrapper<>(salarySendInfoMapper) -// .eq(SalarySendInfoPO::getDeleteType, 0) -// .eq(SalarySendInfoPO::getTenantKey, currentTenantKey) -// .eq(SalarySendInfoPO::getId, salaryInfoId).list(); - if (salaryInfoId == null) { - throw new SalaryRunTimeException("工资单记录不存在!"); + throw new SalaryRunTimeException("工资单id为空!"); } - SalarySendInfoPO po = new SalarySendInfoPO(); - po.setDeleteType(0); - po.setId(salaryInfoId); - List salarySendInfos = salarySendInfoMapper.listSome(po); - if (CollectionUtils.isEmpty(salarySendInfos)) { + SalarySendInfoPO salarySendInfo = getSalarySendInfoMapper().getById(salaryInfoId); + if (salarySendInfo == null) { throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100511, "工资单信息不存在")); } - if (currentEmployeeId.compareTo(salarySendInfos.get(0).getEmployeeId()) != 0) { + + if (currentEmployeeId.compareTo(salarySendInfo.getEmployeeId()) != 0) { throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100511, "当前账号无法查看此工资单")); } - SalarySendInfoPO salarySendInfo = salarySendInfos.get(0); + + // 获取默认模板信息 + SalarySendPO salarySendPO = getSalarySendMapper().getById(salarySendInfo.getSalarySendId()); + if (salarySendPO == null) { + throw new SalaryRunTimeException("工资单记录不存在"); + } //工资单查看时效性 Date limitMonth = getLimitMonth(); @@ -499,11 +497,6 @@ public class SalarySendServiceImpl extends Service implements SalarySendService throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100511, "仅能查看" + salaryBillViewingLimitSetting.getLimitMonth() + "月内的工资单")); } - // 获取默认模板信息 - SalarySendPO salarySendPO = getSalarySendMapper().getById(salarySendInfo.getSalarySendId()); - if (salarySendPO == null) { - throw new SalaryRunTimeException("工资单不存在"); - } // 获取、记录首次查看时间 Date firstReadingTime = new Date(); if (salarySendInfo.getFirstReadingTime() == null) { @@ -536,10 +529,7 @@ public class SalarySendServiceImpl extends Service implements SalarySendService // .eq(SalarySendPO::getTenantKey, currentTenantKey) // .eq(SalarySendPO::getId, salarySendInfo.getSalarySendId()).list(); - SalarySendPO sendPo = new SalarySendPO(); - sendPo.setDeleteType(0); - sendPo.setId(salarySendInfo.getSalarySendId()); - List salarySends = mapper.listSome(sendPo); + List salarySends = mapper.listSome(SalarySendPO.builder().id(salarySendInfo.getSalarySendId()).build()); if (CollectionUtils.isEmpty(salarySends)) { throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100512, "工资单发放不存在")); } @@ -566,13 +556,12 @@ public class SalarySendServiceImpl extends Service implements SalarySendService // } // 获取薪资项目数据 - List salaryAcctResultPOS = getSalaryAcctResultMapper().listSome(SalaryAcctResultPO.builder().salaryAcctRecordId(salarySendInfo.getSalaryAcctRecordId()).employeeId(currentEmployeeId).build()); - if (CollUtil.isEmpty(salaryAcctResultPOS)) { - throw new SalaryRunTimeException("薪资核算结果不存在!"); - } + + Long salaryAcctRecordId = salarySendInfo.getSalaryAcctRecordId(); + List salaryAcctResultPOS = getSalaryAcctResultMapper().listSome(SalaryAcctResultPO.builder().salaryAcctRecordId(salaryAcctRecordId).employeeId(currentEmployeeId).build()); encryptUtil.decryptList(salaryAcctResultPOS, SalaryAcctResultPO.class); - SalaryAcctRecordPO salaryAcctRecordPO = getSalaryAcctRecordService(user).getById(salarySendInfo.getSalaryAcctRecordId()); + SalaryAcctRecordPO salaryAcctRecordPO = getSalaryAcctRecordService(user).getById(salaryAcctRecordId); if (salaryAcctRecordPO == null) { throw new SalaryRunTimeException("薪资核算记录不存在!"); } @@ -1844,48 +1833,31 @@ public class SalarySendServiceImpl extends Service implements SalarySendService Long recipient = param.getRecipient(); if (salaryInfoId == null) { - throw new SalaryRunTimeException("工资单记录不存在!"); + throw new SalaryRunTimeException("工资单id为空!"); } - SalarySendInfoPO po = new SalarySendInfoPO(); - po.setDeleteType(0); - po.setId(salaryInfoId); - List salarySendInfos = salarySendInfoMapper.listSome(po); - if (CollectionUtils.isEmpty(salarySendInfos)) { + SalarySendInfoPO salarySendInfo = getSalarySendInfoMapper().getById(salaryInfoId); + if (salarySendInfo == null) { throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100511, "工资单信息不存在")); } - SalarySendInfoPO salarySendInfo = salarySendInfos.get(0); - // 获取默认模板信息 SalarySendPO salarySendPO = getSalarySendMapper().getById(salarySendInfo.getSalarySendId()); if (salarySendPO == null) { - throw new SalaryRunTimeException("工资单不存在"); + throw new SalaryRunTimeException("工资单记录不存在"); } - - SalarySendPO sendPo = new SalarySendPO(); - sendPo.setDeleteType(0); - sendPo.setId(salarySendInfo.getSalarySendId()); - List salarySends = mapper.listSome(sendPo); - if (CollectionUtils.isEmpty(salarySends)) { - throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100512, "工资单发放不存在")); - } - SalarySendPO salarySend = salarySends.get(0); - Date salaryMonth = salarySend.getSalaryMonth(); - - // 获取模板 - SalarySobPO salarySob = getSalarySobService(user).getById(salarySend.getSalarySobId()); + SalarySobPO salarySob = getSalarySobService(user).getById(salarySendPO.getSalarySobId()); TaxAgentPO taxAgentPO = getTaxAgentService(user).getById(salarySendInfo.getTaxAgentId()); - List salaryTemplates = getSalaryTemplateService(user).getDefaultTemplates(Arrays.asList(salarySend.getSalarySobId(), salarySob.getId())); + List salaryTemplates = getSalaryTemplateService(user).getDefaultTemplates(Arrays.asList(salarySendPO.getSalarySobId(), salarySob.getId())); if (CollectionUtils.isEmpty(salaryTemplates)) { throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100518, "没有默认模板,无法发送")); } - SalaryBillSendDTO salaryBillSendDTO = getSalaryBillService(user).buildSendParams(sendPo, taxAgentPO.getName(), salaryTemplates.get(0)); + SalaryBillSendDTO salaryBillSendDTO = getSalaryBillService(user).buildSendParams(salarySendPO, taxAgentPO.getName(), salaryTemplates.get(0)); SalaryTemplatePO salaryTemplate = salaryBillSendDTO.getSalaryTemplate(); - if (salaryTemplate==null) { + if (salaryTemplate == null) { throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100513, "没有默认模板,无法查看")); } @@ -1977,7 +1949,7 @@ public class SalarySendServiceImpl extends Service implements SalarySendService map.put("employeeInformation", employeeInformation); map.put("salaryGroups", itemSetListDTOS); - salaryTemplate.setTheme(getBillTitle(salaryTemplate.getTheme(), salaryMonth, recipient)); + salaryTemplate.setTheme(getBillTitle(salaryTemplate.getTheme(), salarySendPO.getSalaryMonth(), recipient)); // 工资单水印文本型动态变量 == 处理 handleSalaryWatermark(salaryTemplate, salarySendInfo, recipient); map.put("salaryTemplate", salaryTemplate); diff --git a/src/com/engine/salary/service/impl/SalarySobRangeServiceImpl.java b/src/com/engine/salary/service/impl/SalarySobRangeServiceImpl.java index 0432abfee..0a4b06cb4 100644 --- a/src/com/engine/salary/service/impl/SalarySobRangeServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalarySobRangeServiceImpl.java @@ -293,7 +293,7 @@ public class SalarySobRangeServiceImpl extends Service implements SalarySobRange InputStream fileInputStream = null; try { fileInputStream = ImageFileManager.getInputStreamById(Integer.parseInt(imageId)); - List salarySobRangeImportLists = ExcelParseHelper.parse2Map(fileInputStream, SalarySobRangeImportListDTO.class, 0, 1, 5, "SpecialAddDeductionTemplate.xlsx"); + List salarySobRangeImportLists = ExcelParseHelper.parse2Map(fileInputStream, SalarySobRangeImportListDTO.class, 0, 1, 6, "SpecialAddDeductionTemplate.xlsx"); int total = salarySobRangeImportLists.size(); int index = 0;