From 44fe9203ab84dc494a431cecd5b3682936354309 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Tue, 4 Apr 2023 14:21:25 +0800 Subject: [PATCH 01/35] =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E5=85=BB=E8=80=81?= =?UTF-8?q?=E9=87=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/salary/encrypt/EncryptUtil.java | 2 - .../dto/OtherDeductionListDTO.java | 6 +++ .../dto/OtherDeductionRecordDTO.java | 5 +++ .../param/OtherDeductionParam.java | 3 ++ .../datacollection/po/OtherDeductionPO.java | 7 ++++ .../datacollection/OtherDeductionMapper.xml | 18 +++++++- .../impl/OtherDeductionServiceImpl.java | 42 +++++++------------ 7 files changed, 52 insertions(+), 31 deletions(-) diff --git a/src/com/engine/salary/encrypt/EncryptUtil.java b/src/com/engine/salary/encrypt/EncryptUtil.java index e35d3d53b..1509904d5 100644 --- a/src/com/engine/salary/encrypt/EncryptUtil.java +++ b/src/com/engine/salary/encrypt/EncryptUtil.java @@ -16,7 +16,6 @@ import java.lang.reflect.Field; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.Map; import java.util.stream.Collectors; @Slf4j @@ -90,7 +89,6 @@ public class EncryptUtil { try { List fieldList = getFields(clazz); if (CollectionUtils.isNotEmpty(fieldList)) { - List> values = new ArrayList<>(); for (T data : dataList) { for (Field field : fieldList) { field.setAccessible(true); diff --git a/src/com/engine/salary/entity/datacollection/dto/OtherDeductionListDTO.java b/src/com/engine/salary/entity/datacollection/dto/OtherDeductionListDTO.java index fef35da8e..5ea78ea2f 100644 --- a/src/com/engine/salary/entity/datacollection/dto/OtherDeductionListDTO.java +++ b/src/com/engine/salary/entity/datacollection/dto/OtherDeductionListDTO.java @@ -108,6 +108,12 @@ public class OtherDeductionListDTO { @Encrypt private String deductionAllowedDonation; + @ExcelProperty(index = 11) + @SalaryTableColumn(text = "个人养老金", width = "10%", column = "privatePension") + @TableTitle(title = "个人养老金", dataIndex = "privatePension", key = "privatePension") + @Encrypt + private String privatePension; + @SalaryTableColumn(text = "操作", width = "20%", column = "operate") @TableTitle(title = "操作", dataIndex = "operate", key = "operate") private String operate; diff --git a/src/com/engine/salary/entity/datacollection/dto/OtherDeductionRecordDTO.java b/src/com/engine/salary/entity/datacollection/dto/OtherDeductionRecordDTO.java index caafb0010..5cdbec166 100644 --- a/src/com/engine/salary/entity/datacollection/dto/OtherDeductionRecordDTO.java +++ b/src/com/engine/salary/entity/datacollection/dto/OtherDeductionRecordDTO.java @@ -93,4 +93,9 @@ public class OtherDeductionRecordDTO { @TableTitle(title = "准予扣除的捐赠额", dataIndex = "deductionAllowedDonation", key = "deductionAllowedDonation") @Encrypt private String deductionAllowedDonation; + + @SalaryTableColumn(text = "个人养老金", width = "10%", column = "privatePension") + @TableTitle(title = "个人养老金", dataIndex = "privatePension", key = "privatePension") + @Encrypt + private String privatePension; } diff --git a/src/com/engine/salary/entity/datacollection/param/OtherDeductionParam.java b/src/com/engine/salary/entity/datacollection/param/OtherDeductionParam.java index fee579dec..06311ed20 100644 --- a/src/com/engine/salary/entity/datacollection/param/OtherDeductionParam.java +++ b/src/com/engine/salary/entity/datacollection/param/OtherDeductionParam.java @@ -56,5 +56,8 @@ public class OtherDeductionParam { // 准予扣除的捐赠额 private String deductionAllowedDonation; + //个人养老金 + private String privatePension; + } diff --git a/src/com/engine/salary/entity/datacollection/po/OtherDeductionPO.java b/src/com/engine/salary/entity/datacollection/po/OtherDeductionPO.java index addccafa3..babc789a9 100644 --- a/src/com/engine/salary/entity/datacollection/po/OtherDeductionPO.java +++ b/src/com/engine/salary/entity/datacollection/po/OtherDeductionPO.java @@ -68,6 +68,13 @@ public class OtherDeductionPO { @Encrypt private String deductionAllowedDonation; + /** + * 个人养老金 + */ + @SalaryFormulaVar(defaultLabel = "个人养老金", labelId = 91240, dataType = "number") + @Encrypt + private String privatePension; + /** * 创建时间 */ diff --git a/src/com/engine/salary/mapper/datacollection/OtherDeductionMapper.xml b/src/com/engine/salary/mapper/datacollection/OtherDeductionMapper.xml index 8ec6bffc5..2d377e0ea 100644 --- a/src/com/engine/salary/mapper/datacollection/OtherDeductionMapper.xml +++ b/src/com/engine/salary/mapper/datacollection/OtherDeductionMapper.xml @@ -15,6 +15,7 @@ + @@ -34,6 +35,7 @@ , t.creator , t.delete_type , t.tenant_key + , t.private_pension @@ -77,7 +79,8 @@ t1.business_healthy_insurance, t1.tax_delay_endowment_insurance, t1.other_deduction, - t1.deduction_allowed_donation + t1.deduction_allowed_donation, + t1.private_pension @@ -332,6 +335,7 @@ tax_delay_endowment_insurance, other_deduction, deduction_allowed_donation, + private_pension, create_time, update_time, creator, @@ -347,6 +351,7 @@ #{item.taxDelayEndowmentInsurance}, #{item.otherDeduction}, #{item.deductionAllowedDonation}, + #{item.privatePension}, #{item.createTime}, #{item.updateTime}, #{item.creator}, @@ -363,6 +368,7 @@ tax_delay_endowment_insurance, other_deduction, deduction_allowed_donation, + private_pension, create_time, update_time, creator, @@ -378,6 +384,7 @@ #{item.taxDelayEndowmentInsurance,jdbcType=VARCHAR}, #{item.otherDeduction,jdbcType=VARCHAR}, #{item.deductionAllowedDonation,jdbcType=VARCHAR}, + #{item.privatePension,jdbcType=VARCHAR}, #{item.createTime,jdbcType=DATE}, #{item.updateTime,jdbcType=DATE}, #{item.creator,jdbcType=DOUBLE}, @@ -395,6 +402,7 @@ tax_delay_endowment_insurance, other_deduction, deduction_allowed_donation, + private_pension, create_time, update_time, creator, @@ -409,6 +417,7 @@ #{item.taxDelayEndowmentInsurance}, #{item.otherDeduction}, #{item.deductionAllowedDonation}, + #{item.privatePension}, #{item.createTime}, #{item.updateTime}, #{item.creator}, @@ -448,6 +457,13 @@ + + + + when id=#{item.id} then #{item.privatePension} + + + where id in diff --git a/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java b/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java index e080fb0c3..a9c754fda 100644 --- a/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java +++ b/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java @@ -99,8 +99,8 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction //申报月份 List declareMonth = queryParam.getDeclareMonth(); if (CollectionUtils.isNotEmpty(declareMonth)) { - queryParam.setDeclareMonth(declareMonth.stream().map(e -> e + "-01 00:00:00").collect(Collectors.toList())); - queryParam.setDeclareMonthDate(declareMonth.stream().map(e -> e + "-01 00:00:00").map(SalaryDateUtil::dateStrToLocalTime).collect(Collectors.toList())); + queryParam.setDeclareMonth(declareMonth.stream().filter(StringUtils::isNotBlank).map(e -> e + "-01 00:00:00").collect(Collectors.toList())); + queryParam.setDeclareMonthDate(declareMonth.stream().filter(StringUtils::isNotBlank).map(e -> e + "-01 00:00:00").map(SalaryDateUtil::dateStrToLocalTime).collect(Collectors.toList())); } //排序配置 @@ -162,7 +162,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction InputStream fileInputStream = null; try { fileInputStream = ImageFileManager.getInputStreamById(Integer.parseInt(imageId)); - List OtherDeductions = ExcelParseHelper.parse2Map(fileInputStream, OtherDeductionListDTO.class, 0, 1, 11, "OtherDeductionTemplate.xlsx"); + List OtherDeductions = ExcelParseHelper.parse2Map(fileInputStream, OtherDeductionListDTO.class, 0, 1, 12, "OtherDeductionTemplate.xlsx"); apidatas.put("preview", OtherDeductions); } finally { IOUtils.closeQuietly(fileInputStream); @@ -198,7 +198,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction InputStream fileInputStream = null; try { fileInputStream = ImageFileManager.getInputStreamById(Integer.parseInt(imageId)); - List OtherDeductions = ExcelParseHelper.parse2Map(fileInputStream, OtherDeductionListDTO.class, 0, 1, 11, "OtherDeductionTemplate.xlsx"); + List OtherDeductions = ExcelParseHelper.parse2Map(fileInputStream, OtherDeductionListDTO.class, 0, 1, 12, "OtherDeductionTemplate.xlsx"); int total = OtherDeductions.size(); int index = 0; @@ -330,19 +330,11 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction //准予扣除的捐赠额 String deductionAllowedDonation = dto.getDeductionAllowedDonation(); po.setDeductionAllowedDonation(deductionAllowedDonation); + //个人养老金 + String privatePension = dto.getPrivatePension(); + po.setPrivatePension(privatePension); - //fixme 分权判断 -// if (openDevolution) { -// OtherDeductionPO finalPoE = po; -// Optional optionalTaxAgentEmp = taxAgentEmployees.stream().filter(f -> f.getEmployeeId().equals(finalPoE.getEmployeeId())).findFirst(); -// if (!optionalTaxAgentEmp.isPresent()) { -// Map errorMessageMap = Maps.newHashMap(); -// errorMessageMap.put("message", rowIndex + "该条数据不在个税扣缴义务人人员范围内,不可导入"); -// errorData.add(errorMessageMap); -// errorSum += 1; -// } -// } // 判断是否有核算过 if (CollectionUtils.isNotEmpty(salaryAcctEmployees)) { OtherDeductionPO finalPo = po; @@ -421,7 +413,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction private List> getExcelRowList(OtherDeductionQueryParam param) { long employeeId = user.getUID(); //excel标题 - List title = Arrays.asList("姓名", "个税扣缴义务人", "部门", "手机号", "工号", "证件号码", "入职日期", "商业健康保险", "税延养老保险", "其他", "准予扣除的捐赠额"); + List title = Arrays.asList("姓名", "个税扣缴义务人", "部门", "手机号", "工号", "证件号码", "入职日期", "商业健康保险", "税延养老保险", "其他", "准予扣除的捐赠额", "个人养老金"); //排序配置 OrderRuleVO orderRule = getSalarySysConfService(user).orderRule(); param.setOrderRule(orderRule); @@ -460,6 +452,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction cellList.add(Util.null2String(dto.getTaxDelayEndowmentInsurance())); cellList.add(Util.null2String(dto.getOtherDeduction())); cellList.add(Util.null2String(dto.getDeductionAllowedDonation())); + cellList.add(Util.null2String(dto.getPrivatePension())); return cellList; }).collect(Collectors.toList())) .orElse(Collections.emptyList()); @@ -523,7 +516,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction */ private List> getExcelRowDetailList(OtherDeductionQueryParam param) { //excel标题 - List title = Arrays.asList("姓名", "申报月份", "个税扣缴义务人", "部门", "手机号", "工号", "商业健康保险", "税延养老保险", "其他", "准予扣除的捐赠额"); + List title = Arrays.asList("姓名", "申报月份", "个税扣缴义务人", "部门", "手机号", "工号", "商业健康保险", "税延养老保险", "其他", "准予扣除的捐赠额","个人养老金"); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM"); //查询详细信息 @@ -543,6 +536,7 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction cellList.add(Util.null2String(dto.getTaxDelayEndowmentInsurance())); cellList.add(Util.null2String(dto.getOtherDeduction())); cellList.add(Util.null2String(dto.getDeductionAllowedDonation())); + cellList.add(Util.null2String(dto.getPrivatePension())); return cellList; }).collect(Collectors.toList())) .orElse(Collections.emptyList()); @@ -663,18 +657,10 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction //准予扣除的捐赠额 String deductionAllowedDonation = otherDeductionParam.getDeductionAllowedDonation(); po.setDeductionAllowedDonation(deductionAllowedDonation); + //个人养老金 + String privatePension = otherDeductionParam.getPrivatePension(); + po.setPrivatePension(privatePension); - //fixme 分权判断 -// if (openDevolution) { -// OtherDeductionPO finalPoE = po; -// Optional optionalTaxAgentEmp = taxAgentEmployees.stream().filter(f -> f.getEmployeeId().equals(finalPoE.getEmployeeId())).findFirst(); -// if (!optionalTaxAgentEmp.isPresent()) { -// Map errorMessageMap = Maps.newHashMap(); -// errorMessageMap.put("message", rowIndex + "该条数据不在个税扣缴义务人人员范围内,不可导入"); -// errorData.add(errorMessageMap); -// errorSum += 1; -// } -// } // 判断是否有核算过 if (CollectionUtils.isNotEmpty(salaryAcctEmployees)) { From bb76df37185c9975d2dd6511f8aeae9bc0748174 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Tue, 4 Apr 2023 17:29:56 +0800 Subject: [PATCH 02/35] =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E5=85=BB=E8=80=81?= =?UTF-8?q?=E9=87=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../archive/SalaryArchiveItemPOEncrypt.java | 49 ------- .../SalaryItemAdjustRecordListDTOEncrypt.java | 20 --- .../datacollection/AddUpDeductionEncrypt.java | 78 ---------- .../AddUpDeductionRecordStrDTOEncrypt.java | 55 ------- .../AddUpDeductionStrDTOEncrypt.java | 35 ----- .../AddUpSituationDTOEncrypt.java | 81 ----------- .../datacollection/AddUpSituationEncrypt.java | 132 ----------------- .../AddUpSituationRecordDTOEncrypt.java | 64 --------- .../OtherDeductionListDTOEncrypt.java | 66 --------- .../OtherDeductionPOEncrypt.java | 56 -------- .../OtherDeductionRecordDTOEncrypt.java | 65 --------- .../SpecialAddDeductionEncrypt.java | 94 ------------ .../SalaryAcctResultReportPOEncrypt.java | 35 ----- .../salaryacct/ExcelAcctResultPOEncrypt.java | 67 --------- .../salaryacct/SalaryAcctResultPOEncrypt.java | 52 ------- .../ExcelInsuranceDetailPOEncrypt.java | 112 --------------- .../InsuranceAccountDetailPOEncrypt.java | 136 ------------------ .../InsuranceAccountDetailTempPOEncrypt.java | 86 ----------- .../encrypt/siaccount/SiAccountEncrypt.java | 61 -------- .../InsuranceArchivesFundSchemePOEncrypt.java | 45 ------ ...InsuranceArchivesOtherSchemePOEncrypt.java | 45 ------ ...nsuranceArchivesSocialSchemePOEncrypt.java | 45 ------ .../siexport/AccountExportPOEncrypt.java | 86 ----------- .../siexport/ExcelAccountExportPOEncrypt.java | 86 ----------- .../InsuranceSchemeDetailPOEncrypt.java | 54 ------- .../TaxDeclarationDetailEncrypt.java | 36 ----- .../TaxDeclarationDetailPOEncrypt.java | 54 ------- .../impl/OtherDeductionServiceImpl.java | 9 +- .../impl/SalaryAcctResultServiceImpl.java | 4 +- .../impl/SalarySysConfServiceImpl.java | 2 + 30 files changed, 12 insertions(+), 1798 deletions(-) delete mode 100644 src/com/engine/salary/encrypt/archive/SalaryArchiveItemPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/archive/SalaryItemAdjustRecordListDTOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/datacollection/AddUpDeductionEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/datacollection/AddUpDeductionRecordStrDTOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/datacollection/AddUpDeductionStrDTOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/datacollection/AddUpSituationDTOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/datacollection/AddUpSituationEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/datacollection/AddUpSituationRecordDTOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/datacollection/OtherDeductionListDTOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/datacollection/OtherDeductionPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/datacollection/OtherDeductionRecordDTOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/datacollection/SpecialAddDeductionEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/report/SalaryAcctResultReportPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/salaryacct/ExcelAcctResultPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/salaryacct/SalaryAcctResultPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/siaccount/ExcelInsuranceDetailPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/siaccount/InsuranceAccountDetailPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/siaccount/InsuranceAccountDetailTempPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/siaccount/SiAccountEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/siarchives/InsuranceArchivesFundSchemePOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/siarchives/InsuranceArchivesOtherSchemePOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/siarchives/InsuranceArchivesSocialSchemePOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/siexport/AccountExportPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/siexport/ExcelAccountExportPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/sischeme/InsuranceSchemeDetailPOEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/taxdeclaration/TaxDeclarationDetailEncrypt.java delete mode 100644 src/com/engine/salary/encrypt/taxdeclaration/TaxDeclarationDetailPOEncrypt.java diff --git a/src/com/engine/salary/encrypt/archive/SalaryArchiveItemPOEncrypt.java b/src/com/engine/salary/encrypt/archive/SalaryArchiveItemPOEncrypt.java deleted file mode 100644 index b307616a8..000000000 --- a/src/com/engine/salary/encrypt/archive/SalaryArchiveItemPOEncrypt.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.engine.salary.encrypt.archive; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.salaryarchive.po.SalaryArchiveItemPO; - -import java.util.List; - -/** - * hrsa_salary_archive_item: 加解密 - * 字段: - * item_value - */ -@Deprecated -public class SalaryArchiveItemPOEncrypt { - public static List encryptSalaryArchiveItemPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setItemValue(AESEncryptUtil.encrypt(item.getItemValue())); - }); - return list; - } - - public static List decryptSalaryArchiveItemPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setItemValue(AESEncryptUtil.decrypt(item.getItemValue())); - }); - return list; - } - - public static SalaryArchiveItemPO encryptSalaryArchiveItemPO(SalaryArchiveItemPO item) { - if(item == null) { - return item; } - item.setItemValue(AESEncryptUtil.encrypt(item.getItemValue())); - return item; - } - - public static SalaryArchiveItemPO decryptSalaryArchiveItemPO(SalaryArchiveItemPO item) { - if(item == null) { - return item; - } - item.setItemValue(AESEncryptUtil.decrypt(item.getItemValue())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/archive/SalaryItemAdjustRecordListDTOEncrypt.java b/src/com/engine/salary/encrypt/archive/SalaryItemAdjustRecordListDTOEncrypt.java deleted file mode 100644 index 404b0b3f4..000000000 --- a/src/com/engine/salary/encrypt/archive/SalaryItemAdjustRecordListDTOEncrypt.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.engine.salary.encrypt.archive; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.salaryarchive.dto.SalaryItemAdjustRecordListDTO; - -import java.util.List; - -@Deprecated -public class SalaryItemAdjustRecordListDTOEncrypt { - public static List decryptSalaryItemAdjustRecordListDTOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setAdjustBefore(AESEncryptUtil.decrypt(item.getAdjustBefore())); - item.setAdjustAfter(AESEncryptUtil.decrypt(item.getAdjustAfter())); - }); - return list; - } -} diff --git a/src/com/engine/salary/encrypt/datacollection/AddUpDeductionEncrypt.java b/src/com/engine/salary/encrypt/datacollection/AddUpDeductionEncrypt.java deleted file mode 100644 index 848c56ab2..000000000 --- a/src/com/engine/salary/encrypt/datacollection/AddUpDeductionEncrypt.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.engine.salary.encrypt.datacollection; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.datacollection.AddUpDeduction; - -import java.util.List; - -/** - * hrsa_add_up_deduction: 数据加解密 - * 字段: - * add_up_child_education - * add_up_continuing_education - * add_up_housing_loan_interest - * add_up_housing_rent - * add_up_support_elderly - * add_up_illness_medical - * add_up_infant_care - */ -@Deprecated -public class AddUpDeductionEncrypt { - @Deprecated - public static List encryptAddUpDeductionList(List list) { - list.forEach(item -> { - item.setAddUpChildEducation(AESEncryptUtil.encrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.encrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.encrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.encrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.encrypt(item.getAddUpSupportElderly())); - item.setAddUpIllnessMedical(AESEncryptUtil.encrypt(item.getAddUpIllnessMedical())); - item.setAddUpInfantCare(AESEncryptUtil.encrypt(item.getAddUpInfantCare())); - }); - return list; - } - - @Deprecated - public static List decryptAddUpDeductionList(List list) { - list.forEach(item -> { - item.setAddUpChildEducation(AESEncryptUtil.decrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.decrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.decrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.decrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.decrypt(item.getAddUpSupportElderly())); - item.setAddUpIllnessMedical(AESEncryptUtil.decrypt(item.getAddUpIllnessMedical())); - item.setAddUpInfantCare(AESEncryptUtil.decrypt(item.getAddUpInfantCare())); - }); - return list; - } - - @Deprecated - public static AddUpDeduction encryptAddUpDeduction(AddUpDeduction item) { - if(item == null) { - return item; - } - item.setAddUpChildEducation(AESEncryptUtil.encrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.encrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.encrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.encrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.encrypt(item.getAddUpSupportElderly())); - item.setAddUpIllnessMedical(AESEncryptUtil.encrypt(item.getAddUpIllnessMedical())); - item.setAddUpInfantCare(AESEncryptUtil.encrypt(item.getAddUpInfantCare())); - return item; - } - - @Deprecated - public static AddUpDeduction decryptAddUpDeduction(AddUpDeduction item) { - if(item == null) { - return item; - } - item.setAddUpChildEducation(AESEncryptUtil.decrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.decrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.decrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.decrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.decrypt(item.getAddUpSupportElderly())); - item.setAddUpIllnessMedical(AESEncryptUtil.decrypt(item.getAddUpIllnessMedical())); - item.setAddUpInfantCare(AESEncryptUtil.decrypt(item.getAddUpInfantCare())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/datacollection/AddUpDeductionRecordStrDTOEncrypt.java b/src/com/engine/salary/encrypt/datacollection/AddUpDeductionRecordStrDTOEncrypt.java deleted file mode 100644 index 0750a6422..000000000 --- a/src/com/engine/salary/encrypt/datacollection/AddUpDeductionRecordStrDTOEncrypt.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.engine.salary.encrypt.datacollection; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.datacollection.dto.AddUpDeductionRecordDTO; - -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; - -/** - * hrsa_add_up_deduction: 数据加解密 - * 字段: - * add_up_child_education - * add_up_continuing_education - * add_up_housing_loan_interest - * add_up_housing_rent - * add_up_support_elderly - */ -@Deprecated -public class AddUpDeductionRecordStrDTOEncrypt { - public static List decryptAddUpDeductionRecordDTO(List list) { - if(list == null || list.size() == 0) { - return new ArrayList<>(); - } - list.forEach(item -> { - item.setAddUpChildEducation(AESEncryptUtil.decrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.decrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.decrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.decrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.decrypt(item.getAddUpSupportElderly())); - item.setAddUpIllnessMedical(AESEncryptUtil.decrypt(item.getAddUpIllnessMedical())); - item.setAddUpInfantCare(AESEncryptUtil.decrypt(item.getAddUpInfantCare())); - }); - return list.stream().map(item -> { - return AddUpDeductionRecordDTO.builder() - .id(item.getId()) - .employeeId(item.getEmployeeId()) - .username(item.getUsername()) - .declareMonth(item.getDeclareMonth()) - .taxAgentName(item.getTaxAgentName()) - .taxAgentId(item.getTaxAgentId()) - .departmentName(item.getDepartmentName()) - .mobile(item.getMobile()) - .jobNum(item.getJobNum()) - .addUpChildEducation(item.getAddUpChildEducation()) - .addUpContinuingEducation(item.getAddUpContinuingEducation()) - .addUpHousingLoanInterest(item.getAddUpHousingLoanInterest()) - .addUpHousingRent(item.getAddUpHousingRent()) - .addUpSupportElderly(item.getAddUpSupportElderly()) - .addUpIllnessMedical(item.getAddUpIllnessMedical()) - .addUpInfantCare(item.getAddUpInfantCare()) - .build(); - }).collect(Collectors.toList()); - } -} diff --git a/src/com/engine/salary/encrypt/datacollection/AddUpDeductionStrDTOEncrypt.java b/src/com/engine/salary/encrypt/datacollection/AddUpDeductionStrDTOEncrypt.java deleted file mode 100644 index 4877fe406..000000000 --- a/src/com/engine/salary/encrypt/datacollection/AddUpDeductionStrDTOEncrypt.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.engine.salary.encrypt.datacollection; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.datacollection.dto.AddUpDeductionDTO; - -import java.util.List; - -/** - * hrsa_add_up_deduction: 数据加解密 - * 字段: - * add_up_child_education - * add_up_continuing_education - * add_up_housing_loan_interest - * add_up_housing_rent - * add_up_support_elderly - */ -@Deprecated -public class AddUpDeductionStrDTOEncrypt { - public static void decryptAddUpDeductionList(List list) { - if (list == null || list.size() == 0) { - return; - } - list.forEach(item -> { - item.setAddUpChildEducation(AESEncryptUtil.decrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.decrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.decrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.decrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.decrypt(item.getAddUpSupportElderly())); - item.setAddUpIllnessMedical(AESEncryptUtil.decrypt(item.getAddUpIllnessMedical())); - item.setAddUpInfantCare(AESEncryptUtil.decrypt(item.getAddUpInfantCare())); - }); - - } - -} diff --git a/src/com/engine/salary/encrypt/datacollection/AddUpSituationDTOEncrypt.java b/src/com/engine/salary/encrypt/datacollection/AddUpSituationDTOEncrypt.java deleted file mode 100644 index a8b369c80..000000000 --- a/src/com/engine/salary/encrypt/datacollection/AddUpSituationDTOEncrypt.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.engine.salary.encrypt.datacollection; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.datacollection.dto.AddUpSituationDTO; - -import java.util.List; - -/** - * hrsa_add_up_situation: 加解密 - * 字段: - * add_up_income - * add_up_subtraction - * add_up_social_security_total - * add_up_accumulation_fund_total - * add_up_child_education - * add_up_continuing_education - * add_up_housing_loan_interest - * add_up_housing_rent - * add_up_support_elderly - * add_up_enterprise_and_other - * add_up_other_deduction - * add_up_tax_exempt_income - * add_up_allowed_donation - * add_up_advance_tax - */ -@Deprecated -public class AddUpSituationDTOEncrypt { - public static List encryptAddUpSituationDTOList(List list) { - if (list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setAddUpIncome(AESEncryptUtil.encrypt(item.getAddUpIncome())); - item.setAddUpSubtraction(AESEncryptUtil.encrypt(item.getAddUpSubtraction())); - item.setAddUpSocialSecurityTotal(AESEncryptUtil.encrypt(item.getAddUpSocialSecurityTotal())); - item.setAddUpAccumulationFundTotal(AESEncryptUtil.encrypt(item.getAddUpAccumulationFundTotal())); - item.setAddUpChildEducation(AESEncryptUtil.encrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.encrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.encrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.encrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.encrypt(item.getAddUpSupportElderly())); - item.setAddUpEnterpriseAndOther(AESEncryptUtil.encrypt(item.getAddUpEnterpriseAndOther())); - item.setAddUpTaxExemptIncome(AESEncryptUtil.encrypt(item.getAddUpTaxExemptIncome())); - item.setAddUpAllowedDonation(AESEncryptUtil.encrypt(item.getAddUpAllowedDonation())); - item.setAddUpAdvanceTax(AESEncryptUtil.encrypt(item.getAddUpAdvanceTax())); - - item.setAddUpIllnessMedical(AESEncryptUtil.encrypt(item.getAddUpIllnessMedical())); - item.setAddUpOtherDeduction(AESEncryptUtil.encrypt(item.getAddUpOtherDeduction())); - item.setAddUpTaxSavings(AESEncryptUtil.encrypt(item.getAddUpTaxSavings())); - item.setAddUpInfantCare(AESEncryptUtil.encrypt(item.getAddUpInfantCare())); - }); - return list; - } - - public static List decryptAddUpSituationDTOList(List list) { - if (list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setAddUpIncome(AESEncryptUtil.decrypt(item.getAddUpIncome())); - item.setAddUpSubtraction(AESEncryptUtil.decrypt(item.getAddUpSubtraction())); - item.setAddUpSocialSecurityTotal(AESEncryptUtil.decrypt(item.getAddUpSocialSecurityTotal())); - item.setAddUpAccumulationFundTotal(AESEncryptUtil.decrypt(item.getAddUpAccumulationFundTotal())); - item.setAddUpChildEducation(AESEncryptUtil.decrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.decrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.decrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.decrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.decrypt(item.getAddUpSupportElderly())); - item.setAddUpEnterpriseAndOther(AESEncryptUtil.decrypt(item.getAddUpEnterpriseAndOther())); - item.setAddUpTaxExemptIncome(AESEncryptUtil.decrypt(item.getAddUpTaxExemptIncome())); - item.setAddUpAllowedDonation(AESEncryptUtil.decrypt(item.getAddUpAllowedDonation())); - item.setAddUpAdvanceTax(AESEncryptUtil.decrypt(item.getAddUpAdvanceTax())); - - item.setAddUpIllnessMedical(AESEncryptUtil.decrypt(item.getAddUpIllnessMedical())); - item.setAddUpOtherDeduction(AESEncryptUtil.decrypt(item.getAddUpOtherDeduction())); - item.setAddUpTaxSavings(AESEncryptUtil.decrypt(item.getAddUpTaxSavings())); - item.setAddUpInfantCare(AESEncryptUtil.decrypt(item.getAddUpInfantCare())); - }); - return list; - } -} diff --git a/src/com/engine/salary/encrypt/datacollection/AddUpSituationEncrypt.java b/src/com/engine/salary/encrypt/datacollection/AddUpSituationEncrypt.java deleted file mode 100644 index b6debb195..000000000 --- a/src/com/engine/salary/encrypt/datacollection/AddUpSituationEncrypt.java +++ /dev/null @@ -1,132 +0,0 @@ -package com.engine.salary.encrypt.datacollection; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.datacollection.AddUpSituation; - -import java.util.List; - -/** - * hrsa_add_up_situation: 加解密 - * 字段: - * add_up_income - * add_up_subtraction - * add_up_social_security_total - * add_up_accumulation_fund_total - * add_up_child_education - * add_up_continuing_education - * add_up_housing_loan_interest - * add_up_housing_rent - * add_up_support_elderly - * add_up_enterprise_and_other - * add_up_other_deduction - * add_up_tax_exempt_income - * add_up_allowed_donation - * add_up_advance_tax - */ -@Deprecated -public class AddUpSituationEncrypt { - public static List encryptAddUpSituationList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setAddUpIncome(AESEncryptUtil.encrypt(item.getAddUpIncome())); - item.setAddUpSubtraction(AESEncryptUtil.encrypt(item.getAddUpSubtraction())); - item.setAddUpSocialSecurityTotal(AESEncryptUtil.encrypt(item.getAddUpSocialSecurityTotal())); - item.setAddUpAccumulationFundTotal(AESEncryptUtil.encrypt(item.getAddUpAccumulationFundTotal())); - item.setAddUpChildEducation(AESEncryptUtil.encrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.encrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.encrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.encrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.encrypt(item.getAddUpSupportElderly())); - item.setAddUpEnterpriseAndOther(AESEncryptUtil.encrypt(item.getAddUpEnterpriseAndOther())); - item.setAddUpTaxExemptIncome(AESEncryptUtil.encrypt(item.getAddUpTaxExemptIncome())); - item.setAddUpAllowedDonation(AESEncryptUtil.encrypt(item.getAddUpAllowedDonation())); - item.setAddUpAdvanceTax(AESEncryptUtil.encrypt(item.getAddUpAdvanceTax())); - - item.setAddUpIllnessMedical(AESEncryptUtil.encrypt(item.getAddUpIllnessMedical())); - item.setAddUpOtherDeduction(AESEncryptUtil.encrypt(item.getAddUpOtherDeduction())); - item.setAddUpTaxSavings(AESEncryptUtil.encrypt(item.getAddUpTaxSavings())); - item.setAddUpInfantCare(AESEncryptUtil.encrypt(item.getAddUpInfantCare())); - - }); - return list; - } - - public static List decryptAddUpSituationList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setAddUpIncome(AESEncryptUtil.decrypt(item.getAddUpIncome())); - item.setAddUpSubtraction(AESEncryptUtil.decrypt(item.getAddUpSubtraction())); - item.setAddUpSocialSecurityTotal(AESEncryptUtil.decrypt(item.getAddUpSocialSecurityTotal())); - item.setAddUpAccumulationFundTotal(AESEncryptUtil.decrypt(item.getAddUpAccumulationFundTotal())); - item.setAddUpChildEducation(AESEncryptUtil.decrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.decrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.decrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.decrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.decrypt(item.getAddUpSupportElderly())); - item.setAddUpEnterpriseAndOther(AESEncryptUtil.decrypt(item.getAddUpEnterpriseAndOther())); - item.setAddUpTaxExemptIncome(AESEncryptUtil.decrypt(item.getAddUpTaxExemptIncome())); - item.setAddUpAllowedDonation(AESEncryptUtil.decrypt(item.getAddUpAllowedDonation())); - item.setAddUpAdvanceTax(AESEncryptUtil.decrypt(item.getAddUpAdvanceTax())); - - item.setAddUpIllnessMedical(AESEncryptUtil.decrypt(item.getAddUpIllnessMedical())); - item.setAddUpOtherDeduction(AESEncryptUtil.decrypt(item.getAddUpOtherDeduction())); - item.setAddUpTaxSavings(AESEncryptUtil.decrypt(item.getAddUpTaxSavings())); - item.setAddUpInfantCare(AESEncryptUtil.decrypt(item.getAddUpInfantCare())); - }); - return list; - } - - public static AddUpSituation encryptAddUpSituation(AddUpSituation item) { - if(item == null) { - return item; - } - item.setAddUpIncome(AESEncryptUtil.encrypt(item.getAddUpIncome())); - item.setAddUpSubtraction(AESEncryptUtil.encrypt(item.getAddUpSubtraction())); - item.setAddUpSocialSecurityTotal(AESEncryptUtil.encrypt(item.getAddUpSocialSecurityTotal())); - item.setAddUpAccumulationFundTotal(AESEncryptUtil.encrypt(item.getAddUpAccumulationFundTotal())); - item.setAddUpChildEducation(AESEncryptUtil.encrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.encrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.encrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.encrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.encrypt(item.getAddUpSupportElderly())); - item.setAddUpEnterpriseAndOther(AESEncryptUtil.encrypt(item.getAddUpEnterpriseAndOther())); - item.setAddUpTaxExemptIncome(AESEncryptUtil.encrypt(item.getAddUpTaxExemptIncome())); - item.setAddUpAllowedDonation(AESEncryptUtil.encrypt(item.getAddUpAllowedDonation())); - item.setAddUpAdvanceTax(AESEncryptUtil.encrypt(item.getAddUpAdvanceTax())); - - item.setAddUpIllnessMedical(AESEncryptUtil.encrypt(item.getAddUpIllnessMedical())); - item.setAddUpOtherDeduction(AESEncryptUtil.encrypt(item.getAddUpOtherDeduction())); - item.setAddUpTaxSavings(AESEncryptUtil.encrypt(item.getAddUpTaxSavings())); - item.setAddUpInfantCare(AESEncryptUtil.encrypt(item.getAddUpInfantCare())); - return item; - } - - public static AddUpSituation decryptAddUpSituation(AddUpSituation item) { - if(item == null) { - return item; - } - item.setAddUpIncome(AESEncryptUtil.decrypt(item.getAddUpIncome())); - item.setAddUpSubtraction(AESEncryptUtil.decrypt(item.getAddUpSubtraction())); - item.setAddUpSocialSecurityTotal(AESEncryptUtil.decrypt(item.getAddUpSocialSecurityTotal())); - item.setAddUpAccumulationFundTotal(AESEncryptUtil.decrypt(item.getAddUpAccumulationFundTotal())); - item.setAddUpChildEducation(AESEncryptUtil.decrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.decrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.decrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.decrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.decrypt(item.getAddUpSupportElderly())); - item.setAddUpEnterpriseAndOther(AESEncryptUtil.decrypt(item.getAddUpEnterpriseAndOther())); - item.setAddUpTaxExemptIncome(AESEncryptUtil.decrypt(item.getAddUpTaxExemptIncome())); - item.setAddUpAllowedDonation(AESEncryptUtil.decrypt(item.getAddUpAllowedDonation())); - item.setAddUpAdvanceTax(AESEncryptUtil.decrypt(item.getAddUpAdvanceTax())); - - item.setAddUpIllnessMedical(AESEncryptUtil.encrypt(item.getAddUpIllnessMedical())); - item.setAddUpOtherDeduction(AESEncryptUtil.encrypt(item.getAddUpOtherDeduction())); - item.setAddUpTaxSavings(AESEncryptUtil.encrypt(item.getAddUpTaxSavings())); - item.setAddUpInfantCare(AESEncryptUtil.encrypt(item.getAddUpInfantCare())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/datacollection/AddUpSituationRecordDTOEncrypt.java b/src/com/engine/salary/encrypt/datacollection/AddUpSituationRecordDTOEncrypt.java deleted file mode 100644 index dd39664f9..000000000 --- a/src/com/engine/salary/encrypt/datacollection/AddUpSituationRecordDTOEncrypt.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.engine.salary.encrypt.datacollection; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.datacollection.dto.AddUpSituationRecordDTO; - -import java.util.List; - -@Deprecated -public class AddUpSituationRecordDTOEncrypt { - public static List encryptAddUpSituationRecordDTOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setAddUpIncome(AESEncryptUtil.encrypt(item.getAddUpIncome())); - item.setAddUpSubtraction(AESEncryptUtil.encrypt(item.getAddUpSubtraction())); - item.setAddUpSocialSecurityTotal(AESEncryptUtil.encrypt(item.getAddUpSocialSecurityTotal())); - item.setAddUpAccumulationFundTotal(AESEncryptUtil.encrypt(item.getAddUpAccumulationFundTotal())); - item.setAddUpChildEducation(AESEncryptUtil.encrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.encrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.encrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.encrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.encrypt(item.getAddUpSupportElderly())); - - item.setAddUpIllnessMedical(AESEncryptUtil.encrypt(item.getAddUpIllnessMedical())); - item.setAddUpOtherDeduction(AESEncryptUtil.encrypt(item.getAddUpOtherDeduction())); - item.setAddUpTaxSavings(AESEncryptUtil.encrypt(item.getAddUpTaxSavings())); - item.setAddUpInfantCare(AESEncryptUtil.encrypt(item.getAddUpInfantCare())); - - item.setAddUpEnterpriseAndOther(AESEncryptUtil.encrypt(item.getAddUpEnterpriseAndOther())); - item.setAddUpTaxExemptIncome(AESEncryptUtil.encrypt(item.getAddUpTaxExemptIncome())); - item.setAddUpAllowedDonation(AESEncryptUtil.encrypt(item.getAddUpAllowedDonation())); - item.setAddUpAdvanceTax(AESEncryptUtil.encrypt(item.getAddUpAdvanceTax())); - }); - return list; - } - - public static List decryptAddUpSituationRecordDTOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setAddUpIncome(AESEncryptUtil.decrypt(item.getAddUpIncome())); - item.setAddUpSubtraction(AESEncryptUtil.decrypt(item.getAddUpSubtraction())); - item.setAddUpSocialSecurityTotal(AESEncryptUtil.decrypt(item.getAddUpSocialSecurityTotal())); - item.setAddUpAccumulationFundTotal(AESEncryptUtil.decrypt(item.getAddUpAccumulationFundTotal())); - item.setAddUpChildEducation(AESEncryptUtil.decrypt(item.getAddUpChildEducation())); - item.setAddUpContinuingEducation(AESEncryptUtil.decrypt(item.getAddUpContinuingEducation())); - item.setAddUpHousingLoanInterest(AESEncryptUtil.decrypt(item.getAddUpHousingLoanInterest())); - item.setAddUpHousingRent(AESEncryptUtil.decrypt(item.getAddUpHousingRent())); - item.setAddUpSupportElderly(AESEncryptUtil.decrypt(item.getAddUpSupportElderly())); - item.setAddUpEnterpriseAndOther(AESEncryptUtil.decrypt(item.getAddUpEnterpriseAndOther())); - item.setAddUpTaxExemptIncome(AESEncryptUtil.decrypt(item.getAddUpTaxExemptIncome())); - item.setAddUpAllowedDonation(AESEncryptUtil.decrypt(item.getAddUpAllowedDonation())); - item.setAddUpAdvanceTax(AESEncryptUtil.decrypt(item.getAddUpAdvanceTax())); - - item.setAddUpIllnessMedical(AESEncryptUtil.decrypt(item.getAddUpIllnessMedical())); - item.setAddUpOtherDeduction(AESEncryptUtil.decrypt(item.getAddUpOtherDeduction())); - item.setAddUpTaxSavings(AESEncryptUtil.decrypt(item.getAddUpTaxSavings())); - item.setAddUpInfantCare(AESEncryptUtil.decrypt(item.getAddUpInfantCare())); - }); - return list; - } -} diff --git a/src/com/engine/salary/encrypt/datacollection/OtherDeductionListDTOEncrypt.java b/src/com/engine/salary/encrypt/datacollection/OtherDeductionListDTOEncrypt.java deleted file mode 100644 index 6d099a631..000000000 --- a/src/com/engine/salary/encrypt/datacollection/OtherDeductionListDTOEncrypt.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.engine.salary.encrypt.datacollection; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.datacollection.dto.OtherDeductionListDTO; - -import java.util.List; - - -/** - * hrsa_other_deduction: 加解密 - * 字段: - * business_healthy_insurance - * tax_delay_endowment_insurance - * other_deduction - * deduction_allowed_donation - */ -@Deprecated -public class OtherDeductionListDTOEncrypt { - public static List encryptOtherDeductionListDTOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setBusinessHealthyInsurance(AESEncryptUtil.encrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.encrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.encrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.encrypt(item.getDeductionAllowedDonation())); - }); - return list; - } - - public static List decryptOtherDeductionListDTOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setBusinessHealthyInsurance(AESEncryptUtil.decrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.decrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.decrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.decrypt(item.getDeductionAllowedDonation())); - }); - return list; - } - - public static OtherDeductionListDTO encryptOtherDeductionListDTO(OtherDeductionListDTO item) { - if(item == null) { - return item; - } - item.setBusinessHealthyInsurance(AESEncryptUtil.encrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.encrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.encrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.encrypt(item.getDeductionAllowedDonation())); - return item; - } - - public static OtherDeductionListDTO decryptOtherDeductionListDTO(OtherDeductionListDTO item) { - if(item == null) { - return item; - } - item.setBusinessHealthyInsurance(AESEncryptUtil.decrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.decrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.decrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.decrypt(item.getDeductionAllowedDonation())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/datacollection/OtherDeductionPOEncrypt.java b/src/com/engine/salary/encrypt/datacollection/OtherDeductionPOEncrypt.java deleted file mode 100644 index bed9cd935..000000000 --- a/src/com/engine/salary/encrypt/datacollection/OtherDeductionPOEncrypt.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.engine.salary.encrypt.datacollection; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.datacollection.po.OtherDeductionPO; - -import java.util.List; -@Deprecated -public class OtherDeductionPOEncrypt { - public static List encryptOtherDeductionPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setBusinessHealthyInsurance(AESEncryptUtil.encrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.encrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.encrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.encrypt(item.getDeductionAllowedDonation())); - }); - return list; - } - - public static List decryptOtherDeductionPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setBusinessHealthyInsurance(AESEncryptUtil.decrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.decrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.decrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.decrypt(item.getDeductionAllowedDonation())); - }); - return list; - } - - public static OtherDeductionPO encryptOtherDeductionPO(OtherDeductionPO item) { - if(item == null) { - return item; - } - item.setBusinessHealthyInsurance(AESEncryptUtil.encrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.encrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.encrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.encrypt(item.getDeductionAllowedDonation())); - return item; - } - - public static OtherDeductionPO decryptOtherDeductionPO(OtherDeductionPO item) { - if(item == null) { - return item; - } - item.setBusinessHealthyInsurance(AESEncryptUtil.decrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.decrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.decrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.decrypt(item.getDeductionAllowedDonation())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/datacollection/OtherDeductionRecordDTOEncrypt.java b/src/com/engine/salary/encrypt/datacollection/OtherDeductionRecordDTOEncrypt.java deleted file mode 100644 index 44fffcc1b..000000000 --- a/src/com/engine/salary/encrypt/datacollection/OtherDeductionRecordDTOEncrypt.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.engine.salary.encrypt.datacollection; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.datacollection.dto.OtherDeductionRecordDTO; - -import java.util.List; - -/** - * hrsa_other_deduction: 加解密 - * 字段: - * business_healthy_insurance - * tax_delay_endowment_insurance - * other_deduction - * deduction_allowed_donation - */ -@Deprecated -public class OtherDeductionRecordDTOEncrypt { - public static List encryptOtherDeductionRecordDTOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setBusinessHealthyInsurance(AESEncryptUtil.encrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.encrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.encrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.encrypt(item.getDeductionAllowedDonation())); - }); - return list; - } - - public static List decryptOtherDeductionRecordDTOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setBusinessHealthyInsurance(AESEncryptUtil.decrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.decrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.decrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.decrypt(item.getDeductionAllowedDonation())); - }); - return list; - } - - public static OtherDeductionRecordDTO encryptOtherDeductionRecordDTO(OtherDeductionRecordDTO item) { - if(item == null) { - return item; - } - item.setBusinessHealthyInsurance(AESEncryptUtil.encrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.encrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.encrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.encrypt(item.getDeductionAllowedDonation())); - return item; - } - - public static OtherDeductionRecordDTO decryptOtherDeductionRecordDTO(OtherDeductionRecordDTO item) { - if(item == null) { - return item; - } - item.setBusinessHealthyInsurance(AESEncryptUtil.decrypt(item.getBusinessHealthyInsurance())); - item.setTaxDelayEndowmentInsurance(AESEncryptUtil.decrypt(item.getTaxDelayEndowmentInsurance())); - item.setOtherDeduction(AESEncryptUtil.decrypt(item.getOtherDeduction())); - item.setDeductionAllowedDonation(AESEncryptUtil.decrypt(item.getDeductionAllowedDonation())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/datacollection/SpecialAddDeductionEncrypt.java b/src/com/engine/salary/encrypt/datacollection/SpecialAddDeductionEncrypt.java deleted file mode 100644 index 448fb2010..000000000 --- a/src/com/engine/salary/encrypt/datacollection/SpecialAddDeductionEncrypt.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.engine.salary.encrypt.datacollection; - -import com.engine.salary.encrypt.AESEncryptUtil; - -import java.lang.reflect.Field; -import java.util.Arrays; -import java.util.List; -import java.util.stream.Collectors; - -/** - * hrsa_special_add_deduction: 加解密 - * 字段: - * children_education - * continuing_education - * housing_loan_interest - * housing_rent - * supporting_elder - * serious_illness_treatment - * infant_care - */ -@Deprecated -public class SpecialAddDeductionEncrypt { - private static final List FIELDS = Arrays.asList( - "childrenEducation", "continuingEducation", "supportingElder", "housingLoanInterest", - "housingRent", "seriousIllnessTreatment", "infantCare"); - - public static T encrypt(T obj) { - if (obj == null) { - return obj; - } - if(obj instanceof List) { - return encrypt(obj); - } - Class clazz = obj.getClass(); - Field[] fields = clazz.getDeclaredFields(); - for (Field field : fields) { - field.setAccessible(true); - if (FIELDS.contains(field.getName())) { - try { - Object o = field.get(obj); - if (o instanceof String) { - Object value = AESEncryptUtil.encrypt((String)o); - field.set(obj, value); - } - } catch (IllegalAccessException e) { - //ignore - } - } - } - return obj; - } - - public static List encrypt(List list) { - if (list == null || list.isEmpty()) { - return list; - } - return list.stream().map(SpecialAddDeductionEncrypt::encrypt) - .collect(Collectors.toList()); - } - - public static T decrypt(T obj) { - if (obj == null) { - return obj; - } - if(obj instanceof List) { - return encrypt(obj); - } - Class clazz = obj.getClass(); - Field[] fields = clazz.getDeclaredFields(); - for (Field field : fields) { - field.setAccessible(true); - if (FIELDS.contains(field.getName())) { - try { - Object o = field.get(obj); - if (o instanceof String) { - Object value = AESEncryptUtil.decrypt((String)o); - field.set(obj, value); - } - } catch (IllegalAccessException e) { - //ignore - } - } - } - return obj; - } - - public static List decrypt(List list) { - if (list == null || list.isEmpty()) { - return list; - } - return list.stream().map(SpecialAddDeductionEncrypt::decrypt) - .collect(Collectors.toList()); - } -} diff --git a/src/com/engine/salary/encrypt/report/SalaryAcctResultReportPOEncrypt.java b/src/com/engine/salary/encrypt/report/SalaryAcctResultReportPOEncrypt.java deleted file mode 100644 index 7c34d4dc9..000000000 --- a/src/com/engine/salary/encrypt/report/SalaryAcctResultReportPOEncrypt.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.engine.salary.encrypt.report; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.report.po.SalaryAcctResultReportPO; - -import java.util.Collection; - -/** - * 薪资核算报表 - */ -@Deprecated -public class SalaryAcctResultReportPOEncrypt { - - public static Collection encryptList(Collection list) { - if (list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setEmployeeId(AESEncryptUtil.encrypt(item.getEmployeeId())); - item.setSalaryAcctEmpId(AESEncryptUtil.encrypt(item.getSalaryAcctEmpId())); - }); - return list; - } - - public static Collection decryptList(Collection list) { - if (list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setEmployeeId(AESEncryptUtil.decrypt(item.getEmployeeId())); - item.setSalaryAcctEmpId(AESEncryptUtil.decrypt(item.getSalaryAcctEmpId())); - }); - return list; - } -} \ No newline at end of file diff --git a/src/com/engine/salary/encrypt/salaryacct/ExcelAcctResultPOEncrypt.java b/src/com/engine/salary/encrypt/salaryacct/ExcelAcctResultPOEncrypt.java deleted file mode 100644 index c19d16689..000000000 --- a/src/com/engine/salary/encrypt/salaryacct/ExcelAcctResultPOEncrypt.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.engine.salary.encrypt.salaryacct; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.salaryacct.po.ExcelAcctResultPO; - -import java.util.Collection; -import java.util.List; - -@Deprecated -public class ExcelAcctResultPOEncrypt { - - public static Collection encryptList(Collection list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setResultValue(AESEncryptUtil.encrypt(item.getResultValue())); - }); - return list; - } - - public static Collection decryptList(Collection list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setResultValue(AESEncryptUtil.decrypt(item.getResultValue())); - }); - return list; - } - - public static List encryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setResultValue(AESEncryptUtil.encrypt(item.getResultValue())); - }); - return list; - } - - public static List decryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setResultValue(AESEncryptUtil.decrypt(item.getResultValue())); - }); - return list; - } - - public static ExcelAcctResultPO encryptItem(ExcelAcctResultPO item) { - if(item == null) { - return item; - } - item.setResultValue(AESEncryptUtil.encrypt(item.getResultValue())); - return item; - } - - public static ExcelAcctResultPO decryptItem(ExcelAcctResultPO item) { - if(item == null) { - return item; - } - item.setResultValue(AESEncryptUtil.decrypt(item.getResultValue())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/salaryacct/SalaryAcctResultPOEncrypt.java b/src/com/engine/salary/encrypt/salaryacct/SalaryAcctResultPOEncrypt.java deleted file mode 100644 index b148d85ad..000000000 --- a/src/com/engine/salary/encrypt/salaryacct/SalaryAcctResultPOEncrypt.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.engine.salary.encrypt.salaryacct; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO; - -import java.util.List; - -@Deprecated -public class SalaryAcctResultPOEncrypt { - - @Deprecated - public static List encryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setResultValue(AESEncryptUtil.encrypt(item.getResultValue())); - item.setOriginResultValue(AESEncryptUtil.encrypt(item.getOriginResultValue())); - }); - return list; - } - - @Deprecated - public static List decryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setResultValue(AESEncryptUtil.decrypt(item.getResultValue())); - item.setOriginResultValue(AESEncryptUtil.decrypt(item.getOriginResultValue())); - }); - return list; - } - - @Deprecated - public static SalaryAcctResultPO encryptItem(SalaryAcctResultPO item) { - if(item == null) { - return item; - } - item.setResultValue(AESEncryptUtil.encrypt(item.getResultValue())); - return item; - } - - @Deprecated - public static SalaryAcctResultPO decryptItem(SalaryAcctResultPO item) { - if(item == null) { - return item; - } - item.setResultValue(AESEncryptUtil.decrypt(item.getResultValue())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/siaccount/ExcelInsuranceDetailPOEncrypt.java b/src/com/engine/salary/encrypt/siaccount/ExcelInsuranceDetailPOEncrypt.java deleted file mode 100644 index 592ba011a..000000000 --- a/src/com/engine/salary/encrypt/siaccount/ExcelInsuranceDetailPOEncrypt.java +++ /dev/null @@ -1,112 +0,0 @@ -package com.engine.salary.encrypt.siaccount; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.siaccount.po.ExcelInsuranceDetailPO; - -import java.util.List; - -/** - * hrsa_excel_bill_detail: 加解密 - * 字段: - * social_payment_base_string - * fund_payment_base_string - * other_payment_base_string - * social_per_json - * social_per_sum - * fund_per_json - * fund_per_sum - * other_per_json - * other_per_sum - * per_sum - * social_com_json - * social_com_sum - * fund_com_json - * fund_com_sum - * other_com_json - * other_com_sum - * com_sum - * social_sum - * fund_sum - * other_sum - * total - */ -@Deprecated -public class ExcelInsuranceDetailPOEncrypt { - public static List encryptInsuranceAccountDetailPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.encrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.encrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.encrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.encrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.encrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.encrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.encrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.encrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.encrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.encrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.encrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.encrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.encrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.encrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.encrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.encrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.encrypt(item.getTotal())); - }); - return list; - } - - public static List decryptInsuranceAccountDetailPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.decrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.decrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.decrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.decrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.decrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.decrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.decrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.decrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.decrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.decrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.decrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.decrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.decrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.decrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.decrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.decrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.decrypt(item.getTotal())); - }); - return list; - } - - public static ExcelInsuranceDetailPO decryptItem(ExcelInsuranceDetailPO item) { - if(item == null) { - return item; - } - item.setSocialPaymentBaseString(AESEncryptUtil.decrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.decrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.decrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.decrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.decrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.decrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.decrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.decrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.decrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.decrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.decrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.decrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.decrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.decrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.decrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.decrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.decrypt(item.getTotal())); - return item; - } - - -} diff --git a/src/com/engine/salary/encrypt/siaccount/InsuranceAccountDetailPOEncrypt.java b/src/com/engine/salary/encrypt/siaccount/InsuranceAccountDetailPOEncrypt.java deleted file mode 100644 index 73153f629..000000000 --- a/src/com/engine/salary/encrypt/siaccount/InsuranceAccountDetailPOEncrypt.java +++ /dev/null @@ -1,136 +0,0 @@ -package com.engine.salary.encrypt.siaccount; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.siaccount.po.InsuranceAccountDetailPO; - -import java.util.List; - -/** - * hrsa_bill_detail: 加解密 - * 字段: - * social_payment_base_string - * fund_payment_base_string - * other_payment_base_string - * social_per_json - * social_per_sum - * fund_per_json - * fund_per_sum - * other_per_json - * other_per_sum - * per_sum - * social_com_json - * social_com_sum - * fund_com_json - * fund_com_sum - * other_com_json - * other_com_sum - * com_sum - * social_sum - * fund_sum - * other_sum - * total - */ -@Deprecated -public class InsuranceAccountDetailPOEncrypt { - public static List encryptInsuranceAccountDetailPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.encrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.encrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.encrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.encrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.encrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.encrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.encrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.encrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.encrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.encrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.encrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.encrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.encrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.encrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.encrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.encrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.encrypt(item.getTotal())); - }); - return list; - } - - public static List decryptInsuranceAccountDetailPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.decrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.decrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.decrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.decrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.decrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.decrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.decrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.decrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.decrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.decrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.decrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.decrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.decrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.decrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.decrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.decrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.decrypt(item.getTotal())); - }); - return list; - } - - public static InsuranceAccountDetailPO decryptItem(InsuranceAccountDetailPO item) { - if(item == null) { - return item; - } - item.setSocialPaymentBaseString(AESEncryptUtil.decrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.decrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.decrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.decrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.decrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.decrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.decrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.decrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.decrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.decrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.decrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.decrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.decrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.decrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.decrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.decrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.decrypt(item.getTotal())); - return item; - } - - public static InsuranceAccountDetailPO encryptItem(InsuranceAccountDetailPO item) { - if(item == null) { - return item; - } - item.setSocialPaymentBaseString(AESEncryptUtil.encrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.encrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.encrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.encrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.encrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.encrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.encrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.encrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.encrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.encrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.encrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.encrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.encrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.encrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.encrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.encrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.encrypt(item.getTotal())); - return item; - } - - -} diff --git a/src/com/engine/salary/encrypt/siaccount/InsuranceAccountDetailTempPOEncrypt.java b/src/com/engine/salary/encrypt/siaccount/InsuranceAccountDetailTempPOEncrypt.java deleted file mode 100644 index 5e5f32724..000000000 --- a/src/com/engine/salary/encrypt/siaccount/InsuranceAccountDetailTempPOEncrypt.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.engine.salary.encrypt.siaccount; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.siaccount.po.InsuranceAccountDetailTempPO; - -import java.util.List; - -/** - * hrsa_bill_detail: 加解密 - * 字段: - * social_payment_base_string - * fund_payment_base_string - * other_payment_base_string - * social_per_json - * social_per_sum - * fund_per_json - * fund_per_sum - * other_per_json - * other_per_sum - * per_sum - * social_com_json - * social_com_sum - * fund_com_json - * fund_com_sum - * other_com_json - * other_com_sum - * com_sum - * social_sum - * fund_sum - * other_sum - * total - */ -@Deprecated -public class InsuranceAccountDetailTempPOEncrypt { - public static List encryptInsuranceAccountDetailTempPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.encrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.encrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.encrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.encrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.encrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.encrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.encrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.encrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.encrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.encrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.encrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.encrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.encrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.encrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.encrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.encrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.encrypt(item.getTotal())); - }); - return list; - } - - public static List decryptInsuranceAccountDetailTempPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.decrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.decrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.decrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.decrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.decrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.decrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.decrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.decrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.decrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.decrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.decrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.decrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.decrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.decrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.decrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.decrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.decrypt(item.getTotal())); - }); - return list; - } -} diff --git a/src/com/engine/salary/encrypt/siaccount/SiAccountEncrypt.java b/src/com/engine/salary/encrypt/siaccount/SiAccountEncrypt.java deleted file mode 100644 index 73a627e5f..000000000 --- a/src/com/engine/salary/encrypt/siaccount/SiAccountEncrypt.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.engine.salary.encrypt.siaccount; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.siaccount.po.InsuranceAccountBatchPO; - -import java.util.List; - -/** - * hrsa_bill_batch 加解密 - * 字段: - * other_pay - * social_pay - * fund_pay - */ -@Deprecated -public class SiAccountEncrypt { - @Deprecated - public static List encryptInsuranceAccountBatchList(List list) { - list.forEach(item -> { - item.setOtherPay(AESEncryptUtil.encrypt(item.getOtherPay())); - item.setSocialPay(AESEncryptUtil.encrypt(item.getSocialPay())); - item.setFundPay(AESEncryptUtil.encrypt(item.getFundPay())); - }); - return list; - } - - @Deprecated - public static List decryptInsuranceAccountBatchList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setOtherPay(AESEncryptUtil.decrypt(item.getOtherPay())); - item.setSocialPay(AESEncryptUtil.decrypt(item.getSocialPay())); - item.setFundPay(AESEncryptUtil.decrypt(item.getFundPay())); - }); - return list; - } - - @Deprecated - public static InsuranceAccountBatchPO encryptInsuranceAccountBatch(InsuranceAccountBatchPO item) { - if(item == null) { - return item; - } - item.setOtherPay(AESEncryptUtil.encrypt(item.getOtherPay())); - item.setSocialPay(AESEncryptUtil.encrypt(item.getSocialPay())); - item.setFundPay(AESEncryptUtil.encrypt(item.getFundPay())); - return item; - } - - @Deprecated - public static InsuranceAccountBatchPO decryptInsuranceAccountBatch(InsuranceAccountBatchPO item) { - if(item == null) { - return item; - } - item.setOtherPay(AESEncryptUtil.decrypt(item.getOtherPay())); - item.setSocialPay(AESEncryptUtil.decrypt(item.getSocialPay())); - item.setFundPay(AESEncryptUtil.decrypt(item.getFundPay())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/siarchives/InsuranceArchivesFundSchemePOEncrypt.java b/src/com/engine/salary/encrypt/siarchives/InsuranceArchivesFundSchemePOEncrypt.java deleted file mode 100644 index 18233ed58..000000000 --- a/src/com/engine/salary/encrypt/siarchives/InsuranceArchivesFundSchemePOEncrypt.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.engine.salary.encrypt.siarchives; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.siarchives.po.InsuranceArchivesFundSchemePO; - -import java.util.List; - -@Deprecated -public class InsuranceArchivesFundSchemePOEncrypt { - public static List encryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setFundPaymentBaseString(AESEncryptUtil.encrypt(item.getFundPaymentBaseString())); - }); - return list; - } - - public static List decryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setFundPaymentBaseString(AESEncryptUtil.decrypt(item.getFundPaymentBaseString())); - }); - return list; - } - - public static InsuranceArchivesFundSchemePO encryptItem(InsuranceArchivesFundSchemePO item) { - if(item == null) { - return item; - } - item.setFundPaymentBaseString(AESEncryptUtil.encrypt(item.getFundPaymentBaseString())); - return item; - } - - public static InsuranceArchivesFundSchemePO decryptItem(InsuranceArchivesFundSchemePO item) { - if(item == null) { - return item; - } - item.setFundPaymentBaseString(AESEncryptUtil.decrypt(item.getFundPaymentBaseString())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/siarchives/InsuranceArchivesOtherSchemePOEncrypt.java b/src/com/engine/salary/encrypt/siarchives/InsuranceArchivesOtherSchemePOEncrypt.java deleted file mode 100644 index d24b22e89..000000000 --- a/src/com/engine/salary/encrypt/siarchives/InsuranceArchivesOtherSchemePOEncrypt.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.engine.salary.encrypt.siarchives; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.siarchives.po.InsuranceArchivesOtherSchemePO; - -import java.util.List; - -@Deprecated -public class InsuranceArchivesOtherSchemePOEncrypt { - public static List encryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setOtherPaymentBaseString(AESEncryptUtil.encrypt(item.getOtherPaymentBaseString())); - }); - return list; - } - - public static List decryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setOtherPaymentBaseString(AESEncryptUtil.decrypt(item.getOtherPaymentBaseString())); - }); - return list; - } - - public static InsuranceArchivesOtherSchemePO encryptItem(InsuranceArchivesOtherSchemePO item) { - if(item == null) { - return item; - } - item.setOtherPaymentBaseString(AESEncryptUtil.encrypt(item.getOtherPaymentBaseString())); - return item; - } - - public static InsuranceArchivesOtherSchemePO decryptItem(InsuranceArchivesOtherSchemePO item) { - if(item == null) { - return item; - } - item.setOtherPaymentBaseString(AESEncryptUtil.decrypt(item.getOtherPaymentBaseString())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/siarchives/InsuranceArchivesSocialSchemePOEncrypt.java b/src/com/engine/salary/encrypt/siarchives/InsuranceArchivesSocialSchemePOEncrypt.java deleted file mode 100644 index 7490ad352..000000000 --- a/src/com/engine/salary/encrypt/siarchives/InsuranceArchivesSocialSchemePOEncrypt.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.engine.salary.encrypt.siarchives; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.siarchives.po.InsuranceArchivesSocialSchemePO; - -import java.util.List; - -@Deprecated -public class InsuranceArchivesSocialSchemePOEncrypt { - public static List encryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.encrypt(item.getSocialPaymentBaseString())); - }); - return list; - } - - public static List decryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.decrypt(item.getSocialPaymentBaseString())); - }); - return list; - } - - public static InsuranceArchivesSocialSchemePO encryptItem(InsuranceArchivesSocialSchemePO item) { - if(item == null) { - return item; - } - item.setSocialPaymentBaseString(AESEncryptUtil.encrypt(item.getSocialPaymentBaseString())); - return item; - } - - public static InsuranceArchivesSocialSchemePO decryptItem(InsuranceArchivesSocialSchemePO item) { - if(item == null) { - return item; - } - item.setSocialPaymentBaseString(AESEncryptUtil.decrypt(item.getSocialPaymentBaseString())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/siexport/AccountExportPOEncrypt.java b/src/com/engine/salary/encrypt/siexport/AccountExportPOEncrypt.java deleted file mode 100644 index 564993785..000000000 --- a/src/com/engine/salary/encrypt/siexport/AccountExportPOEncrypt.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.engine.salary.encrypt.siexport; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.siexport.po.AccountExportPO; - -import java.util.List; - -/** - * hrsa_bill_detail: 加解密 - * 字段: - * social_payment_base_string - * fund_payment_base_string - * other_payment_base_string - * social_per_json - * social_per_sum - * fund_per_json - * fund_per_sum - * other_per_json - * other_per_sum - * per_sum - * social_com_json - * social_com_sum - * fund_com_json - * fund_com_sum - * other_com_json - * other_com_sum - * com_sum - * social_sum - * fund_sum - * other_sum - * total - */ -@Deprecated -public class AccountExportPOEncrypt { - public static List encryptAccountExportPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.encrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.encrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.encrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.encrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.encrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.encrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.encrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.encrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.encrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.encrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.encrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.encrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.encrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.encrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.encrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.encrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.encrypt(item.getTotal())); - }); - return list; - } - - public static List decryptAccountExportPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.decrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.decrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.decrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.decrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.decrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.decrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.decrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.decrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.decrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.decrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.decrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.decrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.decrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.decrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.decrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.decrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.decrypt(item.getTotal())); - }); - return list; - } -} diff --git a/src/com/engine/salary/encrypt/siexport/ExcelAccountExportPOEncrypt.java b/src/com/engine/salary/encrypt/siexport/ExcelAccountExportPOEncrypt.java deleted file mode 100644 index d562ac937..000000000 --- a/src/com/engine/salary/encrypt/siexport/ExcelAccountExportPOEncrypt.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.engine.salary.encrypt.siexport; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.siexport.po.ExcelAccountExportPO; - -import java.util.List; - -/** - * hrsa_excel_bill_detail: 加解密 - * 字段: - * social_payment_base_string - * fund_payment_base_string - * other_payment_base_string - * social_per_json - * social_per_sum - * fund_per_json - * fund_per_sum - * other_per_json - * other_per_sum - * per_sum - * social_com_json - * social_com_sum - * fund_com_json - * fund_com_sum - * other_com_json - * other_com_sum - * com_sum - * social_sum - * fund_sum - * other_sum - * total - */ -@Deprecated -public class ExcelAccountExportPOEncrypt { - public static List encryptExcelAccountExportPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.encrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.encrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.encrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.encrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.encrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.encrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.encrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.encrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.encrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.encrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.encrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.encrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.encrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.encrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.encrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.encrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.encrypt(item.getTotal())); - }); - return list; - } - - public static List decryptExcelAccountExportPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setSocialPaymentBaseString(AESEncryptUtil.decrypt(item.getSocialPaymentBaseString())); - item.setFundPaymentBaseString(AESEncryptUtil.decrypt(item.getFundPaymentBaseString())); - item.setOtherPaymentBaseString(AESEncryptUtil.decrypt(item.getOtherPaymentBaseString())); - item.setSocialPerJson(AESEncryptUtil.decrypt(item.getSocialPerJson())); - item.setSocialPerSum(AESEncryptUtil.decrypt(item.getSocialPerSum())); - item.setFundPerJson(AESEncryptUtil.decrypt(item.getFundPerJson())); - item.setFundPerSum(AESEncryptUtil.decrypt(item.getFundPerSum())); - item.setOtherPerJson(AESEncryptUtil.decrypt(item.getOtherPerJson())); - item.setOtherPerSum(AESEncryptUtil.decrypt(item.getOtherPerSum())); - item.setPerSum(AESEncryptUtil.decrypt(item.getPerSum())); - item.setSocialComJson(AESEncryptUtil.decrypt(item.getSocialComJson())); - item.setSocialComSum(AESEncryptUtil.decrypt(item.getSocialComSum())); - item.setComSum(AESEncryptUtil.decrypt(item.getComSum())); - item.setSocialSum(AESEncryptUtil.decrypt(item.getSocialSum())); - item.setFundSum(AESEncryptUtil.decrypt(item.getFundSum())); - item.setOtherSum(AESEncryptUtil.decrypt(item.getOtherSum())); - item.setTotal(AESEncryptUtil.decrypt(item.getTotal())); - }); - return list; - } -} diff --git a/src/com/engine/salary/encrypt/sischeme/InsuranceSchemeDetailPOEncrypt.java b/src/com/engine/salary/encrypt/sischeme/InsuranceSchemeDetailPOEncrypt.java deleted file mode 100644 index 2f75436c8..000000000 --- a/src/com/engine/salary/encrypt/sischeme/InsuranceSchemeDetailPOEncrypt.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.engine.salary.encrypt.sischeme; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.sischeme.po.InsuranceSchemeDetailPO; - -import java.util.List; - -@Deprecated -public class InsuranceSchemeDetailPOEncrypt { - public static List encryptList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setLowerLimit(AESEncryptUtil.encrypt(item.getLowerLimit())); - item.setFixedCost(AESEncryptUtil.encrypt(item.getFixedCost())); - item.setUpperLimit(AESEncryptUtil.encrypt(item.getUpperLimit())); - }); - return list; - } - - public static List decryptList(List list) { - - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setLowerLimit(AESEncryptUtil.decrypt(item.getLowerLimit())); - item.setFixedCost(AESEncryptUtil.decrypt(item.getFixedCost())); - item.setUpperLimit(AESEncryptUtil.decrypt(item.getUpperLimit())); - }); - return list; - } - - public static InsuranceSchemeDetailPO encryptItem(InsuranceSchemeDetailPO item) { - if(item == null) { - return item; - } - item.setLowerLimit(AESEncryptUtil.encrypt(item.getLowerLimit())); - item.setFixedCost(AESEncryptUtil.encrypt(item.getFixedCost())); - item.setUpperLimit(AESEncryptUtil.encrypt(item.getUpperLimit())); - return item; - } - - public static InsuranceSchemeDetailPO decryptItem(InsuranceSchemeDetailPO item) { - if(item == null) { - return item; - } - item.setLowerLimit(AESEncryptUtil.decrypt(item.getLowerLimit())); - item.setFixedCost(AESEncryptUtil.decrypt(item.getFixedCost())); - item.setUpperLimit(AESEncryptUtil.decrypt(item.getUpperLimit())); - return item; - } -} diff --git a/src/com/engine/salary/encrypt/taxdeclaration/TaxDeclarationDetailEncrypt.java b/src/com/engine/salary/encrypt/taxdeclaration/TaxDeclarationDetailEncrypt.java deleted file mode 100644 index b1bde8463..000000000 --- a/src/com/engine/salary/encrypt/taxdeclaration/TaxDeclarationDetailEncrypt.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.engine.salary.encrypt.taxdeclaration; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationDetailPO; - -import java.util.List; - -/** - * hrsa_tax_declaration_detail: 加解密 - * 字段: - * field_value - */ - -@Deprecated -public class TaxDeclarationDetailEncrypt { - public static List encryptTaxDeclarationDetailList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setFieldValue(AESEncryptUtil.encrypt(item.getFieldValue())); - }); - return list; - } - - public static List decryptTaxDeclarationDetailList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setFieldValue(AESEncryptUtil.decrypt(item.getFieldValue())); - }); - return list; - } - -} diff --git a/src/com/engine/salary/encrypt/taxdeclaration/TaxDeclarationDetailPOEncrypt.java b/src/com/engine/salary/encrypt/taxdeclaration/TaxDeclarationDetailPOEncrypt.java deleted file mode 100644 index 0cbc88a29..000000000 --- a/src/com/engine/salary/encrypt/taxdeclaration/TaxDeclarationDetailPOEncrypt.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.engine.salary.encrypt.taxdeclaration; - -import com.engine.salary.encrypt.AESEncryptUtil; -import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationDetailPO; - -import java.util.Collection; -import java.util.List; - -/** - * hrsa_tax_declaration_detail: 加解密 - * 字段: - * field_value - */ -@Deprecated -public class TaxDeclarationDetailPOEncrypt { - public static List encryptTaxDeclarationDetailPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setFieldValue(AESEncryptUtil.encrypt(item.getFieldValue())); - }); - return list; - } - - public static Collection encryptTaxDeclarationDetailPOList(Collection list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setFieldValue(AESEncryptUtil.encrypt(item.getFieldValue())); - }); - return list; - } - - public static List decryptTaxDeclarationDetailPOList(List list) { - if(list == null || list.size() == 0) { - return list; - } - list.forEach(item -> { - item.setFieldValue(AESEncryptUtil.decrypt(item.getFieldValue())); - }); - return list; - } - - - public static TaxDeclarationDetailPO encryptTaxDeclarationDetailPOItem(TaxDeclarationDetailPO item) { - if(item == null) { - return item; - } - item.setFieldValue(AESEncryptUtil.decrypt(item.getFieldValue())); - return item; - } -} diff --git a/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java b/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java index a9c754fda..eb8ea02ba 100644 --- a/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java +++ b/src/com/engine/salary/service/impl/OtherDeductionServiceImpl.java @@ -585,7 +585,14 @@ public class OtherDeductionServiceImpl extends Service implements OtherDeduction } } ArrayList updateList = new ArrayList<>(); - OtherDeductionPO build = OtherDeductionPO.builder().id(otherDeductionParam.getId()).businessHealthyInsurance(otherDeductionParam.getBusinessHealthyInsurance()).taxDelayEndowmentInsurance(otherDeductionParam.getTaxDelayEndowmentInsurance()).otherDeduction(otherDeductionParam.getOtherDeduction()).deductionAllowedDonation(otherDeductionParam.getDeductionAllowedDonation()).build(); + OtherDeductionPO build = OtherDeductionPO.builder() + .id(otherDeductionParam.getId()) + .businessHealthyInsurance(otherDeductionParam.getBusinessHealthyInsurance()) + .taxDelayEndowmentInsurance(otherDeductionParam.getTaxDelayEndowmentInsurance()) + .otherDeduction(otherDeductionParam.getOtherDeduction()) + .deductionAllowedDonation(otherDeductionParam.getDeductionAllowedDonation()) + .privatePension(otherDeductionParam.getPrivatePension()) + .build(); updateList.add(build); OtherDeductionBiz.batchUpdate(updateList); } diff --git a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java index 1f1bd0c68..04c2c5eb4 100644 --- a/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryAcctResultServiceImpl.java @@ -5,7 +5,6 @@ import com.engine.core.impl.Service; import com.engine.salary.cache.SalaryCacheKey; import com.engine.salary.common.LocalDateRange; import com.engine.salary.encrypt.EncryptUtil; -import com.engine.salary.encrypt.salaryacct.SalaryAcctResultPOEncrypt; import com.engine.salary.entity.datacollection.DataCollectionEmployee; import com.engine.salary.entity.datacollection.dto.AttendQuoteFieldListDTO; import com.engine.salary.entity.report.bo.SalaryAcctResultReportBO; @@ -864,7 +863,8 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe if (CollectionUtils.isEmpty(salaryAcctRecordIds) || CollectionUtils.isEmpty(salaryItemIds) ) { return Collections.emptyList(); } - return SalaryAcctResultPOEncrypt.decryptList(getSalaryAcctResultMapper().listSome(SalaryAcctResultPO.builder().salaryAcctRecordIds(salaryAcctRecordIds).salaryItemIds(salaryItemIds).build())); + List list = getSalaryAcctResultMapper().listSome(SalaryAcctResultPO.builder().salaryAcctRecordIds(salaryAcctRecordIds).salaryItemIds(salaryItemIds).build()); + return encryptUtil.decryptList(list,SalaryAcctResultPO.class); } diff --git a/src/com/engine/salary/sys/service/impl/SalarySysConfServiceImpl.java b/src/com/engine/salary/sys/service/impl/SalarySysConfServiceImpl.java index 9dbec31e9..edc4b5a86 100644 --- a/src/com/engine/salary/sys/service/impl/SalarySysConfServiceImpl.java +++ b/src/com/engine/salary/sys/service/impl/SalarySysConfServiceImpl.java @@ -850,11 +850,13 @@ public class SalarySysConfServiceImpl extends Service implements SalarySysConfSe po.setTaxDelayEndowmentInsurance(AESEncryptUtil.closeEncryptSetting(po.getTaxDelayEndowmentInsurance())); po.setOtherDeduction(AESEncryptUtil.closeEncryptSetting(po.getOtherDeduction())); po.setDeductionAllowedDonation(AESEncryptUtil.closeEncryptSetting(po.getDeductionAllowedDonation())); + po.setPrivatePension(AESEncryptUtil.closeEncryptSetting(po.getPrivatePension())); } else { po.setBusinessHealthyInsurance(AESEncryptUtil.encrypt(po.getBusinessHealthyInsurance())); po.setTaxDelayEndowmentInsurance(AESEncryptUtil.encrypt(po.getTaxDelayEndowmentInsurance())); po.setOtherDeduction(AESEncryptUtil.encrypt(po.getOtherDeduction())); po.setDeductionAllowedDonation(AESEncryptUtil.encrypt(po.getDeductionAllowedDonation())); + po.setPrivatePension(AESEncryptUtil.encrypt(po.getPrivatePension())); } }); List> partition = Lists.partition(otherDeductionPos, 50); From c3dfc5692e07e664fd066dc5fa56783115fb02fb Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Tue, 11 Apr 2023 09:56:20 +0800 Subject: [PATCH 03/35] =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E6=8B=B7=E8=B4=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salary/service/RemoteExcelService.java | 3 + .../service/impl/RemoteExcelServiceImpl.java | 41 +++++++++ .../impl/SalaryFormulaServiceImpl.java | 84 +++++++++++++++++++ 3 files changed, 128 insertions(+) diff --git a/src/com/engine/salary/service/RemoteExcelService.java b/src/com/engine/salary/service/RemoteExcelService.java index 8081451ee..bbcfe6e66 100644 --- a/src/com/engine/salary/service/RemoteExcelService.java +++ b/src/com/engine/salary/service/RemoteExcelService.java @@ -2,6 +2,7 @@ package com.engine.salary.service; import com.engine.salary.entity.salaryformula.po.FormulaVar; +import com.engine.salary.enums.salaryformula.ReferenceTypeEnum; import java.util.List; import java.util.Map; @@ -15,6 +16,8 @@ public interface RemoteExcelService { List> fieldGroupList(Map extendParam); + Map> allFieldList(ReferenceTypeEnum referenceTypeEnum); + // ExcelPage dataSourceList(String categoryId, ExcelPage page, Map extendParam, SimpleEmployee employee); // diff --git a/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java b/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java index 93b7c17ea..46436a4f0 100644 --- a/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java +++ b/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java @@ -200,6 +200,47 @@ public class RemoteExcelServiceImpl extends Service implements RemoteExcelServic }).collect(Collectors.toList()); } + @Override + public Map> allFieldList(ReferenceTypeEnum referenceTypeEnum) { + + Map> result = new HashMap<>(); + + //sql + if (ReferenceTypeEnum.SQL.equals(referenceTypeEnum)) { + result.put(SalarySQLReferenceEnum.EMPLOYEE_INFO.getDefaultLabel(), + convert2FormulaVar(DataCollectionEmployee.class, SalarySQLReferenceEnum.EMPLOYEE_INFO.getValue() + "")); + result.put(SalarySQLReferenceEnum.SALARY_ACCT_EMPLOYEE.getDefaultLabel(), + convert2FormulaVar(SalaryAcctEmployeePO.class, SalarySQLReferenceEnum.SALARY_ACCT_EMPLOYEE.getValue() + "")); + result.put(SalarySQLReferenceEnum.SALARY_CYCLE.getDefaultLabel(), + convert2FormulaVar(SalarySobCycleDTO.class, SalarySQLReferenceEnum.SALARY_CYCLE.getValue() + "")); + return result; + } + + // 如果是其他数据源 + if (ReferenceTypeEnum.FORMULA.equals(referenceTypeEnum)) { + result.put(SalaryFormulaReferenceEnum.SALARY_ITEM.getDefaultLabel(), + salaryItem2FormulaVar(SalaryFormulaReferenceEnum.SALARY_ITEM, null)); + result.put(SalaryFormulaReferenceEnum.ISSUED.getDefaultLabel(), + salaryItem2FormulaVar(SalaryFormulaReferenceEnum.SALARY_ITEM, null)); + result.put(SalaryFormulaReferenceEnum.SALARY_ARCHIVES.getDefaultLabel(), + salaryArchives2FormulaVar(SalaryFormulaReferenceEnum.SALARY_ARCHIVES, null)); + result.put(SalaryFormulaReferenceEnum.ADD_UP_SITUATION.getDefaultLabel(), + convert2FormulaVar(AddUpSituation.class, SalaryFormulaReferenceEnum.ADD_UP_SITUATION.getValue() + "")); + result.put(SalaryFormulaReferenceEnum.ADD_UP_DEDUCTIONS.getDefaultLabel(), + convert2FormulaVar(AddUpDeduction.class, SalaryFormulaReferenceEnum.ADD_UP_DEDUCTIONS.getValue() + "")); + result.put(SalaryFormulaReferenceEnum.EMPLOYEE_INFO.getDefaultLabel(), + convert2FormulaVar(DataCollectionEmployee.class, SalaryFormulaReferenceEnum.EMPLOYEE_INFO.getValue() + "")); + result.put(SalaryFormulaReferenceEnum.OTHER_DEDUCTION.getDefaultLabel(), + convert2FormulaVar(OtherDeductionPO.class, SalaryFormulaReferenceEnum.OTHER_DEDUCTION.getValue() + "")); + result.put(SalaryFormulaReferenceEnum.WELFARE.getDefaultLabel(), + welfare2FormulaVar(SalaryFormulaReferenceEnum.WELFARE)); + result.put(SalaryFormulaReferenceEnum.ATTEND.getDefaultLabel(), + attendData2FormulaVar(SalaryFormulaReferenceEnum.ATTEND)); + return result; + } + return result; + } + // @Override // public ExcelPage dataSourceList(String categoryId, ExcelPage page, Map extendParam, SimpleEmployee employee) { // log.info("categoryId: {}, page: {}", categoryId, JsonUtil.toJsonString(page)); diff --git a/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java b/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java index 3b842a167..f612d623d 100644 --- a/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java @@ -15,6 +15,7 @@ import com.engine.salary.exception.SalaryRunTimeException; import com.engine.salary.mapper.formula.FormulaMapper; import com.engine.salary.mapper.formula.FormulaVarMapper; import com.engine.salary.service.FormulaRunService; +import com.engine.salary.service.RemoteExcelService; import com.engine.salary.service.SalaryFormulaService; import com.engine.salary.util.db.MapperProxyFactory; import com.engine.salary.util.valid.ValidUtil; @@ -31,6 +32,8 @@ import org.springframework.beans.BeanUtils; import weaver.hrm.User; import java.util.*; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import java.util.stream.Collectors; /** @@ -57,6 +60,10 @@ public class SalaryFormulaServiceImpl extends Service implements SalaryFormulaSe return (FormulaRunService) ServiceUtil.getService(FormulaRunServiceImpl.class, user); } + private RemoteExcelService getRemoteExcelService(User user) { + return ServiceUtil.getService(RemoteExcelServiceImpl.class, user); + } + @Override public List listExpressFormula(Collection formulaIds) { formulaIds = formulaIds.stream().filter(id -> id != null && id > 0).collect(Collectors.toList()); @@ -163,6 +170,15 @@ public class SalaryFormulaServiceImpl extends Service implements SalaryFormulaSe param.setFormula(param.getFormula().replaceAll("BETWEEN", "BETWEEN")); } + // 解析公式中的参数 + if (ReferenceTypeEnum.parseByValue(param.getReferenceType()) == ReferenceTypeEnum.FORMULA) { + List parameterList = parseFormulaParameters(param.getFormula(), ReferenceTypeEnum.FORMULA); + param.setParameters(parameterList); + }else if(ReferenceTypeEnum.parseByValue(param.getReferenceType()) == ReferenceTypeEnum.SQL){ + List parameterList = parseFormulaParameters(param.getFormula(), ReferenceTypeEnum.SQL); + param.setParameters(parameterList); + } + //试运行公式 checkRun(param); @@ -196,6 +212,7 @@ public class SalaryFormulaServiceImpl extends Service implements SalaryFormulaSe formulaRunScript = formulaRunScript.replace(po.getFieldName(), po.getFieldId()); } formulaPO.setFormulaRunScript(formulaRunScript); + getFormulaMapper().insertIgnoreNull(formulaPO); for (FormulaVar po : parameters) { @@ -210,6 +227,73 @@ public class SalaryFormulaServiceImpl extends Service implements SalaryFormulaSe return formulaPO; } + public List parseFormulaParameters(String formula, ReferenceTypeEnum referenceTypeEnum){ + List parameters = new ArrayList<>(); + // 获取公式中所有可选的变量项目 + Map> allParameters = getRemoteExcelService(user).allFieldList(referenceTypeEnum); + List groups = new ArrayList<>(allParameters.keySet()); + StringBuilder reg =new StringBuilder("("); + for(int i =0; i < groups.size(); i++ ){ + reg.append("\\{"+ groups.get(i) +"\\."); + if(i+1 != groups.size()){ + reg.append("|"); + } + } + reg.append(").*?}"); + // 提取公式中所有的变量 + Pattern pattern = Pattern.compile(reg.toString()); + Matcher matcher = pattern.matcher(formula); + List vars = new ArrayList<>(); + while (matcher.find()) { + String var = matcher.group(0).replaceAll("\\{", "").replaceAll("}", ""); + if(StringUtils.isNotBlank(var)){ + vars.add(var); + } + } + for(String var : vars){ + String[] split = var.split("\\."); + if(split.length==2){ + List formulaVars = allParameters.get(split[0]); + if(formulaVars == null){ + throw new SalaryRunTimeException("保存失败,公式变量"+split[0]+"输入有误!"); + } + Optional field = formulaVars.stream().filter(v -> Objects.equals(v.getName(), split[1])).findFirst(); + if(field.isPresent()){ + FormulaVar formulaVar = field.get(); + String fieldName = "{" + split[0] + "." + split[1] +"}"; + formulaVar.setFieldName(fieldName); + parameters.add(formulaVar); + }else{ + throw new SalaryRunTimeException("保存失败,公式变量"+split[0]+split[1]+"输入有误!"); + } + }else if(split.length > 2){ + // 变量名称中包含. + List formulaVars = allParameters.get(split[0]); + if(formulaVars == null){ + throw new SalaryRunTimeException("保存失败,公式变量"+split[0]+"输入有误!"); + } + StringBuilder field = new StringBuilder(""); + for(int i =1; i< split.length; i++){ + if(i != 1){ + field.append("."); + } + field = field.append(split[i]); + } + String finalField = field.toString(); + Optional optional = formulaVars.stream().filter(v -> Objects.equals(v.getName(), finalField)).findFirst(); + if(optional.isPresent()){ + FormulaVar formulaVar = optional.get(); + String fieldName = "{" + split[0] + "." + field +"}"; + formulaVar.setFieldName(fieldName); + parameters.add(optional.get()); + }else{ + throw new SalaryRunTimeException("保存失败,公式变量"+split[0]+split[1]+"输入有误!"); + } + } + } + return parameters; + } + /** * 模拟运行公式 * From 482f4dfc253d07307c491097181f876294d860ad Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Tue, 11 Apr 2023 10:36:06 +0800 Subject: [PATCH 04/35] =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=90=8D=E4=B8=8D=E5=85=81=E8=AE=B8=E5=8C=85=E5=90=AB=E5=A4=A7?= =?UTF-8?q?=E6=8B=AC=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/wrapper/SalaryItemWrapper.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/com/engine/salary/wrapper/SalaryItemWrapper.java b/src/com/engine/salary/wrapper/SalaryItemWrapper.java index 163695d1c..3a03a30d3 100644 --- a/src/com/engine/salary/wrapper/SalaryItemWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryItemWrapper.java @@ -220,6 +220,9 @@ public class SalaryItemWrapper extends Service { if (SalaryDataTypeEnum.parseByValue(saveParam.getDataType()) == null) { throw new SalaryRunTimeException("字段类型异常"); } + if (saveParam.getName().contains("{") || saveParam.getName().contains("}")) { + throw new SalaryRunTimeException("薪资项目名称中不得包含大括号"); + } } /** From 8c58cf01b396d161e128f82e59e4339f15325a33 Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Tue, 11 Apr 2023 10:48:41 +0800 Subject: [PATCH 05/35] =?UTF-8?q?=E5=AD=97=E6=AE=B5=E6=8B=B7=E8=B4=9D?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/SalaryFormulaServiceImpl.java | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java b/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java index f612d623d..896311a27 100644 --- a/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java @@ -120,6 +120,19 @@ public class SalaryFormulaServiceImpl extends Service implements SalaryFormulaSe throw new SalaryRunTimeException("校验类型异常"); } + // 解析公式中的参数 + if (ReferenceTypeEnum.parseByValue(param.getReferenceType()) == ReferenceTypeEnum.FORMULA) { + List parameterList = parseFormulaParameters(param.getFormula(), ReferenceTypeEnum.FORMULA); + param.setParameters(parameterList); + }else if(ReferenceTypeEnum.parseByValue(param.getReferenceType()) == ReferenceTypeEnum.SQL){ + List parameterList = parseFormulaParameters(param.getFormula(), ReferenceTypeEnum.SQL); + param.setParameters(parameterList); + } + int orderIndex = 0; + for(FormulaVar parameter : param.getParameters() ){ + parameter.setOrderIndex(orderIndex++); + } + List parameters = param.getParameters(); //防止参数名和字段名呈现一对多的问题 if (CollectionUtils.isNotEmpty(parameters)) { @@ -170,15 +183,6 @@ public class SalaryFormulaServiceImpl extends Service implements SalaryFormulaSe param.setFormula(param.getFormula().replaceAll("BETWEEN", "BETWEEN")); } - // 解析公式中的参数 - if (ReferenceTypeEnum.parseByValue(param.getReferenceType()) == ReferenceTypeEnum.FORMULA) { - List parameterList = parseFormulaParameters(param.getFormula(), ReferenceTypeEnum.FORMULA); - param.setParameters(parameterList); - }else if(ReferenceTypeEnum.parseByValue(param.getReferenceType()) == ReferenceTypeEnum.SQL){ - List parameterList = parseFormulaParameters(param.getFormula(), ReferenceTypeEnum.SQL); - param.setParameters(parameterList); - } - //试运行公式 checkRun(param); From 0bfe0b62a7c45f6825e36f21678c0284dc0dfe45 Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Tue, 11 Apr 2023 11:43:32 +0800 Subject: [PATCH 06/35] =?UTF-8?q?fix=20=E5=AD=97=E6=AE=B5=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E6=97=A0=E6=B3=95=E4=BF=9D=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/salary/service/impl/SalaryFormulaServiceImpl.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java b/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java index 896311a27..fd62a97a5 100644 --- a/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryFormulaServiceImpl.java @@ -254,6 +254,8 @@ public class SalaryFormulaServiceImpl extends Service implements SalaryFormulaSe vars.add(var); } } + // 去重 + vars = vars.stream().distinct().collect(Collectors.toList()); for(String var : vars){ String[] split = var.split("\\."); if(split.length==2){ From a4a829d201ccbe48d9cbae68439ab0de5c63a2c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Tue, 11 Apr 2023 17:24:31 +0800 Subject: [PATCH 07/35] =?UTF-8?q?=E5=B9=B4=E7=BB=88=E5=A5=96=E6=95=B0?= =?UTF-8?q?=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resource/sql/个人养老金.sql | 13 ++ .../TaxDeclarationDataIndexConstant.java | 5 + .../entity/datacollection/AddUpSituation.java | 7 + .../datacollection/dto/AddUpSituationDTO.java | 7 + .../dto/AddUpSituationRecordDTO.java | 6 + .../param/AddUpSituationParam.java | 3 + .../taxdeclaration/bo/TaxDeclarationBO.java | 137 ++++-------------- .../bo/TaxDeclarationDetailBO.java | 1 + .../dto/TaxDeclarationWageListDTO.java | 4 + .../datacollection/AddUpSituationMapper.xml | 28 +++- .../impl/AddUpSituationServiceImpl.java | 6 +- .../impl/SalarySysConfServiceImpl.java | 2 + 12 files changed, 105 insertions(+), 114 deletions(-) create mode 100644 resource/sql/个人养老金.sql diff --git a/resource/sql/个人养老金.sql b/resource/sql/个人养老金.sql new file mode 100644 index 000000000..455be004c --- /dev/null +++ b/resource/sql/个人养老金.sql @@ -0,0 +1,13 @@ +INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629605, '个人养老金', 'privatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1680746056549, '', 0, 1, 0, 0, 'all_teams', '2022-03-28 10:33:01', '2022-05-10 15:54:31', 'number'); + + +INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629698, '累计个人养老金', 'addUpPrivatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1681201555316, '', 0, 1, 0, 0, 'all_teams', '2022-03-28 10:33:01', '2022-05-10 15:54:31', 'number'); + + +-- 公式 + + +-- 账套默认项目 + +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312490, 1, 746777981115629605, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 10); +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312491, 1, 746777981115629698, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 11); \ No newline at end of file diff --git a/src/com/engine/salary/constant/TaxDeclarationDataIndexConstant.java b/src/com/engine/salary/constant/TaxDeclarationDataIndexConstant.java index 66794def2..38c9d09bc 100644 --- a/src/com/engine/salary/constant/TaxDeclarationDataIndexConstant.java +++ b/src/com/engine/salary/constant/TaxDeclarationDataIndexConstant.java @@ -112,6 +112,11 @@ public class TaxDeclarationDataIndexConstant { */ public static final String ADD_UP_INFANT_CARE = "addUpInfantCare"; + /** + * 累计个人养老金 + */ + public static final String ADD_UP_PRIVATE_PENSION = "addUpPrivatePension"; + /** * 累计专项附加扣除 */ diff --git a/src/com/engine/salary/entity/datacollection/AddUpSituation.java b/src/com/engine/salary/entity/datacollection/AddUpSituation.java index 6335aee90..eeae5d130 100644 --- a/src/com/engine/salary/entity/datacollection/AddUpSituation.java +++ b/src/com/engine/salary/entity/datacollection/AddUpSituation.java @@ -126,6 +126,13 @@ public class AddUpSituation { @Encrypt private String addUpInfantCare; + /** + * 累计婴幼儿照护 + */ + @SalaryFormulaVar(defaultLabel = "累计个人养老金", labelId = 117732, dataType = "number") + @Encrypt + private String addUpPrivatePension; + /** * 累计企业(职业)年金及其他福利 */ diff --git a/src/com/engine/salary/entity/datacollection/dto/AddUpSituationDTO.java b/src/com/engine/salary/entity/datacollection/dto/AddUpSituationDTO.java index 342d81f53..fd217469e 100644 --- a/src/com/engine/salary/entity/datacollection/dto/AddUpSituationDTO.java +++ b/src/com/engine/salary/entity/datacollection/dto/AddUpSituationDTO.java @@ -204,6 +204,13 @@ public class AddUpSituationDTO { @Encrypt private String addUpInfantCare; + //累计个人养老金 + @ExcelProperty(index = 24) + @SalaryTableColumn(text = "累计个人养老金", width = "10%", column = "addUpPrivatePension") + @TableTitle(title = "累计个人养老金", dataIndex = "addUpPrivatePension", key = "addUpPrivatePension") + @Encrypt + private String addUpPrivatePension; + @SalaryTableColumn(text = "操作", width = "20%", column = "operate") @TableTitle(title = "操作", dataIndex = "operate", key = "operate") private String operate; diff --git a/src/com/engine/salary/entity/datacollection/dto/AddUpSituationRecordDTO.java b/src/com/engine/salary/entity/datacollection/dto/AddUpSituationRecordDTO.java index b32b60cae..e8c2fd0aa 100644 --- a/src/com/engine/salary/entity/datacollection/dto/AddUpSituationRecordDTO.java +++ b/src/com/engine/salary/entity/datacollection/dto/AddUpSituationRecordDTO.java @@ -170,4 +170,10 @@ public class AddUpSituationRecordDTO { @TableTitle(title = "累计婴幼儿照护", dataIndex = "addUpInfantCare", key = "addUpInfantCare") @Encrypt private String addUpInfantCare; + + @ExcelProperty(index = 23) + @SalaryTableColumn(text = "累计个人养老金", width = "10%", column = "addUpPrivatePension") + @TableTitle(title = "累计个人养老金", dataIndex = "addUpPrivatePension", key = "addUpPrivatePension") + @Encrypt + private String addUpPrivatePension; } diff --git a/src/com/engine/salary/entity/datacollection/param/AddUpSituationParam.java b/src/com/engine/salary/entity/datacollection/param/AddUpSituationParam.java index da28b08be..d50184b2f 100644 --- a/src/com/engine/salary/entity/datacollection/param/AddUpSituationParam.java +++ b/src/com/engine/salary/entity/datacollection/param/AddUpSituationParam.java @@ -95,4 +95,7 @@ public class AddUpSituationParam { //累计婴幼儿照护 private String addUpInfantCare; + //累计个人养老金 + private String addUpPrivatePension; + } diff --git a/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java b/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java index 6d936a232..d34faabb2 100644 --- a/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java +++ b/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java @@ -46,40 +46,19 @@ import java.util.stream.Collectors; public class TaxDeclarationBO { private static EncryptUtil encryptUtil = new EncryptUtil(); - public static List convert2ListDTO(List taxDeclarations, - List simpleEmployees, - List taxAgents) { + public static List convert2ListDTO(List taxDeclarations, List simpleEmployees, List taxAgents) { if (CollectionUtils.isEmpty(simpleEmployees)) { return Collections.emptyList(); } - Map taxAgentNameMap = SalaryEntityUtil.convert2Map(taxAgents, TaxAgentPO::getId, - TaxAgentPO::getName); + Map taxAgentNameMap = SalaryEntityUtil.convert2Map(taxAgents, TaxAgentPO::getId, TaxAgentPO::getName); Map employeeNameMap = SalaryEntityUtil.convert2Map(simpleEmployees, DataCollectionEmployee::getEmployeeId, DataCollectionEmployee::getUsername); - return taxDeclarations.stream() - .map(taxDeclarationPO -> { - IncomeCategoryEnum incomeCategoryEnum = IncomeCategoryEnum.parseByValue(taxDeclarationPO.getIncomeCategory()); - return TaxDeclarationListDTO.builder() - .id(taxDeclarationPO.getId()) - .incomeCategory(Optional.ofNullable(incomeCategoryEnum) - .map(o -> SalaryI18nUtil.getI18nLabel(o.getLabelId(), o.getDefaultLabel())) - .orElse(StringUtils.EMPTY)) - .salaryMonth(taxDeclarationPO.getSalaryMonth()) - .taxAgentId(taxDeclarationPO.getTaxAgentId()) - .taxAgentName(taxAgentNameMap.getOrDefault(taxDeclarationPO.getTaxAgentId(), "")) - .taxCycle(taxDeclarationPO.getTaxCycle()) - .operateEmployeeId(taxDeclarationPO.getCreator()) - .operateEmployeeName(employeeNameMap.getOrDefault(taxDeclarationPO.getCreator(), "")) - .operateTime(SalaryDateUtil.getFormatLocalDateTime(taxDeclarationPO.getCreateTime())) - .description(taxDeclarationPO.getDescription()) - .build(); - }) - .collect(Collectors.toList()); + return taxDeclarations.stream().map(taxDeclarationPO -> { + IncomeCategoryEnum incomeCategoryEnum = IncomeCategoryEnum.parseByValue(taxDeclarationPO.getIncomeCategory()); + return TaxDeclarationListDTO.builder().id(taxDeclarationPO.getId()).incomeCategory(Optional.ofNullable(incomeCategoryEnum).map(o -> SalaryI18nUtil.getI18nLabel(o.getLabelId(), o.getDefaultLabel())).orElse(StringUtils.EMPTY)).salaryMonth(taxDeclarationPO.getSalaryMonth()).taxAgentId(taxDeclarationPO.getTaxAgentId()).taxAgentName(taxAgentNameMap.getOrDefault(taxDeclarationPO.getTaxAgentId(), "")).taxCycle(taxDeclarationPO.getTaxCycle()).operateEmployeeId(taxDeclarationPO.getCreator()).operateEmployeeName(employeeNameMap.getOrDefault(taxDeclarationPO.getCreator(), "")).operateTime(SalaryDateUtil.getFormatLocalDateTime(taxDeclarationPO.getCreateTime())).description(taxDeclarationPO.getDescription()).build(); + }).collect(Collectors.toList()); } - public static void buildDetailListDTO(Long taxDeclarationId, - PageInfo page, - List taxDeclarationDetails, - List simpleEmployees) { + public static void buildDetailListDTO(Long taxDeclarationId, PageInfo page, List taxDeclarationDetails, List simpleEmployees) { if (CollectionUtils.isEmpty(taxDeclarationDetails)) { return; } @@ -136,12 +115,7 @@ public class TaxDeclarationBO { page.setList(dtos); } - public static Result handle(TaxDeclarationSaveParam saveParam, - Date taxCycle, - User user, - List salaryItems, - List salarySobs, - List salaryAcctResults) { + public static Result handle(TaxDeclarationSaveParam saveParam, Date taxCycle, User user, List salaryItems, List salarySobs, List salaryAcctResults) { Result result = new Result(); if (CollectionUtils.isEmpty(salaryAcctResults)) { return result; @@ -151,9 +125,7 @@ public class TaxDeclarationBO { // 薪资账套聚合成map(为了根据id获取incomeCategory) Map salarySobPOMap = SalaryEntityUtil.convert2Map(salarySobs, SalarySobPO::getId); // 薪资核算结果按照个税扣缴义务人id、所用薪资账套的incomeCategory聚合成map - Map>> taxAgentIdKeyAcctResultMap = salaryAcctResults.stream() - .collect(Collectors.groupingBy(SalaryAcctResultPO::getTaxAgentId, - Collectors.groupingBy(salaryAcctResultPO -> salarySobPOMap.get(salaryAcctResultPO.getSalarySobId()).getIncomeCategory()))); + Map>> taxAgentIdKeyAcctResultMap = salaryAcctResults.stream().collect(Collectors.groupingBy(SalaryAcctResultPO::getTaxAgentId, Collectors.groupingBy(salaryAcctResultPO -> salarySobPOMap.get(salaryAcctResultPO.getSalarySobId()).getIncomeCategory()))); // 一个个税扣缴义务人,一种薪资类型生成一张个税申报表 taxAgentIdKeyAcctResultMap.forEach((taxAgentId, incomeCategoryKeyAcctResultPOMap) -> { incomeCategoryKeyAcctResultPOMap.forEach((incomeCategory, salaryAcctResultPOS) -> { @@ -187,16 +159,12 @@ public class TaxDeclarationBO { * @param salaryAcctResults * @param salaryItemMap */ - private static void handleTaxDeclaration4Wage(Result result, - TaxDeclarationPO taxDeclaration, - List salaryAcctResults, - Map salaryItemMap) { + private static void handleTaxDeclaration4Wage(Result result, TaxDeclarationPO taxDeclaration, List salaryAcctResults, Map salaryItemMap) { if (CollectionUtils.isEmpty(salaryAcctResults)) { return; } // 核算结果按照人员id分类 - Map> salaryAcctResultPOMap = SalaryEntityUtil.group2Map(salaryAcctResults, - salaryAcctResultPO -> EmployeeTypeEnum.ORGANIZATION.getValue() + "_" + salaryAcctResultPO.getEmployeeId()); + Map> salaryAcctResultPOMap = SalaryEntityUtil.group2Map(salaryAcctResults, salaryAcctResultPO -> EmployeeTypeEnum.ORGANIZATION.getValue() + "_" + salaryAcctResultPO.getEmployeeId()); salaryAcctResultPOMap.forEach((key, salaryAcctResultPOS) -> { String[] keyArray = StringUtils.split(key, "_"); // 员工类型 @@ -206,8 +174,7 @@ public class TaxDeclarationBO { Map valueMap = Maps.newHashMapWithExpectedSize(17); Map> resultMap = SalaryEntityUtil.group2Map(salaryAcctResultPOS, SalaryAcctResultPO::getSalaryItemId); // 本期收入 - BigDecimal income = SalaryEntityUtil.reduce(resultMap.get(salaryItemMap.getOrDefault(TaxDeclarationDataIndexConstant.INCOME, 0L)), - salaryAcctResultPO -> SalaryEntityUtil.empty2Zero(salaryAcctResultPO.getResultValue())); + BigDecimal income = SalaryEntityUtil.reduce(resultMap.get(salaryItemMap.getOrDefault(TaxDeclarationDataIndexConstant.INCOME, 0L)), salaryAcctResultPO -> SalaryEntityUtil.empty2Zero(salaryAcctResultPO.getResultValue())); valueMap.put(TaxDeclarationDataIndexConstant.INCOME, income.toPlainString()); // 本期免税收入 BigDecimal taxFreeIncome = findValue(TaxDeclarationDataIndexConstant.TAX_FREE_INCOME, resultMap, salaryItemMap); @@ -245,6 +212,9 @@ public class TaxDeclarationBO { // 累计婴幼儿照护 BigDecimal addUpInfantCare = findValue(TaxDeclarationDataIndexConstant.ADD_UP_INFANT_CARE, resultMap, salaryItemMap); valueMap.put(TaxDeclarationDataIndexConstant.ADD_UP_INFANT_CARE, addUpInfantCare.toPlainString()); + // 累计个人养老金 + BigDecimal addUpPrivatePension = findValue(TaxDeclarationDataIndexConstant.ADD_UP_PRIVATE_PENSION, resultMap, salaryItemMap); + valueMap.put(TaxDeclarationDataIndexConstant.ADD_UP_PRIVATE_PENSION, addUpPrivatePension.toPlainString()); // 企业(职业)年金 BigDecimal annuity = findValue(TaxDeclarationDataIndexConstant.ANNUITY, resultMap, salaryItemMap); valueMap.put(TaxDeclarationDataIndexConstant.ANNUITY, annuity.toPlainString()); @@ -276,10 +246,7 @@ public class TaxDeclarationBO { * @param salaryAcctResults * @param salaryItemMap */ - private static void handleTaxDeclaration4Labor(Result result, - TaxDeclarationPO taxDeclaration, - List salaryAcctResults, - Map salaryItemMap) { + private static void handleTaxDeclaration4Labor(Result result, TaxDeclarationPO taxDeclaration, List salaryAcctResults, Map salaryItemMap) { if (CollectionUtils.isEmpty(salaryAcctResults)) { return; } @@ -292,10 +259,7 @@ public class TaxDeclarationBO { Map valueMap = Maps.newHashMapWithExpectedSize(7); Map> resultMap = SalaryEntityUtil.group2Map(salaryAcctResultPOS, SalaryAcctResultPO::getSalaryItemId); // 所得项目 - String incomeItems = resultMap.getOrDefault(salaryItemMap.getOrDefault(TaxDeclarationDataIndexConstant.INCOME_ITEMS, 0L), Collections.emptyList()).stream() - .map(SalaryAcctResultPO::getResultValue) - .findAny() - .orElse(StringUtils.EMPTY); + String incomeItems = resultMap.getOrDefault(salaryItemMap.getOrDefault(TaxDeclarationDataIndexConstant.INCOME_ITEMS, 0L), Collections.emptyList()).stream().map(SalaryAcctResultPO::getResultValue).findAny().orElse(StringUtils.EMPTY); valueMap.put(TaxDeclarationDataIndexConstant.INCOME_ITEMS, incomeItems); // 收入 BigDecimal laborIncome = findValue(TaxDeclarationDataIndexConstant.LABOR_INCOME, resultMap, salaryItemMap); @@ -328,10 +292,7 @@ public class TaxDeclarationBO { * @param salaryAcctResults * @param salaryItemMap */ - private static void handleTaxDeclaration4Annual(Result result, - TaxDeclarationPO taxDeclaration, - List salaryAcctResults, - Map salaryItemMap) { + private static void handleTaxDeclaration4Annual(Result result, TaxDeclarationPO taxDeclaration, List salaryAcctResults, Map salaryItemMap) { if (CollectionUtils.isEmpty(salaryAcctResults)) { return; } @@ -374,10 +335,7 @@ public class TaxDeclarationBO { * @param salaryAcctResults * @param salaryItemMap */ - private static void handleAddUpSituation(Result result, - TaxDeclarationPO taxDeclaration, - List salaryAcctResults, - Map salaryItemMap) { + private static void handleAddUpSituation(Result result, TaxDeclarationPO taxDeclaration, List salaryAcctResults, Map salaryItemMap) { if (CollectionUtils.isEmpty(salaryAcctResults)) { return; } @@ -412,6 +370,8 @@ public class TaxDeclarationBO { BigDecimal addUpIllnessMedical = findAddUpValue(TaxDeclarationDataIndexConstant.ADD_UP_ILLNESS_MEDICAL, resultMap, salaryItemMap); // 累计婴幼儿照护 BigDecimal addUpInfantCare = findAddUpValue(TaxDeclarationDataIndexConstant.ADD_UP_INFANT_CARE, resultMap, salaryItemMap); + // 累计个人养老金 + BigDecimal addUpPrivatePension = findAddUpValue(TaxDeclarationDataIndexConstant.ADD_UP_PRIVATE_PENSION, resultMap, salaryItemMap); // 累计企业(职业)年金及其他福利 BigDecimal addUpEnterpriseAndOther = findAddUpValue(TaxDeclarationDataIndexConstant.ADD_UP_ENTERPRISE_AND_OTHER, resultMap, salaryItemMap); // 累计其他免税扣除 @@ -426,16 +386,11 @@ public class TaxDeclarationBO { BigDecimal addUpTaxDeduction = findAddUpValue(TaxDeclarationDataIndexConstant.ADD_UP_TAX_DEDUCTION, resultMap, salaryItemMap); // 累计已预扣预缴税额 List resultPOS = resultMap.get(salaryItemMap.getOrDefault(TaxDeclarationDataIndexConstant.ADD_UP_ADVANCE_TAX, 0L)); - BigDecimal addUpAdvanceTax = resultPOS == null ? BigDecimal.ZERO : resultPOS.stream() - .map(salaryAcctResultPO -> SalaryEntityUtil.empty2Zero(salaryAcctResultPO.getResultValue())) - .min(BigDecimal::compareTo) - .orElse(BigDecimal.ZERO); + BigDecimal addUpAdvanceTax = resultPOS == null ? BigDecimal.ZERO : resultPOS.stream().map(salaryAcctResultPO -> SalaryEntityUtil.empty2Zero(salaryAcctResultPO.getResultValue())).min(BigDecimal::compareTo).orElse(BigDecimal.ZERO); // 本月(次)应补(退)税额 - BigDecimal refundedOrSupplementedTax = SalaryEntityUtil.reduce(resultMap.get(salaryItemMap.getOrDefault(TaxDeclarationDataIndexConstant.REFUNDED_OR_SUPPLEMENTED_TAX, 0L)), - salaryAcctResultPO -> SalaryEntityUtil.empty2Zero(salaryAcctResultPO.getResultValue())); + BigDecimal refundedOrSupplementedTax = SalaryEntityUtil.reduce(resultMap.get(salaryItemMap.getOrDefault(TaxDeclarationDataIndexConstant.REFUNDED_OR_SUPPLEMENTED_TAX, 0L)), salaryAcctResultPO -> SalaryEntityUtil.empty2Zero(salaryAcctResultPO.getResultValue())); // 生成往期累计情况 - AddUpSituation accumulatedSituation = AddUpSituation.builder() - .employeeId(employeeId) + AddUpSituation accumulatedSituation = AddUpSituation.builder().employeeId(employeeId) // .employeeType(employeeType) .taxAgentId(taxDeclaration.getTaxAgentId()) .taxYearMonth(taxDeclaration.getTaxCycle()) @@ -452,6 +407,7 @@ public class TaxDeclarationBO { .addUpSupportElderly(addUpSupportElderly.toPlainString()) .addUpIllnessMedical(addUpIllnessMedical.toPlainString()) .addUpInfantCare(addUpInfantCare.toPlainString()) + .addUpPrivatePension(addUpPrivatePension.toPlainString()) .addUpOtherDeduction(addUpOtherDeduction.toPlainString()) .addUpTaxExemptIncome(addUpTaxFreeIncome.toPlainString()) .addUpAllowedDonation(addUpAllowedDonation.toPlainString()) @@ -651,19 +607,7 @@ public class TaxDeclarationBO { if (saveParam.getDescription() == null) { saveParam.setDescription(""); } - return TaxDeclarationPO.builder() - .id(IdGenerator.generate()) - .incomeCategory(incomeCategory) - .taxAgentId(taxAgentId) - .salaryMonth(SalaryDateUtil.localDateToDate(saveParam.getSalaryMonth().atDay(1))) - .taxCycle(taxCycle) - .description(saveParam.getDescription()) - .creator((long) user.getUID()) - .createTime(SalaryDateUtil.localDateTimeToDate(now)) - .updateTime(SalaryDateUtil.localDateTimeToDate(now)) - .deleteType(0) - .tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY) - .build(); + return TaxDeclarationPO.builder().id(IdGenerator.generate()).incomeCategory(incomeCategory).taxAgentId(taxAgentId).salaryMonth(SalaryDateUtil.localDateToDate(saveParam.getSalaryMonth().atDay(1))).taxCycle(taxCycle).description(saveParam.getDescription()).creator((long) user.getUID()).createTime(SalaryDateUtil.localDateTimeToDate(now)).updateTime(SalaryDateUtil.localDateTimeToDate(now)).deleteType(0).tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY).build(); } /** @@ -680,43 +624,22 @@ public class TaxDeclarationBO { } List taxDeclarationDetailPOS = Lists.newArrayListWithExpectedSize(valueMap.size()); valueMap.forEach((fieldCode, fieldValue) -> { - TaxDeclarationDetailPO taxDeclarationDetailPO = TaxDeclarationDetailPO.builder() - .id(IdGenerator.generate()) - .taxDeclarationId(taxDeclaration.getId()) - .employeeType(employeeType) - .employeeId(employeeId) - .fieldCode(fieldCode) - .fieldValue(fieldValue) - .creator(taxDeclaration.getCreator()) - .createTime(taxDeclaration.getCreateTime()) - .updateTime(taxDeclaration.getUpdateTime()) - .deleteType(NumberUtils.INTEGER_ZERO) - .tenantKey(taxDeclaration.getTenantKey()) - .build(); + TaxDeclarationDetailPO taxDeclarationDetailPO = TaxDeclarationDetailPO.builder().id(IdGenerator.generate()).taxDeclarationId(taxDeclaration.getId()).employeeType(employeeType).employeeId(employeeId).fieldCode(fieldCode).fieldValue(fieldValue).creator(taxDeclaration.getCreator()).createTime(taxDeclaration.getCreateTime()).updateTime(taxDeclaration.getUpdateTime()).deleteType(NumberUtils.INTEGER_ZERO).tenantKey(taxDeclaration.getTenantKey()).build(); taxDeclarationDetailPOS.add(taxDeclarationDetailPO); }); return taxDeclarationDetailPOS; } private static BigDecimal findValue(String fieldCode, Map> resultMap, Map salaryItemMap) { - return resultMap.getOrDefault(salaryItemMap.getOrDefault(fieldCode, 0L), Collections.emptyList()).stream() - .map(e -> SalaryEntityUtil.empty2Zero(e.getResultValue())) - .filter(e -> e.compareTo(BigDecimal.ZERO) > 0) - .findAny() - .orElse(BigDecimal.ZERO); + return resultMap.getOrDefault(salaryItemMap.getOrDefault(fieldCode, 0L), Collections.emptyList()).stream().map(e -> SalaryEntityUtil.empty2Zero(e.getResultValue())).filter(e -> e.compareTo(BigDecimal.ZERO) > 0).findAny().orElse(BigDecimal.ZERO); } private static BigDecimal findAddUpValue(String fieldCode, Map> resultMap, Map salaryItemMap) { - return resultMap.getOrDefault(salaryItemMap.getOrDefault(fieldCode, 0L), Collections.emptyList()).stream() - .map(e -> SalaryEntityUtil.empty2Zero(e.getResultValue())) - .max(Comparator.comparingDouble(BigDecimal::doubleValue)) - .orElse(BigDecimal.ZERO); + return resultMap.getOrDefault(salaryItemMap.getOrDefault(fieldCode, 0L), Collections.emptyList()).stream().map(e -> SalaryEntityUtil.empty2Zero(e.getResultValue())).max(Comparator.comparingDouble(BigDecimal::doubleValue)).orElse(BigDecimal.ZERO); } private static String findStringValue(String fieldCode, Map> resultMap, Map salaryItemMap) { - return resultMap.getOrDefault(salaryItemMap.getOrDefault(fieldCode, 0L), Collections.emptyList()).stream() - .map(SalaryAcctResultPO::getResultValue) - .findFirst().orElse(""); + return resultMap.getOrDefault(salaryItemMap.getOrDefault(fieldCode, 0L), Collections.emptyList()).stream().map(SalaryAcctResultPO::getResultValue).findFirst().orElse(""); } @Data diff --git a/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationDetailBO.java b/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationDetailBO.java index 855a835be..81010fb7b 100644 --- a/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationDetailBO.java +++ b/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationDetailBO.java @@ -61,6 +61,7 @@ public class TaxDeclarationDetailBO { .addUpSupportElderly(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.ADD_UP_SUPPORT_ELDERLY)) .addUpIllnessMedical(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.ADD_UP_ILLNESS_MEDICAL)) .addUpInfantCare(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.ADD_UP_INFANT_CARE)) + .addUpPrivatePension(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.ADD_UP_PRIVATE_PENSION)) .annuity(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.ANNUITY)) .commercialHealthInsurance(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.COMMERCIAL_HEALTH_INSURANCE)) .taxDeferredEndowmentInsurance(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.TAX_DEFERRED_ENDOWMENT_INSURANCE)) diff --git a/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationWageListDTO.java b/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationWageListDTO.java index 7cb5ad3cb..19a0fad21 100644 --- a/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationWageListDTO.java +++ b/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationWageListDTO.java @@ -101,6 +101,10 @@ public class TaxDeclarationWageListDTO { @TableTitle(title = "累计婴幼儿照护", dataIndex = "addUpInfantCare", key = "addUpInfantCare") private String addUpInfantCare; + @SalaryTableColumn(text = "累计个人养老金", width = "10%", column = "addUpPrivatePension") + @TableTitle(title = "累计个人养老金", dataIndex = "addUpPrivatePension", key = "addUpPrivatePension") + private String addUpPrivatePension; + @SalaryTableColumn(text = "企业(职业)年金", width = "10%", column = "annuity") @TableTitle(title = "企业(职业)年金", dataIndex = "annuity", key = "annuity") private String annuity; diff --git a/src/com/engine/salary/mapper/datacollection/AddUpSituationMapper.xml b/src/com/engine/salary/mapper/datacollection/AddUpSituationMapper.xml index 002e1b4fe..1a4e58158 100644 --- a/src/com/engine/salary/mapper/datacollection/AddUpSituationMapper.xml +++ b/src/com/engine/salary/mapper/datacollection/AddUpSituationMapper.xml @@ -19,6 +19,7 @@ + @@ -62,6 +63,7 @@ , t.add_up_illness_medical , t.add_up_tax_savings , t.add_up_infant_care + , t.add_up_private_pension @@ -118,6 +120,7 @@ t1.add_up_support_elderly, t1.add_up_illness_medical, t1.add_up_infant_care, + t1.add_up_private_pension, t1.add_up_enterprise_and_other, t1.add_up_other_deduction, t1.add_up_tax_exempt_income, @@ -434,7 +437,8 @@ tenant_key, add_up_tax_savings, add_up_illness_medical, - add_up_infant_care + add_up_infant_care, + add_up_private_pension ) VALUES @@ -463,7 +467,8 @@ #{item.tenantKey}, #{item.addUpTaxSavings}, #{item.addUpIllnessMedical}, - #{item.addUpInfantCare} + #{item.addUpInfantCare}, + #{item.addUpPrivatePension} ) @@ -493,7 +498,8 @@ tenant_key, add_up_tax_savings, add_up_illness_medical, - add_up_infant_care + add_up_infant_care, + add_up_private_pension ) @@ -522,7 +528,8 @@ #{item.tenantKey,jdbcType=VARCHAR}, #{item.addUpTaxSavings,jdbcType=VARCHAR}, #{item.addUpIllnessMedical,jdbcType=VARCHAR}, - #{item.addUpInfantCare,jdbcType=VARCHAR} + #{item.addUpInfantCare,jdbcType=VARCHAR}, + #{item.addUpPrivatePension,jdbcType=VARCHAR} from dual @@ -553,7 +560,8 @@ tenant_key, add_up_tax_savings, add_up_illness_medical, - add_up_infant_care + add_up_infant_care, + add_up_private_pension ) VALUES ( @@ -581,7 +589,8 @@ #{item.tenantKey}, #{item.addUpTaxSavings}, #{item.addUpIllnessMedical}, - #{item.addUpInfantCare} + #{item.addUpInfantCare}, + #{item.addUpPrivatePension} ) @@ -708,6 +717,13 @@ + + + + when id=#{item.id} then #{item.addUpPrivatePension} + + + where id in diff --git a/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java b/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java index f3b04ecf1..c57f146fd 100644 --- a/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java +++ b/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java @@ -801,6 +801,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation po.setAddUpIllnessMedical(dto.getAddUpIllnessMedical()); po.setAddUpTaxSavings(dto.getAddUpTaxSavings()); po.setAddUpInfantCare(dto.getAddUpInfantCare()); + po.setAddUpPrivatePension(dto.getAddUpPrivatePension()); if (errorSum == 0) { successCount += 1; @@ -893,7 +894,9 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation .addUpEnterpriseAndOther(addUpSituationParam.getAddUpEnterpriseAndOther()).addUpOtherDeduction(addUpSituationParam.getAddUpOtherDeduction()) .addUpTaxExemptIncome(addUpSituationParam.getAddUpTaxExemptIncome()).addUpAllowedDonation(addUpSituationParam.getAddUpAllowedDonation()) .addUpTaxSavings(addUpSituationParam.getAddUpTaxSavings()).addUpAdvanceTax(addUpSituationParam.getAddUpAdvanceTax()) - .addUpInfantCare(addUpSituationParam.getAddUpInfantCare()).build(); + .addUpInfantCare(addUpSituationParam.getAddUpInfantCare()) + .addUpPrivatePension(addUpSituationParam.getAddUpPrivatePension()) + .build(); updateList.add(build); biz.batchUpdate(updateList); } @@ -1029,6 +1032,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation po.setAddUpIllnessMedical(addUpSituationParam.getAddUpIllnessMedical()); po.setAddUpTaxSavings(addUpSituationParam.getAddUpTaxSavings()); po.setAddUpInfantCare(addUpSituationParam.getAddUpInfantCare()); + po.setAddUpPrivatePension(addUpSituationParam.getAddUpPrivatePension()); insertList.add(po); //入库 diff --git a/src/com/engine/salary/sys/service/impl/SalarySysConfServiceImpl.java b/src/com/engine/salary/sys/service/impl/SalarySysConfServiceImpl.java index edc4b5a86..9988d5718 100644 --- a/src/com/engine/salary/sys/service/impl/SalarySysConfServiceImpl.java +++ b/src/com/engine/salary/sys/service/impl/SalarySysConfServiceImpl.java @@ -898,6 +898,7 @@ public class SalarySysConfServiceImpl extends Service implements SalarySysConfSe po.setAddUpIllnessMedical(AESEncryptUtil.closeEncryptSetting(po.getAddUpIllnessMedical())); po.setAddUpTaxSavings(AESEncryptUtil.closeEncryptSetting(po.getAddUpTaxSavings())); po.setAddUpInfantCare(AESEncryptUtil.closeEncryptSetting(po.getAddUpInfantCare())); + po.setAddUpPrivatePension(AESEncryptUtil.closeEncryptSetting(po.getAddUpPrivatePension())); } else { po.setAddUpIncome(AESEncryptUtil.encrypt(po.getAddUpIncome())); po.setAddUpSubtraction(AESEncryptUtil.encrypt(po.getAddUpSubtraction())); @@ -916,6 +917,7 @@ public class SalarySysConfServiceImpl extends Service implements SalarySysConfSe po.setAddUpIllnessMedical(AESEncryptUtil.encrypt(po.getAddUpIllnessMedical())); po.setAddUpTaxSavings(AESEncryptUtil.encrypt(po.getAddUpTaxSavings())); po.setAddUpInfantCare(AESEncryptUtil.encrypt(po.getAddUpInfantCare())); + po.setAddUpPrivatePension(AESEncryptUtil.encrypt(po.getAddUpPrivatePension())); } }); List> partition = Lists.partition(addUpSituations, 50); From 58dbdb0d0536669f3abc9895901aa7a7cf29ee49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Wed, 12 Apr 2023 09:39:53 +0800 Subject: [PATCH 08/35] =?UTF-8?q?=E5=85=BB=E8=80=81=E9=87=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resource/sql/个人养老金.sql | 10 +++++++--- .../taxdeclaration/dto/TaxDeclarationWageListDTO.java | 4 ++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/resource/sql/个人养老金.sql b/resource/sql/个人养老金.sql index 455be004c..3b45a0cdc 100644 --- a/resource/sql/个人养老金.sql +++ b/resource/sql/个人养老金.sql @@ -1,13 +1,17 @@ -INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629605, '个人养老金', 'privatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1680746056549, '', 0, 1, 0, 0, 'all_teams', '2022-03-28 10:33:01', '2022-05-10 15:54:31', 'number'); +ALTER TABLE hrsa_other_deduction ADD COLUMN private_pension varchar(255) NULL; +ALTER TABLE hrsa_add_up_situation ADD COLUMN add_up_private_pension varchar(255) NULL; + +INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629605, '个人养老金', 'privatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1680746056549, '', 0, 1, 0, 0, 'all_teams', '2022-03-28 10:33:01', '2022-05-10 15:54:31', 'number'); INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629698, '累计个人养老金', 'addUpPrivatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1681201555316, '', 0, 1, 0, 0, 'all_teams', '2022-03-28 10:33:01', '2022-05-10 15:54:31', 'number'); --- 公式 +INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, return_type, validate_type, extend_param, formula, formulaRunScript, creator, delete_type, create_time, update_time) VALUES (1680746056549, '公式1', '备注', 'salary', 'salaryitem', 'formula', 'number', 'number', '{\"sqlReturnKey\":\"\",\"openDecrypt\":\"0\",\"datasource\":{\"datasourceId\":\"\"}}', '{其他免税扣除.个人养老金}', 'otherDeduction_privatePension', 92, 0, '2023-04-06 09:54:16', '2023-04-06 09:54:16'); + --- 账套默认项目 INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312490, 1, 746777981115629605, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 10); + INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312491, 1, 746777981115629698, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 11); \ No newline at end of file diff --git a/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationWageListDTO.java b/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationWageListDTO.java index 19a0fad21..3725aaf27 100644 --- a/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationWageListDTO.java +++ b/src/com/engine/salary/entity/taxdeclaration/dto/TaxDeclarationWageListDTO.java @@ -97,8 +97,8 @@ public class TaxDeclarationWageListDTO { @TableTitle(title = "累计大病医疗", dataIndex = "addUpIllnessMedical", key = "addUpIllnessMedical") private String addUpIllnessMedical; - @SalaryTableColumn(text = "累计婴幼儿照护", width = "10%", column = "addUpInfantCare") - @TableTitle(title = "累计婴幼儿照护", dataIndex = "addUpInfantCare", key = "addUpInfantCare") + @SalaryTableColumn(text = "累计3岁以下婴幼儿照护", width = "10%", column = "addUpInfantCare") + @TableTitle(title = "累计3岁以下婴幼儿照护", dataIndex = "addUpInfantCare", key = "addUpInfantCare") private String addUpInfantCare; @SalaryTableColumn(text = "累计个人养老金", width = "10%", column = "addUpPrivatePension") From 671bbc6bfb39b2ffaa618628a0d82bd8ecbddb94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Wed, 12 Apr 2023 10:51:52 +0800 Subject: [PATCH 09/35] =?UTF-8?q?=E5=85=BB=E8=80=81=E9=87=91=E6=9C=80?= =?UTF-8?q?=E7=BB=88=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resource/sql/个人养老金.sql | 157 +++++++++++++++++++++++++++++++++++- resource/sql/公式修改.sql | 4 +- 2 files changed, 155 insertions(+), 6 deletions(-) diff --git a/resource/sql/个人养老金.sql b/resource/sql/个人养老金.sql index 3b45a0cdc..ec80c6fbf 100644 --- a/resource/sql/个人养老金.sql +++ b/resource/sql/个人养老金.sql @@ -6,12 +6,161 @@ INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_typ INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629698, '累计个人养老金', 'addUpPrivatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1681201555316, '', 0, 1, 0, 0, 'all_teams', '2022-03-28 10:33:01', '2022-05-10 15:54:31', 'number'); - INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, return_type, validate_type, extend_param, formula, formulaRunScript, creator, delete_type, create_time, update_time) VALUES (1680746056549, '公式1', '备注', 'salary', 'salaryitem', 'formula', 'number', 'number', '{\"sqlReturnKey\":\"\",\"openDecrypt\":\"0\",\"datasource\":{\"datasourceId\":\"\"}}', '{其他免税扣除.个人养老金}', 'otherDeduction_privatePension', 92, 0, '2023-04-06 09:54:16', '2023-04-06 09:54:16'); +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1680746056577, '个人养老金', 1680746056549, 'otherDeduction_privatePension', '{其他免税扣除.个人养老金}', 'number', 'otherDeduction', 0, 92, 0, '2023-04-06 09:54:16', '2023-04-06 09:54:16'); - - +INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, return_type, validate_type, extend_param, formula, formulaRunScript, creator, delete_type, create_time, update_time) VALUES (1681201555316, '公式1', '备注', 'salary', 'salaryitem', 'formula', 'number', 'number', '{\"sqlReturnKey\":\"\",\"openDecrypt\":\"0\",\"datasource\":{\"datasourceId\":\"\"}}', '{薪资项目.个人养老金}+{往期累计情况.累计个人养老金}', 'salaryItem_privatePension+addUpSituation_addUpPrivatePension', 92, 0, '2023-04-11 16:25:55', '2023-04-11 16:25:55'); +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681201555332, '个人养老金', 1681201555316, 'salaryItem_privatePension', '{薪资项目.个人养老金}', 'number', 'salaryItem', 0, 92, 0, '2023-04-11 16:25:55', '2023-04-11 16:25:55'); +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681201555338, '累计个人养老金', 1681201555316, 'addUpSituation_addUpPrivatePension', '{往期累计情况.累计个人养老金}', 'number', 'addUpSituation', 1, 92, 0, '2023-04-11 16:25:55', '2023-04-11 16:25:55'); INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312490, 1, 746777981115629605, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 10); -INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312491, 1, 746777981115629698, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 11); \ No newline at end of file +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312491, 1, 746777981115629698, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 11); + + + + +ALTER TABLE hrsa_other_deduction ALTER COLUMN [private_pension] varchar(255) NULL +GO + +ALTER TABLE hrsa_add_up_situation ALTER COLUMN [add_up_private_pension] varchar(255) NULL +GO + +INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629605, '个人养老金', 'privatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1680746056549, '', 0, 1, 0, 0, 'all_teams', '2022-03-28 10:33:01', '2022-05-10 15:54:31', 'number') +GO + +INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629698, '累计个人养老金', 'addUpPrivatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1681201555316, '', 0, 1, 0, 0, 'all_teams', '2022-03-28 10:33:01', '2022-05-10 15:54:31', 'number') +GO + +INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, return_type, validate_type, extend_param, formula, formulaRunScript, creator, delete_type, create_time, update_time) VALUES (1680746056549, '公式1', '备注', 'salary', 'salaryitem', 'formula', 'number', 'number', '{\"sqlReturnKey\":\"\",\"openDecrypt\":\"0\",\"datasource\":{\"datasourceId\":\"\"}}', '{其他免税扣除.个人养老金}', 'otherDeduction_privatePension', 92, 0, '2023-04-06 09:54:16', '2023-04-06 09:54:16') +GO +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1680746056577, '个人养老金', 1680746056549, 'otherDeduction_privatePension', '{其他免税扣除.个人养老金}', 'number', 'otherDeduction', 0, 92, 0, '2023-04-06 09:54:16', '2023-04-06 09:54:16') +GO + +INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, return_type, validate_type, extend_param, formula, formulaRunScript, creator, delete_type, create_time, update_time) VALUES (1681201555316, '公式1', '备注', 'salary', 'salaryitem', 'formula', 'number', 'number', '{\"sqlReturnKey\":\"\",\"openDecrypt\":\"0\",\"datasource\":{\"datasourceId\":\"\"}}', '{薪资项目.个人养老金}+{往期累计情况.累计个人养老金}', 'salaryItem_privatePension+addUpSituation_addUpPrivatePension', 92, 0, '2023-04-11 16:25:55', '2023-04-11 16:25:55') +GO +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681201555332, '个人养老金', 1681201555316, 'salaryItem_privatePension', '{薪资项目.个人养老金}', 'number', 'salaryItem', 0, 92, 0, '2023-04-11 16:25:55', '2023-04-11 16:25:55') +GO +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681201555338, '累计个人养老金', 1681201555316, 'addUpSituation_addUpPrivatePension', '{往期累计情况.累计个人养老金}', 'number', 'addUpSituation', 1, 92, 0, '2023-04-11 16:25:55', '2023-04-11 16:25:55') +GO + +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312490, 1, 746777981115629605, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 10) +GO + +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312491, 1, 746777981115629698, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 11) +GO + + +ALTER TABLE hrsa_other_deduction ADD ( + private_pension varchar2(255) NULL +) +/ + +ALTER TABLE hrsa_add_up_situation ADD ( + add_up_private_pension varchar2(255) NULL +) +/ + +INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629605, '个人养老金', 'privatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1680746056549, '', 0, 1, 0, 0, 'all_teams', to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), 'number') +/ + +INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629698, '累计个人养老金', 'addUpPrivatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1681201555316, '', 0, 1, 0, 0, 'all_teams', to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), 'number') +/ + +INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, return_type, validate_type, extend_param, formula, formulaRunScript, creator, delete_type, create_time, update_time) VALUES (1680746056549, '公式1', '备注', 'salary', 'salaryitem', 'formula', 'number', 'number', '{\"sqlReturnKey\":\"\",\"openDecrypt\":\"0\",\"datasource\":{\"datasourceId\":\"\"}}', '{其他免税扣除.个人养老金}', 'otherDeduction_privatePension', 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1680746056577, '个人养老金', 1680746056549, 'otherDeduction_privatePension', '{其他免税扣除.个人养老金}', 'number', 'otherDeduction', 0, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ + +INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, return_type, validate_type, extend_param, formula, formulaRunScript, creator, delete_type, create_time, update_time) VALUES (1681201555316, '公式1', '备注', 'salary', 'salaryitem', 'formula', 'number', 'number', '{\"sqlReturnKey\":\"\",\"openDecrypt\":\"0\",\"datasource\":{\"datasourceId\":\"\"}}', '{薪资项目.个人养老金}+{往期累计情况.累计个人养老金}', 'salaryItem_privatePension+addUpSituation_addUpPrivatePension', 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681201555332, '个人养老金', 1681201555316, 'salaryItem_privatePension', '{薪资项目.个人养老金}', 'number', 'salaryItem', 0, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681201555338, '累计个人养老金', 1681201555316, 'addUpSituation_addUpPrivatePension', '{往期累计情况.累计个人养老金}', 'number', 'addUpSituation', 1, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ + +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312490, 1, 746777981115629605, 1, 0, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), 0, 'all_teams', 703433961629614110, 10) +/ + +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312491, 1, 746777981115629698, 1, 0, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), 0, 'all_teams', 703433961629614110, 11) +/ + + + + + + + +INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, return_type, validate_type, extend_param, formula, formulaRunScript, creator, delete_type, create_time, update_time) VALUES (1681265757380, '公式1', '备注', 'salary', 'salaryitem', 'formula', 'number', 'number', '{\"datasource\":{\"datasourceId\":\"\"}}', '{薪资项目.当前累计应税收入合计}-{薪资项目.当前累计专项扣除合计}-{薪资项目.当前累计专项附加扣除合计}-{薪资项目.当前累计其他扣除合计}-{薪资项目.当前累计减除费用}-{薪资项目.当前累计准备扣除的捐赠额}-{薪资项目.累计个人养老金}', 'salaryItem_addUpIncome-salaryItem_addUpSpecialDeduction-salaryItem_addUpSpeAddiDeduction-salaryItem_addUpOtherDeduction-salaryItem_addUpSubtraction-salaryItem_addUpAllowedDonation-salaryItem_addUpPrivatePension', 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57'); + +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757404, '当前累计准备扣除的捐赠额', 1681265757380, 'salaryItem_addUpAllowedDonation', '{薪资项目.当前累计准备扣除的捐赠额}', 'number', 'salaryItem', 5, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57'); +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757408, '当前累计减除费用', 1681265757380, 'salaryItem_addUpSubtraction', '{薪资项目.当前累计减除费用}', 'number', 'salaryItem', 4, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57'); +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757413, '当前累计其他扣除合计', 1681265757380, 'salaryItem_addUpOtherDeduction', '{薪资项目.当前累计其他扣除合计}', 'number', 'salaryItem', 3, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57'); +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757417, '当前累计专项附加扣除合计', 1681265757380, 'salaryItem_addUpSpeAddiDeduction', '{薪资项目.当前累计专项附加扣除合计}', 'number', 'salaryItem', 2, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57'); +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757421, '当前累计专项扣除合计', 1681265757380, 'salaryItem_addUpSpecialDeduction', '{薪资项目.当前累计专项扣除合计}', 'number', 'salaryItem', 1, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57'); +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757424, '当前累计应税收入合计', 1681265757380, 'salaryItem_addUpIncome', '{薪资项目.当前累计应税收入合计}', 'number', 'salaryItem', 0, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57'); +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757428, '累计个人养老金', 1681265757380, 'salaryItem_addUpPrivatePension', '{薪资项目.累计个人养老金}', 'number', 'salaryItem', 6, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57'); + + + +INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, return_type, validate_type, extend_param, formula, formulaRunScript, creator, delete_type, create_time, update_time) VALUES (1681265757380, '公式1', '备注', 'salary', 'salaryitem', 'formula', 'number', 'number', '{\"datasource\":{\"datasourceId\":\"\"}}', '{薪资项目.当前累计应税收入合计}-{薪资项目.当前累计专项扣除合计}-{薪资项目.当前累计专项附加扣除合计}-{薪资项目.当前累计其他扣除合计}-{薪资项目.当前累计减除费用}-{薪资项目.当前累计准备扣除的捐赠额}-{薪资项目.累计个人养老金}', 'salaryItem_addUpIncome-salaryItem_addUpSpecialDeduction-salaryItem_addUpSpeAddiDeduction-salaryItem_addUpOtherDeduction-salaryItem_addUpSubtraction-salaryItem_addUpAllowedDonation-salaryItem_addUpPrivatePension', 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57') +GO + +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757404, '当前累计准备扣除的捐赠额', 1681265757380, 'salaryItem_addUpAllowedDonation', '{薪资项目.当前累计准备扣除的捐赠额}', 'number', 'salaryItem', 5, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57') +GO +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757408, '当前累计减除费用', 1681265757380, 'salaryItem_addUpSubtraction', '{薪资项目.当前累计减除费用}', 'number', 'salaryItem', 4, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57') +GO +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757413, '当前累计其他扣除合计', 1681265757380, 'salaryItem_addUpOtherDeduction', '{薪资项目.当前累计其他扣除合计}', 'number', 'salaryItem', 3, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57') +GO +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757417, '当前累计专项附加扣除合计', 1681265757380, 'salaryItem_addUpSpeAddiDeduction', '{薪资项目.当前累计专项附加扣除合计}', 'number', 'salaryItem', 2, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57') +GO +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757421, '当前累计专项扣除合计', 1681265757380, 'salaryItem_addUpSpecialDeduction', '{薪资项目.当前累计专项扣除合计}', 'number', 'salaryItem', 1, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57') +GO +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757424, '当前累计应税收入合计', 1681265757380, 'salaryItem_addUpIncome', '{薪资项目.当前累计应税收入合计}', 'number', 'salaryItem', 0, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57') +GO +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757428, '累计个人养老金', 1681265757380, 'salaryItem_addUpPrivatePension', '{薪资项目.累计个人养老金}', 'number', 'salaryItem', 6, 92, 0, '2023-04-12 10:15:57', '2023-04-12 10:15:57') +GO + + +INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, return_type, validate_type, extend_param, formula, formulaRunScript, creator, delete_type, create_time, update_time) VALUES (1681265757380, '公式1', '备注', 'salary', 'salaryitem', 'formula', 'number', 'number', '{\"datasource\":{\"datasourceId\":\"\"}}', '{薪资项目.当前累计应税收入合计}-{薪资项目.当前累计专项扣除合计}-{薪资项目.当前累计专项附加扣除合计}-{薪资项目.当前累计其他扣除合计}-{薪资项目.当前累计减除费用}-{薪资项目.当前累计准备扣除的捐赠额}-{薪资项目.累计个人养老金}', 'salaryItem_addUpIncome-salaryItem_addUpSpecialDeduction-salaryItem_addUpSpeAddiDeduction-salaryItem_addUpOtherDeduction-salaryItem_addUpSubtraction-salaryItem_addUpAllowedDonation-salaryItem_addUpPrivatePension', 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ + +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757404, '当前累计准备扣除的捐赠额', 1681265757380, 'salaryItem_addUpAllowedDonation', '{薪资项目.当前累计准备扣除的捐赠额}', 'number', 'salaryItem', 5, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757408, '当前累计减除费用', 1681265757380, 'salaryItem_addUpSubtraction', '{薪资项目.当前累计减除费用}', 'number', 'salaryItem', 4, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757413, '当前累计其他扣除合计', 1681265757380, 'salaryItem_addUpOtherDeduction', '{薪资项目.当前累计其他扣除合计}', 'number', 'salaryItem', 3, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757417, '当前累计专项附加扣除合计', 1681265757380, 'salaryItem_addUpSpeAddiDeduction', '{薪资项目.当前累计专项附加扣除合计}', 'number', 'salaryItem', 2, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757421, '当前累计专项扣除合计', 1681265757380, 'salaryItem_addUpSpecialDeduction', '{薪资项目.当前累计专项扣除合计}', 'number', 'salaryItem', 1, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757424, '当前累计应税收入合计', 1681265757380, 'salaryItem_addUpIncome', '{薪资项目.当前累计应税收入合计}', 'number', 'salaryItem', 0, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ +INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681265757428, '累计个人养老金', 1681265757380, 'salaryItem_addUpPrivatePension', '{薪资项目.累计个人养老金}', 'number', 'salaryItem', 6, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) +/ + + + + + +update hrsa_sys_salary_item set formula_id = 1681265757380 where name = '当前累计应纳税所得额' ; +update hrsa_salary_item set formula_id = 1681265757380 where name = '当前累计应纳税所得额'; + + + + +update hrsa_sys_salary_item set formula_id = 1681265757380 where name = '当前累计应纳税所得额' +GO +update hrsa_salary_item set formula_id = 1681265757380 where name = '当前累计应纳税所得额' +GO + +update hrsa_sys_salary_item set formula_id = 1681265757380 where name = '当前累计应纳税所得额' +/ +update hrsa_salary_item set formula_id = 1681265757380 where name = '当前累计应纳税所得额' +/ + + + + + diff --git a/resource/sql/公式修改.sql b/resource/sql/公式修改.sql index 1eb4eac79..2baed0f20 100644 --- a/resource/sql/公式修改.sql +++ b/resource/sql/公式修改.sql @@ -1,3 +1,3 @@ -update hrsa_formula set formula = 'if({薪资项目.当前累计应纳税所得额}<=36000){0;}else if({薪资项目.当前累计应纳税所得额}<=144000){2520;}else if({薪资项目.当前累计应纳税所得额}<=300000){16920;}else if({薪资项目.当前累计应纳税所得额}<=420000){31920;}else if({薪资项目.当前累计应纳税所得额}<=660000){52920;}else if({薪资项目.当前累计应纳税所得额}<=960000){85920;}else{181920;}' where id = 1651742702735 ; +update hrsa_formula set formula = '' where id = 1651742702735 ; -update hrsa_formula set formulaRunScript = 'if(salaryItem_addUpTaxableIncome<=36000){0;}else if(salaryItem_addUpTaxableIncome<=144000){2520;}else if(salaryItem_addUpTaxableIncome<=300000){16920;}else if(salaryItem_addUpTaxableIncome<=420000){31920;}else if(salaryItem_addUpTaxableIncome<=660000){52920;}else if(salaryItem_addUpTaxableIncome<=960000){85920;}else{181920;}' where id = 1651742702735 ; \ No newline at end of file +update hrsa_formula set formulaRunScript = '' where id = 1651742702735 ; \ No newline at end of file From f0eb9c8994a3bd8543d4682e7292a4598dc0c69c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Wed, 12 Apr 2023 13:57:13 +0800 Subject: [PATCH 10/35] =?UTF-8?q?=E5=85=BB=E8=80=81=E9=87=91=E6=9C=80?= =?UTF-8?q?=E7=BB=88=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resource/sql/个人养老金.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resource/sql/个人养老金.sql b/resource/sql/个人养老金.sql index ec80c6fbf..45b1f910d 100644 --- a/resource/sql/个人养老金.sql +++ b/resource/sql/个人养老金.sql @@ -20,10 +20,10 @@ INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id -ALTER TABLE hrsa_other_deduction ALTER COLUMN [private_pension] varchar(255) NULL +ALTER TABLE hrsa_other_deduction ADD [private_pension] varchar(255) NULL GO -ALTER TABLE hrsa_add_up_situation ALTER COLUMN [add_up_private_pension] varchar(255) NULL +ALTER TABLE hrsa_add_up_situation ADD [add_up_private_pension] varchar(255) NULL GO INSERT INTO hrsa_sys_salary_item(id, name, code, system_type, category, item_type, use_default, use_in_employee_salary, rounding_mode, pattern, value_type, datasource, formula_id, description, can_edit, can_delete, creator, delete_type, tenant_key, create_time, update_time, data_type) VALUES (746777981115629605, '个人养老金', 'privatePension', 1, 2, 12, 0, 0, 2, 2, 2, 8, 1680746056549, '', 0, 1, 0, 0, 'all_teams', '2022-03-28 10:33:01', '2022-05-10 15:54:31', 'number') From deb2e367f4432454cf89dcc31a6699c927d76963 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Thu, 13 Apr 2023 11:53:08 +0800 Subject: [PATCH 11/35] =?UTF-8?q?=E8=96=AA=E9=85=AC=E4=B8=8A=E4=B8=8B?= =?UTF-8?q?=E6=96=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/salary/common/SalaryContext.java | 30 +++++++++++++++++++ .../salary/web/SalaryItemController.java | 2 ++ 2 files changed, 32 insertions(+) create mode 100644 src/com/engine/salary/common/SalaryContext.java diff --git a/src/com/engine/salary/common/SalaryContext.java b/src/com/engine/salary/common/SalaryContext.java new file mode 100644 index 000000000..0e8300d74 --- /dev/null +++ b/src/com/engine/salary/common/SalaryContext.java @@ -0,0 +1,30 @@ +package com.engine.salary.common; + +import java.util.HashMap; +import java.util.Map; + + +public class SalaryContext { + public static ThreadLocal context = new ThreadLocal(); + + private Map map = new HashMap<>(); + + public static SalaryContext get() { + if (null == context.get()) { + context.set(new SalaryContext()); + } + return context.get(); + } + + public void setValue(String key, Object value) { + map.put(key, value); + } + + public Object getValue(String key) { + return map.get(key); + } + + public void removeContext() { + context.remove(); + } +} \ No newline at end of file diff --git a/src/com/engine/salary/web/SalaryItemController.java b/src/com/engine/salary/web/SalaryItemController.java index 4ced22fbd..fe1a91678 100644 --- a/src/com/engine/salary/web/SalaryItemController.java +++ b/src/com/engine/salary/web/SalaryItemController.java @@ -1,6 +1,7 @@ package com.engine.salary.web; import com.engine.common.util.ServiceUtil; +import com.engine.salary.common.SalaryContext; import com.engine.salary.component.WeaFormOption; import com.engine.salary.entity.salaryitem.dto.SalaryItemFormDTO; import com.engine.salary.entity.salaryitem.dto.SalaryItemListDTO; @@ -38,6 +39,7 @@ import java.util.Map; public class SalaryItemController { private SalaryItemWrapper getSalaryItemWrapper(User user) { + SalaryContext.get().setValue("user",user); return ServiceUtil.getService(SalaryItemWrapper.class, user); } From 15d6a63df6bad8e5552eb7bcc5287201785069a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Thu, 13 Apr 2023 11:53:43 +0800 Subject: [PATCH 12/35] =?UTF-8?q?=E8=96=AA=E9=85=AC=E4=B8=8A=E4=B8=8B?= =?UTF-8?q?=E6=96=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/common/SalaryContext.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/com/engine/salary/common/SalaryContext.java b/src/com/engine/salary/common/SalaryContext.java index 0e8300d74..b83bb88fc 100644 --- a/src/com/engine/salary/common/SalaryContext.java +++ b/src/com/engine/salary/common/SalaryContext.java @@ -4,6 +4,14 @@ import java.util.HashMap; import java.util.Map; +/** + * 薪酬上下文 + *

Copyright: Copyright (c) 2022

+ *

Company: 泛微软件

+ * + * @author qiantao + * @version 1.0 + **/ public class SalaryContext { public static ThreadLocal context = new ThreadLocal(); From a87c3445813cbbda33c3db7f396017240b803518 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Thu, 13 Apr 2023 17:14:58 +0800 Subject: [PATCH 13/35] =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E5=85=BB=E8=80=81?= =?UTF-8?q?=E9=87=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resource/sql/个人养老金.sql | 12 ++++++------ .../entity/taxdeclaration/bo/TaxDeclarationBO.java | 6 ++++++ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/resource/sql/个人养老金.sql b/resource/sql/个人养老金.sql index 45b1f910d..48ee61513 100644 --- a/resource/sql/个人养老金.sql +++ b/resource/sql/个人养老金.sql @@ -13,9 +13,9 @@ INSERT INTO hrsa_formula(id, name, description, module, use_for, reference_type, INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681201555332, '个人养老金', 1681201555316, 'salaryItem_privatePension', '{薪资项目.个人养老金}', 'number', 'salaryItem', 0, 92, 0, '2023-04-11 16:25:55', '2023-04-11 16:25:55'); INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681201555338, '累计个人养老金', 1681201555316, 'addUpSituation_addUpPrivatePension', '{往期累计情况.累计个人养老金}', 'number', 'addUpSituation', 1, 92, 0, '2023-04-11 16:25:55', '2023-04-11 16:25:55'); -INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312490, 1, 746777981115629605, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 10); +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (733975748932845610, 1, 746777981115629605, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 10); -INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312491, 1, 746777981115629698, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 11); +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (733975748932845611, 1, 746777981115629698, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 11); @@ -44,10 +44,10 @@ GO INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681201555338, '累计个人养老金', 1681201555316, 'addUpSituation_addUpPrivatePension', '{往期累计情况.累计个人养老金}', 'number', 'addUpSituation', 1, 92, 0, '2023-04-11 16:25:55', '2023-04-11 16:25:55') GO -INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312490, 1, 746777981115629605, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 10) +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (733975748932845610, 1, 746777981115629605, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 10) GO -INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312491, 1, 746777981115629698, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 11) +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (733975748932845611, 1, 746777981115629698, 1, 0, 0, '2022-03-18 16:30:21', '2022-03-18 16:59:24', 0, 'all_teams', 703433961629614110, 11) GO @@ -79,10 +79,10 @@ INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_t INSERT INTO hrsa_formula_var(id, name, formula_id, field_id, field_name, field_type, source, order_index, creator, delete_type, create_time, update_time) VALUES (1681201555338, '累计个人养老金', 1681201555316, 'addUpSituation_addUpPrivatePension', '{往期累计情况.累计个人养老金}', 'number', 'addUpSituation', 1, 92, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss')) / -INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312490, 1, 746777981115629605, 1, 0, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), 0, 'all_teams', 703433961629614110, 10) +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (733975748932845610, 1, 746777981115629605, 1, 0, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), 0, 'all_teams', 703433961629614110, 10) / -INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (706066600446312491, 1, 746777981115629698, 1, 0, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), 0, 'all_teams', 703433961629614110, 11) +INSERT INTO hrsa_salary_sob_default_item(id, income_category, sys_salary_item_id, can_edit, can_delete, creator, create_time, update_time, delete_type, tenant_key, sob_default_item_group_id, sorted_index) VALUES (733975748932845611, 1, 746777981115629698, 1, 0, 0, to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), to_date('2022-05-10 16:03:02','yyyy-MM-dd HH24:mi:ss'), 0, 'all_teams', 703433961629614110, 11) / diff --git a/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java b/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java index 6d936a232..3cf749498 100644 --- a/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java +++ b/src/com/engine/salary/entity/taxdeclaration/bo/TaxDeclarationBO.java @@ -245,6 +245,9 @@ public class TaxDeclarationBO { // 累计婴幼儿照护 BigDecimal addUpInfantCare = findValue(TaxDeclarationDataIndexConstant.ADD_UP_INFANT_CARE, resultMap, salaryItemMap); valueMap.put(TaxDeclarationDataIndexConstant.ADD_UP_INFANT_CARE, addUpInfantCare.toPlainString()); + // 累计个人养老金 + BigDecimal addUpPrivatePension = findValue(TaxDeclarationDataIndexConstant.ADD_UP_PRIVATE_PENSION, resultMap, salaryItemMap); + valueMap.put(TaxDeclarationDataIndexConstant.ADD_UP_PRIVATE_PENSION, addUpPrivatePension.toPlainString()); // 企业(职业)年金 BigDecimal annuity = findValue(TaxDeclarationDataIndexConstant.ANNUITY, resultMap, salaryItemMap); valueMap.put(TaxDeclarationDataIndexConstant.ANNUITY, annuity.toPlainString()); @@ -412,6 +415,8 @@ public class TaxDeclarationBO { BigDecimal addUpIllnessMedical = findAddUpValue(TaxDeclarationDataIndexConstant.ADD_UP_ILLNESS_MEDICAL, resultMap, salaryItemMap); // 累计婴幼儿照护 BigDecimal addUpInfantCare = findAddUpValue(TaxDeclarationDataIndexConstant.ADD_UP_INFANT_CARE, resultMap, salaryItemMap); + // 累计个人养老金 + BigDecimal addUpPrivatePension = findAddUpValue(TaxDeclarationDataIndexConstant.ADD_UP_PRIVATE_PENSION, resultMap, salaryItemMap); // 累计企业(职业)年金及其他福利 BigDecimal addUpEnterpriseAndOther = findAddUpValue(TaxDeclarationDataIndexConstant.ADD_UP_ENTERPRISE_AND_OTHER, resultMap, salaryItemMap); // 累计其他免税扣除 @@ -452,6 +457,7 @@ public class TaxDeclarationBO { .addUpSupportElderly(addUpSupportElderly.toPlainString()) .addUpIllnessMedical(addUpIllnessMedical.toPlainString()) .addUpInfantCare(addUpInfantCare.toPlainString()) + .addUpPrivatePension(addUpPrivatePension.toPlainString()) .addUpOtherDeduction(addUpOtherDeduction.toPlainString()) .addUpTaxExemptIncome(addUpTaxFreeIncome.toPlainString()) .addUpAllowedDonation(addUpAllowedDonation.toPlainString()) From f68981baaca9908c6fa83a05d2d30ae5aec1ed2b Mon Sep 17 00:00:00 2001 From: sy Date: Mon, 17 Apr 2023 10:27:31 +0800 Subject: [PATCH 14/35] =?UTF-8?q?=E8=96=AA=E9=85=AC=E7=B3=BB=E7=BB=9F-?= =?UTF-8?q?=E7=A6=8F=E5=88=A9=E5=8F=B0=E8=B4=A6=EF=BC=8C=E7=A6=8F=E5=88=A9?= =?UTF-8?q?=E6=A0=B8=E7=AE=97=E3=80=81=E6=A0=B8=E7=AE=97=E6=98=8E=E7=BB=86?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E9=80=BB=E8=BE=91=E4=BC=98=E5=8C=96=EF=BC=88?= =?UTF-8?q?=E5=8F=96=E6=B6=88=E5=AF=B9=E6=A1=A3=E6=A1=88=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E7=9A=84=E8=BF=87=E6=BB=A4=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/biz/SIAccountBiz.java | 20 ++++++------ .../service/impl/SIAccountServiceImpl.java | 32 +++++++++---------- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/src/com/engine/salary/biz/SIAccountBiz.java b/src/com/engine/salary/biz/SIAccountBiz.java index e09ce9e7b..a7dd4ed4c 100644 --- a/src/com/engine/salary/biz/SIAccountBiz.java +++ b/src/com/engine/salary/biz/SIAccountBiz.java @@ -148,14 +148,14 @@ public class SIAccountBiz extends Service { public PageInfo listCommonPage(InsuranceAccountDetailParam queryParam) { queryParam.setPaymentStatus(PaymentStatusEnum.COMMON.getValue()); - //过滤出需要核算的人员,即福利档案基础信息表中runStatus为正在缴纳和待减员的人员 - List baseInfoPOList = getInsuranceBaseInfoMapper().listAll(); - List canAccountIds = baseInfoPOList.stream() - .filter(f->f.getPaymentOrganization().toString().equals(queryParam.getPaymentOrganization()) - && (f.getRunStatus().equals(EmployeeStatusEnum.PAYING.getValue()) || f.getRunStatus().equals(EmployeeStatusEnum.STAY_DEL.getValue()))) - .map(InsuranceArchivesBaseInfoPO::getEmployeeId) - .collect(Collectors.toList()); - queryParam.setEmployeeIds(canAccountIds); +// //过滤出需要核算的人员,即福利档案基础信息表中runStatus为正在缴纳和待减员的人员 +// List baseInfoPOList = getInsuranceBaseInfoMapper().listAll(); +// List canAccountIds = baseInfoPOList.stream() +// .filter(f->f.getPaymentOrganization().toString().equals(queryParam.getPaymentOrganization()) +// && (f.getRunStatus().equals(EmployeeStatusEnum.PAYING.getValue()) || f.getRunStatus().equals(EmployeeStatusEnum.STAY_DEL.getValue()))) +// .map(InsuranceArchivesBaseInfoPO::getEmployeeId) +// .collect(Collectors.toList()); +// queryParam.setEmployeeIds(canAccountIds); //排序配置 OrderRuleVO orderRule = getSalarySysConfService(user).orderRule(); queryParam.setOrderRule(orderRule); @@ -226,8 +226,8 @@ public class SIAccountBiz extends Service { List employeeIds = getInsuranceAccountDetailMapper().selectEmpByPaymentOrg(paymentOrganization); // employeeIds = employeeIds.stream().filter(employeeIdsInTaxAgent::contains).collect(Collectors.toList()); if (CollectionUtils.isEmpty(employeeIds)) { - List list = Lists.newArrayList(getInsuranceAccountBatchMapper().getByBillMonth(param.getBillMonth(), paymentOrganization)); - encryptUtil.decryptList(list, InsuranceAccountBatchPO.class); + List list = Lists.newArrayList(getInsuranceAccountDetailMapper().queryNormalListByBillMonth(param.getBillMonth(), paymentOrganization)); + encryptUtil.decryptList(list, InsuranceAccountDetailPO.class); if (CollectionUtils.isNotEmpty(list)) { list.stream().forEach(f -> { getInsuranceAccountDetailMapper().deleteById(f.getId()); diff --git a/src/com/engine/salary/service/impl/SIAccountServiceImpl.java b/src/com/engine/salary/service/impl/SIAccountServiceImpl.java index e5e6f8672..f7aeec426 100644 --- a/src/com/engine/salary/service/impl/SIAccountServiceImpl.java +++ b/src/com/engine/salary/service/impl/SIAccountServiceImpl.java @@ -316,14 +316,14 @@ public class SIAccountServiceImpl extends Service implements SIAccountService { Long employeeId = (long) user.getUID(); Map datas = new HashMap<>(); - //过滤出福利档案基础信息表中runStatus为正在缴纳和待减员的人员 - List baseInfoPOList = getInsuranceBaseInfoMapper().listAll(); - List canAccountIds = baseInfoPOList.stream() - .filter(f->f.getPaymentOrganization().toString().equals(queryParam.getPaymentOrganization()) - && (f.getRunStatus().equals(EmployeeStatusEnum.PAYING.getValue()) || f.getRunStatus().equals(EmployeeStatusEnum.STAY_DEL.getValue()))) - .map(InsuranceArchivesBaseInfoPO::getEmployeeId) - .collect(Collectors.toList()); - queryParam.setEmployeeIds(canAccountIds); +// //过滤出福利档案基础信息表中runStatus为正在缴纳和待减员的人员 +// List baseInfoPOList = getInsuranceBaseInfoMapper().listAll(); +// List canAccountIds = baseInfoPOList.stream() +// .filter(f->f.getPaymentOrganization().toString().equals(queryParam.getPaymentOrganization()) +// && (f.getRunStatus().equals(EmployeeStatusEnum.PAYING.getValue()) || f.getRunStatus().equals(EmployeeStatusEnum.STAY_DEL.getValue()))) +// .map(InsuranceArchivesBaseInfoPO::getEmployeeId) +// .collect(Collectors.toList()); +// queryParam.setEmployeeIds(canAccountIds); //补缴缴纳列表 queryParam.setPaymentStatus(PaymentStatusEnum.REPAIR.getValue()); @@ -2859,14 +2859,14 @@ public class SIAccountServiceImpl extends Service implements SIAccountService { Map datas = new HashMap<>(); queryParam.setPageSize(10000000); - //过滤出福利档案基础信息表中runStatus为正在缴纳和待减员的人员 - List baseInfoPOList = getInsuranceBaseInfoMapper().listAll(); - List canAccountIds = baseInfoPOList.stream() - .filter(f->f.getPaymentOrganization().toString().equals(queryParam.getPaymentOrganization()) - && (f.getRunStatus().equals(EmployeeStatusEnum.PAYING.getValue()) || f.getRunStatus().equals(EmployeeStatusEnum.STAY_DEL.getValue()))) - .map(InsuranceArchivesBaseInfoPO::getEmployeeId) - .collect(Collectors.toList()); - queryParam.setEmployeeIds(canAccountIds); +// //过滤出福利档案基础信息表中runStatus为正在缴纳和待减员的人员 +// List baseInfoPOList = getInsuranceBaseInfoMapper().listAll(); +// List canAccountIds = baseInfoPOList.stream() +// .filter(f->f.getPaymentOrganization().toString().equals(queryParam.getPaymentOrganization()) +// && (f.getRunStatus().equals(EmployeeStatusEnum.PAYING.getValue()) || f.getRunStatus().equals(EmployeeStatusEnum.STAY_DEL.getValue()))) +// .map(InsuranceArchivesBaseInfoPO::getEmployeeId) +// .collect(Collectors.toList()); +// queryParam.setEmployeeIds(canAccountIds); //补缴缴纳列表 queryParam.setPaymentStatus(PaymentStatusEnum.REPAIR.getValue()); From c5d9ea542143d87714d5f9fe1d0549b7cc719d7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Tue, 18 Apr 2023 11:03:09 +0800 Subject: [PATCH 15/35] =?UTF-8?q?=E7=B4=AF=E8=AE=A1=E4=B8=AA=E4=BA=BA?= =?UTF-8?q?=E5=85=BB=E8=80=81=E9=87=91bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salary/service/impl/AddUpSituationServiceImpl.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java b/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java index c57f146fd..86ebda64b 100644 --- a/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java +++ b/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java @@ -275,7 +275,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation // excel标题 final List title = Arrays.asList("姓名", "个税扣缴义务人", "部门", "手机号", "工号", "证件号码", "入职日期", "累计收入额", "累计减除费用", "累计社保个人合计", "累计公积金个人合计", "累计子女教育", "累计继续教育", "累计住房贷款利息", "累计住房租金", "累计赡养老人", - "累计大病医疗", "累计企业(职业)年金及其他福利", "累计其他扣除", "累计免税收入", "累计准予扣除的捐赠额", "累计减免税额", "累计已预扣预缴税额", "累计婴幼儿照护"); + "累计大病医疗", "累计企业(职业)年金及其他福利", "累计其他扣除", "累计免税收入", "累计准予扣除的捐赠额", "累计减免税额", "累计已预扣预缴税额", "累计婴幼儿照护","累计个人养老金"); //排序配置 OrderRuleVO orderRule = getSalarySysConfService(user).orderRule(); @@ -318,6 +318,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation cellList.add(String.valueOf(dto.getAddUpTaxSavings())); cellList.add(String.valueOf(dto.getAddUpAdvanceTax())); cellList.add(String.valueOf(dto.getAddUpInfantCare())); + cellList.add(String.valueOf(dto.getAddUpPrivatePension())); return cellList; }).collect(Collectors.toList())) .orElse(Collections.emptyList()); @@ -340,7 +341,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation //excel标题 List title = Arrays.asList("姓名", "税款所属期", "个税扣缴义务人", "部门", "手机号", "工号", "累计收入额", "累计减除费用", "累计社保个人合计", "累计公积金个人合计", "累计子女教育", "累计继续教育", "累计住房贷款利息", "累计住房租金", "累计赡养老人", "累计大病医疗", "累计企业(职业)年金及其他福利", - "累计其他扣除", "累计免税收入", "累计准予扣除的捐赠额", "累计减免税额", "累计已预扣预缴税额", "累计婴幼儿照护"); + "累计其他扣除", "累计免税收入", "累计准予扣除的捐赠额", "累计减免税额", "累计已预扣预缴税额", "累计婴幼儿照护","累计个人养老金"); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM"); //查询详细信息 @@ -381,6 +382,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation cellList.add(Util.null2String(dto.getAddUpTaxSavings())); cellList.add(Util.null2String(dto.getAddUpAdvanceTax())); cellList.add(Util.null2String(dto.getAddUpInfantCare())); + cellList.add(Util.null2String(dto.getAddUpPrivatePension())); return cellList; }).collect(Collectors.toList())) .orElse(Collections.emptyList()); @@ -457,7 +459,8 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation SalaryI18nUtil.getI18nLabel(86703, "累计准予扣除的捐赠额"), SalaryI18nUtil.getI18nLabel(105478, "累计减免税额"), SalaryI18nUtil.getI18nLabel(86702, "累计已预扣预缴税额"), - SalaryI18nUtil.getI18nLabel(86702, "累计婴幼儿照护") + SalaryI18nUtil.getI18nLabel(86702, "累计婴幼儿照护"), + SalaryI18nUtil.getI18nLabel(86702, "累计个人养老金") }; // 2.表头 List headerList = Arrays.asList(header); @@ -535,6 +538,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation excelComments.add(new ExcelComment(21, 0, 26, 2, SalaryI18nUtil.getI18nLabel(100344, "输入数字"))); excelComments.add(new ExcelComment(22, 0, 27, 2, SalaryI18nUtil.getI18nLabel(100344, "输入数字"))); excelComments.add(new ExcelComment(23, 0, 28, 2, SalaryI18nUtil.getI18nLabel(100344, "输入数字"))); + excelComments.add(new ExcelComment(24, 0, 29, 2, SalaryI18nUtil.getI18nLabel(100344, "输入数字"))); return ExcelUtil.genWorkbookV2(rows, sheetName, excelComments); } From aeab5c75f53c91d3ee76c25596487ef7e1d8c0d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Tue, 18 Apr 2023 11:45:30 +0800 Subject: [PATCH 16/35] =?UTF-8?q?=E5=BE=80=E6=9C=9F=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/salary/service/impl/AddUpSituationServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java b/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java index 86ebda64b..805219141 100644 --- a/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java +++ b/src/com/engine/salary/service/impl/AddUpSituationServiceImpl.java @@ -573,7 +573,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation InputStream fileInputStream = null; try { fileInputStream = ImageFileManager.getInputStreamById(Integer.valueOf(imageId)); - List excelDates = ExcelParseHelper.parse2Map(fileInputStream, AddUpSituationDTO.class, 0, 1, 24, "template.xlsx"); + List excelDates = ExcelParseHelper.parse2Map(fileInputStream, AddUpSituationDTO.class, 0, 1, 25, "template.xlsx"); apidatas.put("preview", excelDates); } finally { IOUtils.closeQuietly(fileInputStream); @@ -628,7 +628,7 @@ public class AddUpSituationServiceImpl extends Service implements AddUpSituation try { fileInputStream = ImageFileManager.getInputStreamById(Integer.parseInt(imageId)); - List excelDates = ExcelParseHelper.parse2Map(fileInputStream, AddUpSituationDTO.class, 0, 1, 24, "template.xlsx"); + List excelDates = ExcelParseHelper.parse2Map(fileInputStream, AddUpSituationDTO.class, 0, 1, 25, "template.xlsx"); int total = excelDates.size(); int index = 0; From 62af02522c1d2560453156cc147d70aecc01630a Mon Sep 17 00:00:00 2001 From: sy Date: Tue, 18 Apr 2023 14:21:05 +0800 Subject: [PATCH 17/35] =?UTF-8?q?=E8=96=AA=E9=85=AC=E7=B3=BB=E7=BB=9F-?= =?UTF-8?q?=E7=A6=8F=E5=88=A9=E5=8F=B0=E8=B4=A6=EF=BC=8C=E7=BA=BF=E4=B8=8B?= =?UTF-8?q?=E5=AF=B9=E6=AF=94=EF=BC=88=E5=88=97=E8=A1=A8=E3=80=81=E5=AF=BC?= =?UTF-8?q?=E5=85=A5=E3=80=81=E5=AF=BC=E5=87=BA=EF=BC=89=E7=A6=8F=E5=88=A9?= =?UTF-8?q?=E9=A1=B9=E5=AD=97=E6=AE=B5=E6=A0=B9=E6=8D=AE=E6=AD=A3=E5=B8=B8?= =?UTF-8?q?=E7=BC=B4=E7=BA=B3=E4=B8=AD=E7=9A=84=E6=A0=B8=E7=AE=97=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E8=8E=B7=E5=BE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bo/InsuranceComparisonResultBO.java | 39 ++++++---- .../salary/service/SIAccountService.java | 2 +- .../impl/SIAComparisonResultServiceImpl.java | 41 ++++++++++- .../service/impl/SIAccountServiceImpl.java | 72 ++++++++++++++++--- .../salary/web/SIAccountController.java | 19 +++-- 5 files changed, 140 insertions(+), 33 deletions(-) diff --git a/src/com/engine/salary/entity/siaccount/bo/InsuranceComparisonResultBO.java b/src/com/engine/salary/entity/siaccount/bo/InsuranceComparisonResultBO.java index d6f6ab501..c24a2f513 100644 --- a/src/com/engine/salary/entity/siaccount/bo/InsuranceComparisonResultBO.java +++ b/src/com/engine/salary/entity/siaccount/bo/InsuranceComparisonResultBO.java @@ -18,10 +18,7 @@ import com.engine.salary.util.page.Column; import com.google.common.collect.Lists; import com.google.common.collect.Maps; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; @@ -44,13 +41,20 @@ public class InsuranceComparisonResultBO { * 构建福利核算结果列表的表头(线下对比) * */ - public static List buildTableColumns4ComparisonResult() { + public static List buildTableColumns4ComparisonResult(Set insuranceBaseSet, Set insurancePerPaySet, Set insuranceComPaySet) { List listAll = MapperProxyFactory.getProxy(ICategoryMapper.class).listAll(); - List socialWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 1).collect(Collectors.toList()); - List fundWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 2).collect(Collectors.toList()); - List otherWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 3).collect(Collectors.toList()); + List socialWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 1 && e.getIsUse() == 1 && insuranceBaseSet.contains(e.getId())).collect(Collectors.toList()); + List fundWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 2 && e.getIsUse() == 1 && insuranceBaseSet.contains(e.getId())).collect(Collectors.toList()); + List otherWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 3 && e.getIsUse() == 1 && insuranceBaseSet.contains(e.getId())).collect(Collectors.toList()); + List socialWelPerList = listAll.stream().filter(e -> e.getWelfareType() == 1 && e.getIsUse() == 1 && insurancePerPaySet.contains(e.getId())).collect(Collectors.toList()); + List fundWelPerList = listAll.stream().filter(e -> e.getWelfareType() == 2 && e.getIsUse() == 1 && insurancePerPaySet.contains(e.getId())).collect(Collectors.toList()); + List otherWelPerList = listAll.stream().filter(e -> e.getWelfareType() == 3 && e.getIsUse() == 1 && insurancePerPaySet.contains(e.getId())).collect(Collectors.toList()); + + List socialWelComList = listAll.stream().filter(e -> e.getWelfareType() == 1 && e.getIsUse() == 1 && insuranceComPaySet.contains(e.getId())).collect(Collectors.toList()); + List fundWelComList = listAll.stream().filter(e -> e.getWelfareType() == 2 && e.getIsUse() == 1 && insuranceComPaySet.contains(e.getId())).collect(Collectors.toList()); + List otherWelComList = listAll.stream().filter(e -> e.getWelfareType() == 3 && e.getIsUse() == 1 && insuranceComPaySet.contains(e.getId())).collect(Collectors.toList()); List columns = Lists.newArrayList(); // 员工信息字段 columns.add(new Column("姓名", "userName", "userName")); @@ -80,33 +84,33 @@ public class InsuranceComparisonResultBO { } //社保个人(生育保险个人、工伤保险个人、失业保险个人、养老保险个人、医疗保险个人) - for (ICategoryPO po : socialWelfareList) { + for (ICategoryPO po : socialWelPerList) { columns.add(new Column(po.getInsuranceName() + "个人", po.getId() + "socialPer", po.getId() + "socialPer")); } columns.add(new Column("社保个人合计", "socialPerSum", "socialPerSum")); //住房公积金个人、补充住房公积金个人 - for (ICategoryPO po : fundWelfareList) { + for (ICategoryPO po : fundWelPerList) { columns.add(new Column(po.getInsuranceName() + "个人", po.getId() + "fundPer", po.getId() + "fundPer")); } columns.add(new Column("公积金个人合计", "fundPerSum", "fundPerSum")); //其他个人(比如企业年金个人) - for (ICategoryPO po : otherWelfareList) { + for (ICategoryPO po : otherWelPerList) { columns.add(new Column(po.getInsuranceName() + "个人", po.getId() + "otherPer", po.getId() + "otherPer")); } columns.add(new Column("其他福利个人合计", "otherPerSum", "otherPerSum")); columns.add(new Column("个人合计", "perSum", "perSum")); //社保单位(生育保险单位、工伤保险单位、失业保险单位、养老保险单位、医疗保险单位) - for (ICategoryPO po : socialWelfareList) { + for (ICategoryPO po : socialWelComList) { columns.add(new Column(po.getInsuranceName() + "单位", po.getId() + "socialCom", po.getId() + "socialCom")); } columns.add(new Column("社保单位合计", "socialComSum", "socialComSum")); //住房公积金单位、补充住房公积金单位 - for (ICategoryPO po : fundWelfareList) { + for (ICategoryPO po : fundWelComList) { columns.add(new Column(po.getInsuranceName() + "单位", po.getId() + "fundCom", po.getId() + "fundCom")); } columns.add(new Column("公积金单位合计", "fundComSum", "fundComSum")); //其他单位(比如企业年金单位) - for (ICategoryPO po : otherWelfareList) { + for (ICategoryPO po : otherWelComList) { columns.add(new Column(po.getInsuranceName() + "单位", po.getId() + "otherCom", po.getId() + "otherCom")); } columns.add(new Column("其他福利单位合计", "otherComSum", "otherComSum")); @@ -123,7 +127,7 @@ public class InsuranceComparisonResultBO { * 构建福利核算线下对比结果 * */ - public static List> buildComparisonTableData(List accountExportPOS, List excelAccountExportPOS) { + public static List> buildComparisonTableData(List accountExportPOS, List excelAccountExportPOS, Map schemeIdNameMap) { Map> excelResultMap = SalaryEntityUtil.group2Map(excelAccountExportPOS, ExcelAccountExportPO::getWorkcode); // Map> acctResultMap = SalaryEntityUtil.group2Map(accountExportPOS, AccountExportPO::getWorkcode); @@ -162,6 +166,11 @@ public class InsuranceComparisonResultBO { map.put("supplementFundAccount", accountExportPO.getSupplementFundAccount()); map.put("supplementFundAccount" + DATA_TYPE_SUFFIX, SalaryDataTypeEnum.STRING.getValue()); + //福利方案名称 + map.put("socialSchemeName", schemeIdNameMap.get(accountExportPO.getSocialSchemeId())); + map.put("fundSchemeName", schemeIdNameMap.get(accountExportPO.getFundSchemeId())); + map.put("otherSchemeName", schemeIdNameMap.get(accountExportPO.getOtherSchemeId())); + //线下值 List excelResultValueList = excelResultMap.get(accountExportPO.getWorkcode()); ExcelAccountExportPO excelAccountExportPO = new ExcelAccountExportPO(); diff --git a/src/com/engine/salary/service/SIAccountService.java b/src/com/engine/salary/service/SIAccountService.java index 8a9a97497..8bf792abb 100644 --- a/src/com/engine/salary/service/SIAccountService.java +++ b/src/com/engine/salary/service/SIAccountService.java @@ -244,7 +244,7 @@ public interface SIAccountService { /** * 导出“福利核算-线下对比导入模板” */ - XSSFWorkbook exportComparisonWelfareTemplate(InsuranceAcctDetailImportTemplateParam param); + XSSFWorkbook exportComparisonWelfareTemplate(InsuranceAccountDetailParam param); /** * 将通过“福利核算-线下对比导入”模板导入的数据更新到hrsa_excel_bill_detail表中 diff --git a/src/com/engine/salary/service/impl/SIAComparisonResultServiceImpl.java b/src/com/engine/salary/service/impl/SIAComparisonResultServiceImpl.java index c2e813437..2fe3ba1c6 100644 --- a/src/com/engine/salary/service/impl/SIAComparisonResultServiceImpl.java +++ b/src/com/engine/salary/service/impl/SIAComparisonResultServiceImpl.java @@ -11,11 +11,14 @@ import com.engine.salary.entity.sicategory.po.ICategoryPO; import com.engine.salary.entity.siexport.param.InsuranceExportParam; import com.engine.salary.entity.siexport.po.AccountExportPO; import com.engine.salary.entity.siexport.po.ExcelAccountExportPO; +import com.engine.salary.entity.sischeme.po.InsuranceSchemeDetailPO; import com.engine.salary.enums.siaccount.EmployeeStatusEnum; import com.engine.salary.mapper.InsuranceExportMapper; import com.engine.salary.mapper.siarchives.InsuranceBaseInfoMapper; import com.engine.salary.mapper.sicategory.ICategoryMapper; +import com.engine.salary.mapper.sischeme.InsuranceSchemeDetailMapper; import com.engine.salary.service.SIAComparisonResultService; +import com.engine.salary.service.SISchemeService; import com.engine.salary.sys.entity.vo.OrderRuleVO; import com.engine.salary.sys.service.SalarySysConfService; import com.engine.salary.sys.service.impl.SalarySysConfServiceImpl; @@ -26,6 +29,7 @@ import com.engine.salary.util.page.PageInfo; import com.engine.salary.util.page.SalaryPageUtil; import com.engine.salary.util.valid.ValidUtil; import com.google.common.collect.Lists; +import com.wbi.util.Util; import org.apache.commons.lang3.BooleanUtils; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import weaver.hrm.User; @@ -57,6 +61,14 @@ public class SIAComparisonResultServiceImpl extends Service implements SIACompar return MapperProxyFactory.getProxy(ICategoryMapper.class); } + private InsuranceSchemeDetailMapper getInsuranceSchemeDetailMapper() { + return MapperProxyFactory.getProxy(InsuranceSchemeDetailMapper.class); + } + + private SISchemeService getSISchemeService(User user) { + return ServiceUtil.getService(SISchemeServiceImpl.class, user); + } + /** * 根据列表查询条件查询线下对比结果(分页) */ @@ -155,10 +167,35 @@ public class SIAComparisonResultServiceImpl extends Service implements SIACompar //2-查询线下对比数据 List excelAccountExportPOS = getInsuranceExportMapper().exportExcelAccount(queryParam); encryptUtil.decryptList(excelAccountExportPOS, ExcelAccountExportPO.class); + + //整理线上核算记录相关的福利方案,并以此整理需要对比的福利项类别数据 + Set welfareSchemeIds = new HashSet<>(); + accountExportPOS.forEach(f -> { + welfareSchemeIds.add(f.getSocialSchemeId()); + welfareSchemeIds.add(f.getFundSchemeId()); + welfareSchemeIds.add(f.getOtherSchemeId()); + }); + List insuranceSchemeDetailPos = getInsuranceSchemeDetailMapper().listAll(); + List insuranceBaseIds = insuranceSchemeDetailPos.stream() + .filter(f -> welfareSchemeIds.contains(f.getPrimaryId()) && f.getIsPayment() == 1) + .map(InsuranceSchemeDetailPO::getInsuranceId) + .collect(Collectors.toList()); + List insurancePerPayIds = insuranceSchemeDetailPos.stream() + .filter(f -> welfareSchemeIds.contains(f.getPrimaryId()) && f.getIsPayment() == 1 && f.getPaymentScope() == 2) + .map(InsuranceSchemeDetailPO::getInsuranceId) + .collect(Collectors.toList()); + List insuranceComPayIds = insuranceSchemeDetailPos.stream() + .filter(f -> welfareSchemeIds.contains(f.getPrimaryId()) && f.getIsPayment() == 1 && f.getPaymentScope() == 1) + .map(InsuranceSchemeDetailPO::getInsuranceId) + .collect(Collectors.toList()); + Set insuranceBaseSet = new HashSet<>(insuranceBaseIds); + Set insurancePerPaySet = new HashSet<>(insurancePerPayIds); + Set insuranceComPaySet = new HashSet<>(insuranceComPayIds); //3-构建福利核算对比结果列表表头 - List weaTableColumns = InsuranceComparisonResultBO.buildTableColumns4ComparisonResult(); + List weaTableColumns = InsuranceComparisonResultBO.buildTableColumns4ComparisonResult(insuranceBaseSet, insurancePerPaySet, insuranceComPaySet); //4-通过线上线下两份数据获得对比结果 - List> resultMapList = InsuranceComparisonResultBO.buildComparisonTableData(accountExportPOS, excelAccountExportPOS); + Map schemeIdNameMap = getSISchemeService(user).getSchemeIdNameMap(); + List> resultMapList = InsuranceComparisonResultBO.buildComparisonTableData(accountExportPOS, excelAccountExportPOS, schemeIdNameMap); // 系统值和线下值一致的人员 if (queryParam.isOnlyDiffEmployee()) { diff --git a/src/com/engine/salary/service/impl/SIAccountServiceImpl.java b/src/com/engine/salary/service/impl/SIAccountServiceImpl.java index f7aeec426..3ac3faca2 100644 --- a/src/com/engine/salary/service/impl/SIAccountServiceImpl.java +++ b/src/com/engine/salary/service/impl/SIAccountServiceImpl.java @@ -28,6 +28,9 @@ import com.engine.salary.entity.siarchives.po.InsuranceArchivesEmployeePO; import com.engine.salary.entity.siarchives.po.InsuranceArchivesFundSchemePO; import com.engine.salary.entity.siarchives.po.InsuranceArchivesSocialSchemePO; import com.engine.salary.entity.sicategory.po.ICategoryPO; +import com.engine.salary.entity.siexport.param.InsuranceExportParam; +import com.engine.salary.entity.siexport.po.AccountExportPO; +import com.engine.salary.entity.sischeme.po.InsuranceSchemeDetailPO; import com.engine.salary.entity.sischeme.po.InsuranceSchemePO; import com.engine.salary.entity.taxagent.po.TaxAgentPO; import com.engine.salary.enums.UserStatusEnum; @@ -35,6 +38,7 @@ import com.engine.salary.enums.siaccount.*; import com.engine.salary.enums.sicategory.DeleteTypeEnum; import com.engine.salary.enums.sicategory.WelfareTypeEnum; import com.engine.salary.exception.SalaryRunTimeException; +import com.engine.salary.mapper.InsuranceExportMapper; import com.engine.salary.mapper.siaccount.ExcelInsuranceDetailMapper; import com.engine.salary.mapper.siaccount.InsuranceAccountBatchMapper; import com.engine.salary.mapper.siaccount.InsuranceAccountDetailMapper; @@ -43,6 +47,7 @@ import com.engine.salary.mapper.siarchives.FundSchemeMapper; import com.engine.salary.mapper.siarchives.InsuranceBaseInfoMapper; import com.engine.salary.mapper.siarchives.SocialSchemeMapper; import com.engine.salary.mapper.sicategory.ICategoryMapper; +import com.engine.salary.mapper.sischeme.InsuranceSchemeDetailMapper; import com.engine.salary.mapper.sischeme.InsuranceSchemeMapper; import com.engine.salary.mapper.sys.SalarySysConfMapper; import com.engine.salary.mapper.taxagent.TaxAgentMapper; @@ -183,6 +188,14 @@ public class SIAccountServiceImpl extends Service implements SIAccountService { return MapperProxyFactory.getProxy(InsuranceAccountInspectMapper.class); } + private InsuranceExportMapper getInsuranceExportMapper() { + return MapperProxyFactory.getProxy(InsuranceExportMapper.class); + } + + private InsuranceSchemeDetailMapper getInsuranceSchemeDetailMapper() { + return MapperProxyFactory.getProxy(InsuranceSchemeDetailMapper.class); + } + @Override public Map listPage(InsuranceAccountBatchParam queryParam) { Long employeeId = (long) user.getUID(); @@ -1824,12 +1837,51 @@ public class SIAccountServiceImpl extends Service implements SIAccountService { * 导出“福利核算-线下对比导入模板” */ @Override - public XSSFWorkbook exportComparisonWelfareTemplate(InsuranceAcctDetailImportTemplateParam param) { + public XSSFWorkbook exportComparisonWelfareTemplate(InsuranceAccountDetailParam param) { + + //查询线上福利核算记录 + InsuranceExportParam insuranceExportParam = new InsuranceExportParam(); + insuranceExportParam.setBillMonth(param.getBillMonth()); + insuranceExportParam.setPaymentOrganization(param.getPaymentOrganization()); + List accountExportPOS = getInsuranceExportMapper().exportAccount(param.getPaymentStatus(), insuranceExportParam); + + //整理线上核算记录相关的福利方案,并以此整理需要对比的福利项类别数据 + Set welfareSchemeIds = new HashSet<>(); + accountExportPOS.forEach(f -> { + welfareSchemeIds.add(f.getSocialSchemeId()); + welfareSchemeIds.add(f.getFundSchemeId()); + welfareSchemeIds.add(f.getOtherSchemeId()); + }); + List insuranceSchemeDetailPos = getInsuranceSchemeDetailMapper().listAll(); + List insuranceBaseIds = insuranceSchemeDetailPos.stream() + .filter(f -> welfareSchemeIds.contains(f.getPrimaryId()) && f.getIsPayment() == 1) + .map(InsuranceSchemeDetailPO::getInsuranceId) + .collect(Collectors.toList()); + List insurancePerPayIds = insuranceSchemeDetailPos.stream() + .filter(f -> welfareSchemeIds.contains(f.getPrimaryId()) && f.getIsPayment() == 1 && f.getPaymentScope() == 2) + .map(InsuranceSchemeDetailPO::getInsuranceId) + .collect(Collectors.toList()); + List insuranceComPayIds = insuranceSchemeDetailPos.stream() + .filter(f -> welfareSchemeIds.contains(f.getPrimaryId()) && f.getIsPayment() == 1 && f.getPaymentScope() == 1) + .map(InsuranceSchemeDetailPO::getInsuranceId) + .collect(Collectors.toList()); + Set insuranceBaseSet = new HashSet<>(insuranceBaseIds); + Set insurancePerPaySet = new HashSet<>(insurancePerPayIds); + Set insuranceComPaySet = new HashSet<>(insuranceComPayIds); List listAll = getICategoryMapper().listAll(); - List socialWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 1).collect(Collectors.toList()); - List fundWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 2).collect(Collectors.toList()); - List otherWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 3).collect(Collectors.toList()); + List socialWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 1 && e.getIsUse() == 1 && insuranceBaseSet.contains(e.getId())).collect(Collectors.toList()); + List fundWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 2 && e.getIsUse() == 1 && insuranceBaseSet.contains(e.getId())).collect(Collectors.toList()); + List otherWelfareList = listAll.stream().filter(e -> e.getWelfareType() == 3 && e.getIsUse() == 1 && insuranceBaseSet.contains(e.getId())).collect(Collectors.toList()); + + List socialWelPerList = listAll.stream().filter(e -> e.getWelfareType() == 1 && e.getIsUse() == 1 && insurancePerPaySet.contains(e.getId())).collect(Collectors.toList()); + List fundWelPerList = listAll.stream().filter(e -> e.getWelfareType() == 2 && e.getIsUse() == 1 && insurancePerPaySet.contains(e.getId())).collect(Collectors.toList()); + List otherWelPerList = listAll.stream().filter(e -> e.getWelfareType() == 3 && e.getIsUse() == 1 && insurancePerPaySet.contains(e.getId())).collect(Collectors.toList()); + + List socialWelComList = listAll.stream().filter(e -> e.getWelfareType() == 1 && e.getIsUse() == 1 && insuranceComPaySet.contains(e.getId())).collect(Collectors.toList()); + List fundWelComList = listAll.stream().filter(e -> e.getWelfareType() == 2 && e.getIsUse() == 1 && insuranceComPaySet.contains(e.getId())).collect(Collectors.toList()); + List otherWelComList = listAll.stream().filter(e -> e.getWelfareType() == 3 && e.getIsUse() == 1 && insuranceComPaySet.contains(e.getId())).collect(Collectors.toList()); + List headerList = Lists.newArrayList(SalaryI18nUtil.getI18nLabel(85429, "姓名"), SalaryI18nUtil.getI18nLabel(86185, "部门"), SalaryI18nUtil.getI18nLabel(86186, "手机号"), @@ -1860,33 +1912,33 @@ public class SIAccountServiceImpl extends Service implements SIAccountService { headerList.add(po.getInsuranceName() + "申报基数"); } //社保个人(生育保险个人、工伤保险个人、失业保险个人、养老保险个人、医疗保险个人) - for (ICategoryPO po : socialWelfareList) { + for (ICategoryPO po : socialWelPerList) { headerList.add(po.getInsuranceName() + "个人"); } headerList.add(SalaryI18nUtil.getI18nLabel(100388, "社保个人合计")); //住房公积金个人、补充住房公积金个人 - for (ICategoryPO po : fundWelfareList) { + for (ICategoryPO po : fundWelPerList) { headerList.add(po.getInsuranceName() + "个人"); } headerList.add(SalaryI18nUtil.getI18nLabel(100390, "公积金个人合计")); //其他个人(比如企业年金个人) - for (ICategoryPO po : otherWelfareList) { + for (ICategoryPO po : otherWelPerList) { headerList.add(po.getInsuranceName() + "个人"); } headerList.add(SalaryI18nUtil.getI18nLabel(100392, "其他福利个人合计")); headerList.add(SalaryI18nUtil.getI18nLabel(100393, "个人合计")); //社保单位(生育保险单位、工伤保险单位、失业保险单位、养老保险单位、医疗保险单位) - for (ICategoryPO po : socialWelfareList) { + for (ICategoryPO po : socialWelComList) { headerList.add(po.getInsuranceName() + "单位"); } headerList.add(SalaryI18nUtil.getI18nLabel(100394, "社保单位合计")); //住房公积金单位、补充住房公积金单位 - for (ICategoryPO po : fundWelfareList) { + for (ICategoryPO po : fundWelComList) { headerList.add(po.getInsuranceName() + "单位"); } headerList.add(SalaryI18nUtil.getI18nLabel(100395, "公积金单位合计")); //其他单位(比如企业年金单位) - for (ICategoryPO po : otherWelfareList) { + for (ICategoryPO po : otherWelComList) { headerList.add(po.getInsuranceName() + "单位"); } headerList.add(SalaryI18nUtil.getI18nLabel(100396, "其他福利单位合计")); diff --git a/src/com/engine/salary/web/SIAccountController.java b/src/com/engine/salary/web/SIAccountController.java index b9978755f..448922c7d 100644 --- a/src/com/engine/salary/web/SIAccountController.java +++ b/src/com/engine/salary/web/SIAccountController.java @@ -559,12 +559,21 @@ public class SIAccountController { @Produces(MediaType.APPLICATION_OCTET_STREAM) public Response exportComparisonWelfareTemplate(@Context HttpServletRequest request, @Context HttpServletResponse response) { try { - InsuranceAcctDetailImportTemplateParam param = new InsuranceAcctDetailImportTemplateParam(); + InsuranceAccountDetailParam param = new InsuranceAccountDetailParam(); -// String welfareNames = request.getParameter("welfareNames"); -// if (StringUtils.isNotBlank(welfareNames)) { -// param.setWelfareNames(Arrays.stream(welfareNames.split(",")).map(String::valueOf).collect(Collectors.toList())); -// } + String billMonth = request.getParameter("billMonth"); + if (StringUtils.isNotBlank(billMonth)) { + param.setBillMonth(billMonth); + } + String paymentOrganization = request.getParameter("paymentOrganization"); + if (StringUtils.isNotBlank(paymentOrganization)) { + param.setPaymentOrganization(paymentOrganization); + } + + String paymentStatus = request.getParameter("paymentStatus"); + if (StringUtils.isNotBlank(paymentStatus)) { + param.setPaymentStatus(Integer.valueOf(paymentStatus)); + } User user = HrmUserVarify.getUser(request, response); XSSFWorkbook workbook = getService(user).exportComparisonWelfareTemplate(param); From 3a555c186667ec3348a0d3f5002ab630685e55a9 Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Thu, 20 Apr 2023 13:08:58 +0800 Subject: [PATCH 18/35] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B7=B2=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java b/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java index 46436a4f0..d34efd87f 100644 --- a/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java +++ b/src/com/engine/salary/service/impl/RemoteExcelServiceImpl.java @@ -221,7 +221,7 @@ public class RemoteExcelServiceImpl extends Service implements RemoteExcelServic result.put(SalaryFormulaReferenceEnum.SALARY_ITEM.getDefaultLabel(), salaryItem2FormulaVar(SalaryFormulaReferenceEnum.SALARY_ITEM, null)); result.put(SalaryFormulaReferenceEnum.ISSUED.getDefaultLabel(), - salaryItem2FormulaVar(SalaryFormulaReferenceEnum.SALARY_ITEM, null)); + salaryItem2FormulaVar(SalaryFormulaReferenceEnum.ISSUED, null)); result.put(SalaryFormulaReferenceEnum.SALARY_ARCHIVES.getDefaultLabel(), salaryArchives2FormulaVar(SalaryFormulaReferenceEnum.SALARY_ARCHIVES, null)); result.put(SalaryFormulaReferenceEnum.ADD_UP_SITUATION.getDefaultLabel(), From 135530d3b7e67bf6c9e073c561f2e77b3a0d018c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Thu, 20 Apr 2023 17:55:37 +0800 Subject: [PATCH 19/35] =?UTF-8?q?=E5=85=A8=E9=87=8F=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/mapper/datacollection/EmployMapper.xml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/com/engine/salary/mapper/datacollection/EmployMapper.xml b/src/com/engine/salary/mapper/datacollection/EmployMapper.xml index 806a1bf2d..794b1491a 100644 --- a/src/com/engine/salary/mapper/datacollection/EmployMapper.xml +++ b/src/com/engine/salary/mapper/datacollection/EmployMapper.xml @@ -172,9 +172,12 @@ c.id as jobtitleId, e.companystartdate as companystartdate, e.mobile as mobile, - e.enddate as dismissdate + e.enddate as dismissdate, + sc.SUBCOMPANYNAME as subcompanyName, + sc.id as subcompanyid, from hrmresource e left join hrmdepartment d on e.departmentid = d.id + left join HrmSubCompany sc on e.SUBCOMPANYID1=sc.id left join hrmjobtitles c on e.jobtitle = c.id where e.status not in (7) and (e.accounttype is null or e.accounttype = 0) From d2b304e6907f600f50759cef30e98204c2a1349f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Thu, 20 Apr 2023 18:04:18 +0800 Subject: [PATCH 20/35] =?UTF-8?q?=E5=85=A8=E9=87=8F=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/mapper/datacollection/EmployMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/engine/salary/mapper/datacollection/EmployMapper.xml b/src/com/engine/salary/mapper/datacollection/EmployMapper.xml index 794b1491a..5cec7b295 100644 --- a/src/com/engine/salary/mapper/datacollection/EmployMapper.xml +++ b/src/com/engine/salary/mapper/datacollection/EmployMapper.xml @@ -174,7 +174,7 @@ e.mobile as mobile, e.enddate as dismissdate, sc.SUBCOMPANYNAME as subcompanyName, - sc.id as subcompanyid, + sc.id as subcompanyid from hrmresource e left join hrmdepartment d on e.departmentid = d.id left join HrmSubCompany sc on e.SUBCOMPANYID1=sc.id From 4a9df2276df6abf79e1b427fe881d417a8651a0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Fri, 21 Apr 2023 11:25:16 +0800 Subject: [PATCH 21/35] =?UTF-8?q?=E5=88=86=E9=83=A8=E8=AE=A1=E7=AE=97?= =?UTF-8?q?=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/biz/SubCompanyBiz.java | 26 ++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/com/engine/salary/biz/SubCompanyBiz.java diff --git a/src/com/engine/salary/biz/SubCompanyBiz.java b/src/com/engine/salary/biz/SubCompanyBiz.java new file mode 100644 index 000000000..a8a2a41b6 --- /dev/null +++ b/src/com/engine/salary/biz/SubCompanyBiz.java @@ -0,0 +1,26 @@ +package com.engine.salary.biz; + +import com.engine.salary.entity.hrm.SubCompanyInfo; +import weaver.conn.RecordSet; + +import java.util.ArrayList; +import java.util.List; + +public class SubCompanyBiz { + + public List list() { + List returnList = new ArrayList<>(); + + RecordSet rs = new RecordSet(); + rs.executeQuery("select id, subcompanyname from HrmsubCompany"); + while (rs.next()) { + returnList.add( + SubCompanyInfo.builder() + .id(Long.valueOf(rs.getString(1))) + .name(rs.getString(2)).build() + ); + } + return returnList; + } + +} From ce8ca9cdb89e6abb07a01463bf92bdc43565e994 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Fri, 21 Apr 2023 13:52:57 +0800 Subject: [PATCH 22/35] =?UTF-8?q?=E5=88=86=E9=83=A8=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/biz/SubCompanyBiz.java | 26 ++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/src/com/engine/salary/biz/SubCompanyBiz.java b/src/com/engine/salary/biz/SubCompanyBiz.java index a8a2a41b6..2ca3cbd6d 100644 --- a/src/com/engine/salary/biz/SubCompanyBiz.java +++ b/src/com/engine/salary/biz/SubCompanyBiz.java @@ -1,6 +1,7 @@ package com.engine.salary.biz; import com.engine.salary.entity.hrm.SubCompanyInfo; +import org.apache.commons.lang3.StringUtils; import weaver.conn.RecordSet; import java.util.ArrayList; @@ -16,11 +17,32 @@ public class SubCompanyBiz { while (rs.next()) { returnList.add( SubCompanyInfo.builder() - .id(Long.valueOf(rs.getString(1))) - .name(rs.getString(2)).build() + .id(Long.valueOf(rs.getString(1))) + .name(rs.getString(2)).build() ); } return returnList; } + /** + * 获取所有上级分部 + * + * @param subId + * @param returnList + * @return + */ + public List getSupSubCompanyLists(String subId, List returnList) { + RecordSet rs = new RecordSet(); + rs.executeSql("select supsubcomid from HrmsubCompany where id=" + subId); + while (rs.next()) { + String supsubcomid = rs.getString(1); + if (!StringUtils.equals(supsubcomid, "0")) { + returnList.add(supsubcomid); + getSupSubCompanyLists(supsubcomid, returnList); + } + } + return returnList; + } + + } From d56e9aff8234238dae0b4e95ba0c98b3d5dc649b Mon Sep 17 00:00:00 2001 From: sy Date: Sun, 23 Apr 2023 13:35:17 +0800 Subject: [PATCH 23/35] =?UTF-8?q?=E8=96=AA=E9=85=AC=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=EF=BC=8C=E5=AF=BC=E5=87=BAexcel=E7=9A=84title=E8=A1=8C?= =?UTF-8?q?=E8=83=8C=E6=99=AF=E7=BD=AE=E4=B8=BA=E7=81=B0=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/engine/salary/util/excel/ExcelUtil.java | 8 ++++---- src/com/engine/salary/util/excel/ExcelUtilPlus.java | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/com/engine/salary/util/excel/ExcelUtil.java b/src/com/engine/salary/util/excel/ExcelUtil.java index 2aa9775d1..c733129fb 100644 --- a/src/com/engine/salary/util/excel/ExcelUtil.java +++ b/src/com/engine/salary/util/excel/ExcelUtil.java @@ -29,7 +29,7 @@ public class ExcelUtil { titleFont.setFontHeightInPoints((short) 15); titleCellStyle.setFont(titleFont); titleCellStyle.setAlignment(HorizontalAlignment.CENTER); - titleCellStyle.setFillForegroundColor(IndexedColors.GREEN.getIndex());//背景色 + titleCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());//背景色 titleCellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); @@ -78,7 +78,7 @@ public class ExcelUtil { titleFont.setFontHeightInPoints((short) 15); titleCellStyle.setFont(titleFont); titleCellStyle.setAlignment(HorizontalAlignment.CENTER); - titleCellStyle.setFillForegroundColor(IndexedColors.GREEN.getIndex());//背景色 + titleCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());//背景色 titleCellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); @@ -138,7 +138,7 @@ public class ExcelUtil { titleFont.setFontHeightInPoints((short) 15); titleCellStyle.setFont(titleFont); titleCellStyle.setAlignment(HorizontalAlignment.CENTER); - titleCellStyle.setFillForegroundColor(IndexedColors.GREEN.getIndex());//背景色 + titleCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());//背景色 titleCellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); @@ -206,7 +206,7 @@ public class ExcelUtil { titleFont.setFontHeightInPoints((short) 15); titleCellStyle.setFont(titleFont); titleCellStyle.setAlignment(HorizontalAlignment.CENTER); - titleCellStyle.setFillForegroundColor(IndexedColors.GREEN.getIndex());//背景色 + titleCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());//背景色 titleCellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); diff --git a/src/com/engine/salary/util/excel/ExcelUtilPlus.java b/src/com/engine/salary/util/excel/ExcelUtilPlus.java index 0fb1cdab8..f8cb09c79 100644 --- a/src/com/engine/salary/util/excel/ExcelUtilPlus.java +++ b/src/com/engine/salary/util/excel/ExcelUtilPlus.java @@ -28,7 +28,7 @@ public class ExcelUtilPlus { titleFont.setFontHeightInPoints((short) 15); titleCellStyle.setFont(titleFont); titleCellStyle.setAlignment(HorizontalAlignment.CENTER); - titleCellStyle.setFillForegroundColor(IndexedColors.GREEN.getIndex());//背景色 + titleCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());//背景色 titleCellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); From 413de52d6a5af8b9ce0c7b5f18cf972508283ee6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Sun, 23 Apr 2023 16:27:11 +0800 Subject: [PATCH 24/35] =?UTF-8?q?=E7=BB=B4=E6=8A=A4=E5=B7=A5=E5=85=B7v1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/salary/cache/SalaryCacheKey.java | 6 +- .../salaryacct/SalaryAcctManager.java | 351 ++++++++++++++++++ .../salaryacct/SalaryAcctSupplementParam.java | 34 ++ 3 files changed, 386 insertions(+), 5 deletions(-) create mode 100644 src/com/engine/salary/maintainer/salaryacct/SalaryAcctManager.java create mode 100644 src/com/engine/salary/maintainer/salaryacct/SalaryAcctSupplementParam.java diff --git a/src/com/engine/salary/cache/SalaryCacheKey.java b/src/com/engine/salary/cache/SalaryCacheKey.java index 549dccd31..76d19ea7d 100644 --- a/src/com/engine/salary/cache/SalaryCacheKey.java +++ b/src/com/engine/salary/cache/SalaryCacheKey.java @@ -1,11 +1,7 @@ package com.engine.salary.cache; /** - * @description: 用于定义本服务内部使用的缓存key - * @author: xiajun - * @modified By: xiajun - * @date: Created in 12/13/21 11:12 AM - * @version:v1.0 + * 用于定义本服务内部使用的缓存key */ public class SalaryCacheKey { diff --git a/src/com/engine/salary/maintainer/salaryacct/SalaryAcctManager.java b/src/com/engine/salary/maintainer/salaryacct/SalaryAcctManager.java new file mode 100644 index 000000000..05f17cb7b --- /dev/null +++ b/src/com/engine/salary/maintainer/salaryacct/SalaryAcctManager.java @@ -0,0 +1,351 @@ +package com.engine.salary.maintainer.salaryacct; + +import com.engine.common.util.ServiceUtil; +import com.engine.core.impl.Service; +import com.engine.salary.entity.datacollection.DataCollectionEmployee; +import com.engine.salary.entity.datacollection.dto.AttendQuoteFieldListDTO; +import com.engine.salary.entity.salaryacct.bo.SalaryAcctCalculateBO; +import com.engine.salary.entity.salaryacct.bo.SalaryAcctCalculatePriorityBO; +import com.engine.salary.entity.salaryacct.bo.SalaryAcctResultBO; +import com.engine.salary.entity.salaryacct.dto.SalaryAcctProgressDTO; +import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO; +import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO; +import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO; +import com.engine.salary.entity.salaryacct.po.SalaryAcctResultTempPO; +import com.engine.salary.entity.salaryformula.ExpressFormula; +import com.engine.salary.entity.salaryitem.po.SalaryItemPO; +import com.engine.salary.entity.salarysob.dto.SalarySobCycleDTO; +import com.engine.salary.entity.salarysob.po.SalarySobAdjustRulePO; +import com.engine.salary.entity.salarysob.po.SalarySobBackItemPO; +import com.engine.salary.entity.salarysob.po.SalarySobItemPO; +import com.engine.salary.entity.salarysob.po.SalarySobPO; +import com.engine.salary.exception.SalaryRunTimeException; +import com.engine.salary.mapper.salaryacct.SalaryAcctResultMapper; +import com.engine.salary.service.*; +import com.engine.salary.service.impl.*; +import com.engine.salary.util.SalaryEntityUtil; +import com.engine.salary.util.SalaryI18nUtil; +import com.engine.salary.util.db.MapperProxyFactory; +import com.google.common.collect.Lists; +import com.weaver.util.threadPool.ThreadPoolUtil; +import com.weaver.util.threadPool.constant.ModulePoolEnum; +import com.weaver.util.threadPool.entity.LocalRunnable; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.collections4.MapUtils; +import org.apache.commons.lang.math.NumberUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.jdbc.datasource.DataSourceTransactionManager; +import weaver.hrm.User; + +import java.math.BigDecimal; +import java.util.*; +import java.util.concurrent.BlockingDeque; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.LinkedBlockingDeque; +import java.util.stream.Collectors; + +/** + * 薪资核算维护类 + *

Copyright: Copyright (c) 2022

+ *

Company: 泛微软件

+ * + * @author qiantao + * @version 1.0 + **/ +@Slf4j +public class SalaryAcctManager extends Service { + private SalaryAcctResultMapper getSalaryAcctResultMapper() { + return MapperProxyFactory.getProxy(SalaryAcctResultMapper.class); + } + + private SalaryAcctEmployeeService getSalaryAcctEmployeeService(User user) { + return ServiceUtil.getService(SalaryAcctEmployeeServiceImpl.class, user); + } + + private SalaryAcctResultService getSalaryAcctResultService(User user) { + return ServiceUtil.getService(SalaryAcctResultServiceImpl.class, user); + } + + private SalarySobItemService getSalarySobItemService(User user) { + return ServiceUtil.getService(SalarySobItemServiceImpl.class, user); + } + + private SalaryItemService getSalaryItemService(User user) { + return ServiceUtil.getService(SalaryItemServiceImpl.class, user); + } + + private SalarySobEmpFieldService getSalarySobEmpFieldService(User user) { + return ServiceUtil.getService(SalarySobEmpFieldServiceImpl.class, user); + } + + private SalarySobService getSalarySobService(User user) { + return ServiceUtil.getService(SalarySobServiceImpl.class, user); + } + + private SalaryAcctRecordService getSalaryAcctRecordService(User user) { + return ServiceUtil.getService(SalaryAcctRecordServiceImpl.class, user); + } + + private TaxAgentService getTaxAgentService(User user) { + return ServiceUtil.getService(TaxAgentServiceImpl.class, user); + } + + private SalaryEmployeeService getSalaryEmployeeService(User user) { + return ServiceUtil.getService(SalaryEmployeeServiceImpl.class, user); + } + + private SalaryFormulaService getSalaryFormulaService(User user) { + return ServiceUtil.getService(SalaryFormulaServiceImpl.class, user); + } + + private SalarySobAdjustRuleService getSalarySobAdjustRuleService(User user) { + return ServiceUtil.getService(SalarySobAdjustRuleServiceImpl.class, user); + } + + private SalarySobItemHideService getSalarySobItemHideService(User user) { + return ServiceUtil.getService(SalarySobItemHideServiceImpl.class, user); + } + + private SalaryAcctCalculateService getSalaryAcctCalculateService(User user) { + return ServiceUtil.getService(SalaryAcctCalculateServiceImpl.class, user); + } + + private SalaryAcctProgressService getSalaryAcctProgressService(User user) { + return ServiceUtil.getService(SalaryAcctProgressServiceImpl.class, user); + } + + private DataSourceTransactionManager dataSourceTransactionManager; + + private SalaryAcctResultTempService getSalaryAcctResultTempService(User user) { + return ServiceUtil.getService(SalaryAcctResultTempServiceImpl.class, user); + } +// private LoggerTemplate salaryAcctRecordLoggerTemplate; + + private SIAccountService getSIAccountService(User user) { + return ServiceUtil.getService(SIAccountServiceImpl.class, user); + } + + private AttendQuoteFieldService getAttendQuoteFieldService(User user) { + return ServiceUtil.getService(AttendQuoteFieldServiceImpl.class, user); + } + + private SalaryAcctReportService getSalaryAcctReportService(User user) { + return ServiceUtil.getService(SalaryAcctReportServiceImpl.class, user); + } + + private SalarySobItemGroupService getSalarySobItemGroupService(User user) { + return ServiceUtil.getService(SalarySobItemGroupServiceImpl.class, user); + } + + private SalarySobBackItemService getSalarySobBackItemService(User user) { + return ServiceUtil.getService(SalarySobBackItemServiceImpl.class, user); + } + + + /** + * 补充核算 + * 核算已归档后,需要重新核算某一项 + */ + public void supplementAcctRecord(SalaryAcctSupplementParam param) { + + + } + + /** + * 薪资核算-核算 + * + * @param calculateParam 薪资核算的参数 + */ + public void calculate(SalaryAcctSupplementParam calculateParam) { + log.info("开始核算V1{}", calculateParam); + + //当前登陆人员 + DataCollectionEmployee simpleEmployee = new DataCollectionEmployee(); + simpleEmployee.setEmployeeId((long) user.getUID()); + + // 检查是否正在核算中 + SalaryAcctProgressDTO salaryAcctProgressDTO = getSalaryAcctProgressService(user).getProgress("SalaryCacheKey.ACCT_PROGRESS" + calculateParam.getSalaryAcctRecordId()); + if (Objects.nonNull(salaryAcctProgressDTO) && salaryAcctProgressDTO.isStatus() && Optional.ofNullable(salaryAcctProgressDTO.getProgress()).orElse(BigDecimal.ZERO).compareTo(BigDecimal.ONE) < 0) { + return; + } + // 初始化进度 + SalaryAcctProgressDTO initProgress = new SalaryAcctProgressDTO() + .setTitle(SalaryI18nUtil.getI18nLabel(97515, "核算中")) + .setTitleLabelId(97515L) + .setTotalQuantity(NumberUtils.INTEGER_ONE) + .setCalculatedQuantity(NumberUtils.INTEGER_ZERO) + .setProgress(BigDecimal.ZERO) + .setStatus(true) + .setMessage(StringUtils.EMPTY); + getSalaryAcctProgressService(user).initProgress("SalaryCacheKey.ACCT_PROGRESS" + calculateParam.getSalaryAcctRecordId(), initProgress); + new Thread() { + public void run() { + calculate(calculateParam, simpleEmployee); + } + }.start(); + + } + + + public void calculate(SalaryAcctSupplementParam calculateParam, DataCollectionEmployee simpleEmployee) { + try { + // 1、查询薪资核算记录 + SalaryAcctRecordPO salaryAcctRecordPO = getSalaryAcctRecordService(user).getById(calculateParam.getSalaryAcctRecordId()); + if (Objects.isNull(salaryAcctRecordPO)) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98747, "薪资核算记录不存在或已被删除")); + } + //查询对应账套 + SalarySobPO salarySobPO = getSalarySobService(user).getById(salaryAcctRecordPO.getSalarySobId()); + if (Objects.isNull(salarySobPO)) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98747, "薪资账套不存在或已被删除")); + } + // 2、查询薪资核算记录的薪资周期、考勤周期等 + SalarySobCycleDTO salarySobCycleDTO = getSalaryAcctRecordService(user).getSalarySobCycleById(calculateParam.getSalaryAcctRecordId()); + // 3、查询薪资核算记录所用薪资账套的薪资项目副本 + List salarySobItemPOS = getSalarySobItemService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId()); + if (CollectionUtils.isEmpty(salarySobItemPOS)) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(99151, "当前所用的薪资账套未选择任何薪资项目,无法核算")); + } + // 回算薪资项目 + List salarySobBackItems = Collections.emptyList(); + if (Objects.equals(salaryAcctRecordPO.getBackCalcStatus(), 1)) { + salarySobBackItems = getSalarySobBackItemService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId()); + } + // 4、查询当前租户的所有薪资项目 + List salaryItemPOS = getSalaryItemService(user).listAll(); + // 5、查询薪资核算记录所用薪资账套的调薪计薪规则 + List salarySobAdjustRulePOS = getSalarySobAdjustRuleService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId()); + // 6、查询社保福利的所有字段 + Map welfareColumns = getSIAccountService(user).welfareColumns(); + // 7、查询考勤引用的所有字段 + List attendQuoteFieldListDTOS = getAttendQuoteFieldService(user).listAll(); + + //核算锁定值 + List lockSalaryItemIds = salaryAcctRecordPO.getLockSalaryItemIds(); + Map acctResults = new HashMap<>(); + if (CollectionUtils.isNotEmpty(lockSalaryItemIds)) { + List acctResultPOS = getSalaryAcctResultService(user).listBySalaryAcctRecordIds(Collections.singleton(calculateParam.getSalaryAcctRecordId())); + acctResults = Optional.ofNullable(acctResultPOS) + .orElse(new ArrayList<>()) + .stream() + .filter(po -> lockSalaryItemIds.contains(po.getSalaryItemId())) + .collect(Collectors.toMap(po -> po.getSalaryItemId() + "_" + po.getSalaryAcctEmpId(), a -> a, (a, b) -> a)); + } + + // 8、查询公式详情 + Set formulaIds = SalaryEntityUtil.properties(salarySobItemPOS, SalarySobItemPO::getFormulaId); + formulaIds.addAll(SalaryEntityUtil.properties(salaryItemPOS, SalaryItemPO::getFormulaId)); + formulaIds.addAll(SalaryEntityUtil.properties(salarySobBackItems, SalarySobBackItemPO::getFormulaId)); + List expressFormulas = getSalaryFormulaService(user).listExpressFormula(formulaIds); + // 本次运算的回算薪资项目所涉及的变量 + Set issuedFieldIds = new HashSet<>(); + // 9、计算薪资项目的运算优先级 + List> salarySobItemsWithPriority = SalaryAcctCalculatePriorityBO.calculatePriority(salarySobItemPOS, salaryItemPOS, expressFormulas, salarySobBackItems, issuedFieldIds); + // 10、根据id查询其他合并计税的薪资核算记录 + List otherSalaryAcctRecordPOS = getSalaryAcctRecordService(user).listById4OtherConsolidatedTax(salaryAcctRecordPO.getId()); + // 11、查询本次核算人员 + List salaryAcctEmployeePOS; + if (CollectionUtils.isEmpty(calculateParam.getIds())) { + salaryAcctEmployeePOS = getSalaryAcctEmployeeService(user).listBySalaryAcctRecordId(salaryAcctRecordPO.getId()); + } else { + salaryAcctEmployeePOS = getSalaryAcctEmployeeService(user).listByIds(calculateParam.getIds()); + } + if (CollectionUtils.isEmpty(salaryAcctEmployeePOS)) { + throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(103378, "薪资核算人员不能为空")); + } + // 11.1、初始化进度 + SalaryAcctProgressDTO initProgress = new SalaryAcctProgressDTO().setTitle(SalaryI18nUtil.getI18nLabel(97515, "核算中")).setTitleLabelId(97515L).setTotalQuantity(salaryAcctEmployeePOS.size() * 2 + 1).setCalculatedQuantity(0).setProgress(BigDecimal.ZERO).setStatus(true).setMessage(StringUtils.EMPTY); + getSalaryAcctProgressService(user).initProgress("SalaryCacheKey.ACCT_PROGRESS" + calculateParam.getSalaryAcctRecordId(), initProgress); + // 12、对薪资核算人员进行拆分 + List> partition = Lists.partition(salaryAcctEmployeePOS, 5000); + // 12.1、监控子线程的任务执行 + CountDownLatch childMonitor = new CountDownLatch(partition.size()); + // 12.2、记录子线程的执行结果 + BlockingDeque calculateResults = new LinkedBlockingDeque<>(partition.size()); + // 12.3、生成本次运算的key + String calculateKey = UUID.randomUUID().toString(); + // 12.4、多线程运算,运算结果存放在临时表中 + for (List acctEmployeePOS : partition) { + SalaryAcctCalculateBO salaryAcctCalculateBO = new SalaryAcctCalculateBO() + .setSalaryAcctRecordPO(salaryAcctRecordPO) + .setSalarySobPO(salarySobPO) + .setSalarySobCycleDTO(salarySobCycleDTO) + .setOtherSalaryAcctRecordPOS(otherSalaryAcctRecordPOS) + .setSalaryAcctLockResultPOS(MapUtils.emptyIfNull(acctResults)) + .setLockSalaryItemIds(lockSalaryItemIds) + .setSalarySobItemPOS(salarySobItemPOS) + .setSalaryItemIdWithPriorityList(salarySobItemsWithPriority) + .setExpressFormulas(expressFormulas) + .setSalaryItemPOS(salaryItemPOS) + .setSalarySobAdjustRulePOS(salarySobAdjustRulePOS) + .setWelfareColumns(MapUtils.emptyIfNull(welfareColumns)) + .setAttendQuoteFieldListDTOS(attendQuoteFieldListDTOS) + .setSalaryAcctEmployeePOS(acctEmployeePOS) + .setIssuedFieldIds(issuedFieldIds) + .setChildMonitor(childMonitor) + .setResults(calculateResults) + .setCalculateKey(calculateKey); + List finalSalarySobBackItems = salarySobBackItems; + LocalRunnable localRunnable = new LocalRunnable() { + @Override + public void execute() { + getSalaryAcctCalculateService(user).calculate(salaryAcctCalculateBO, simpleEmployee, finalSalarySobBackItems); + } + }; + ThreadPoolUtil.fixedPoolExecute(ModulePoolEnum.HRM, "salaryAcctCalculateV2", localRunnable); + } + // 13、等待所有子线程执行完毕 + childMonitor.await(); + // 14、判断子线程执行结果 + boolean allSuccess = calculateResults.stream().allMatch(SalaryAcctCalculateBO.Result::isStatus); + if (!allSuccess) { + // 薪资核算实现的线程的错误信息 + String errorMsg = calculateResults.stream().filter(result -> !result.isStatus()).map(SalaryAcctCalculateBO.Result::getErrMsg).collect(Collectors.joining("|")); + getSalaryAcctProgressService(user).fail("SalaryCacheKey.ACCT_PROGRESS" + calculateParam.getSalaryAcctRecordId(), errorMsg); + // 删除薪资核算临时存储表中的数据 + getSalaryAcctResultTempService(user).deleteByCalculateKey(calculateKey); + return; + } + // 15、处理核算结果临时表数据 + handleSalaryAcctResultTemp(calculateParam, calculateKey); + + getSalaryAcctProgressService(user).finish("SalaryCacheKey.ACCT_PROGRESS" + calculateParam.getSalaryAcctRecordId(), true); + + } catch (Exception e) { + log.info("薪资核算出错:{}", e.getMessage(), e); +// throw new SalaryRunTimeException(e); + getSalaryAcctProgressService(user).fail("SalaryCacheKey.ACCT_PROGRESS" + calculateParam.getSalaryAcctRecordId(), SalaryI18nUtil.getI18nLabel(99642, "薪资核算出错") + ": " + e.getMessage()); + } finally { + // 数据库字段加密用 + } + } + + /** + * 处理薪资核算临时存储表中的数据 + * + * @param calculateParam + * @param calculateKey + */ + private void handleSalaryAcctResultTemp(SalaryAcctSupplementParam calculateParam, String calculateKey) { + // 查询薪资核算结果的临时存储 + List salaryAcctResultTempPOS = getSalaryAcctResultTempService(user).listByCalculateKey(calculateKey); + // 删除原来的薪资核算结果 + if (CollectionUtils.isNotEmpty(calculateParam.getIds())) { + getSalaryAcctResultMapper().deleteBySalaryAcctEmpIds(calculateParam.getIds()); + } else { + getSalaryAcctResultMapper().deleteBySalaryAcctRecordIds(Collections.singleton(calculateParam.getSalaryAcctRecordId())); + getSalaryAcctReportService(user).deleteBySalaryAcctRecordId(calculateParam.getSalaryAcctRecordId()); + } + // 保存薪资的薪资核算结果 + List salaryAcctResultPOS = SalaryAcctResultBO.convert2ResultPO(salaryAcctResultTempPOS); +// batchSave(salaryAcctResultPOS); + //保存核算报表数据 +// List salaryAcctResultReportPOS = SalaryAcctResultReportBO.convert2ReportPO(salaryAcctResultTempPOS, calculateParam.getEmps()); +// getSalaryAcctReportService(user).batchSave(salaryAcctResultReportPOS); + // 删除薪资核算临时存储表中的数据 + getSalaryAcctResultTempService(user).deleteByCalculateKey(calculateKey); + } + + +} diff --git a/src/com/engine/salary/maintainer/salaryacct/SalaryAcctSupplementParam.java b/src/com/engine/salary/maintainer/salaryacct/SalaryAcctSupplementParam.java new file mode 100644 index 000000000..a4bcd3c64 --- /dev/null +++ b/src/com/engine/salary/maintainer/salaryacct/SalaryAcctSupplementParam.java @@ -0,0 +1,34 @@ +package com.engine.salary.maintainer.salaryacct; + +import com.engine.salary.util.valid.DataCheck; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Collection; + +/** + * 薪资补充核算的参数 + *

Copyright: Copyright (c) 2022

+ *

Company: 泛微软件

+ * + * @author qiantao + * @version 1.0 + **/ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SalaryAcctSupplementParam { + + //核算人员的id,不是employeeId而是salaryAcctEmpId + private Collection ids; + + @DataCheck(require = true,message = "参数错误,薪资核算记录ID不能为空") + private Long salaryAcctRecordId; + + @DataCheck(require = true,message = "参数错误,薪资项目ID不能为空") + private String salaryItemIds; + +} From 37310f02f633865b499e185e7bb52e003d479a38 Mon Sep 17 00:00:00 2001 From: sy Date: Sun, 23 Apr 2023 16:35:52 +0800 Subject: [PATCH 25/35] =?UTF-8?q?=E8=96=AA=E9=85=AC=E7=B3=BB=E7=BB=9F-?= =?UTF-8?q?=E7=A6=8F=E5=88=A9=E5=8F=B0=E8=B4=A6=EF=BC=8C=E8=A1=A5=E5=B7=AE?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E7=9B=B8=E5=85=B3=E5=90=88=E8=AE=A1=E9=A1=B9?= =?UTF-8?q?=E8=AE=A1=E7=AE=97=E9=80=BB=E8=BE=91=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SIAccountServiceImpl.java | 59 +++++++++++++++++-- 1 file changed, 54 insertions(+), 5 deletions(-) diff --git a/src/com/engine/salary/service/impl/SIAccountServiceImpl.java b/src/com/engine/salary/service/impl/SIAccountServiceImpl.java index 3ac3faca2..b75972dc5 100644 --- a/src/com/engine/salary/service/impl/SIAccountServiceImpl.java +++ b/src/com/engine/salary/service/impl/SIAccountServiceImpl.java @@ -1701,36 +1701,58 @@ public class SIAccountServiceImpl extends Service implements SIAccountService { insuranceAccountDetailPO.setOtherComJson(JSON.toJSONString(otherComMap)); } - if (!StringUtils.isEmpty(baseMap.getOrDefault("个人合计", "").toString())) { - insuranceAccountDetailPO.setPerSum(baseMap.get("个人合计").toString()); - } if (!StringUtils.isEmpty(baseMap.getOrDefault("社保个人合计", "").toString())) { insuranceAccountDetailPO.setSocialPerSum(baseMap.get("社保个人合计").toString()); + } else { + insuranceAccountDetailPO.setSocialPerSum(sumOfMapValue(socialPerMap)); } if (!StringUtils.isEmpty(baseMap.getOrDefault("公积金个人合计", "").toString())) { insuranceAccountDetailPO.setFundPerSum(baseMap.get("公积金个人合计").toString()); + } else { + insuranceAccountDetailPO.setFundPerSum(sumOfMapValue(fundPerMap)); } if (!StringUtils.isEmpty(baseMap.getOrDefault("其他福利个人合计", "").toString())) { insuranceAccountDetailPO.setOtherPerSum(baseMap.get("其他福利个人合计").toString()); + } else { + insuranceAccountDetailPO.setOtherPerSum(sumOfMapValue(otherPerMap)); } - if (!StringUtils.isEmpty(baseMap.getOrDefault("单位合计", "").toString())) { - insuranceAccountDetailPO.setComSum(baseMap.get("单位合计").toString()); + if (!StringUtils.isEmpty(baseMap.getOrDefault("个人合计", "").toString())) { + insuranceAccountDetailPO.setPerSum(baseMap.get("个人合计").toString()); + } else { + insuranceAccountDetailPO.setPerSum(new BigDecimal(insuranceAccountDetailPO.getSocialPerSum()) + .add(new BigDecimal(insuranceAccountDetailPO.getFundPerSum())) + .add(new BigDecimal(insuranceAccountDetailPO.getOtherPerSum())).toString()); } if (!StringUtils.isEmpty(baseMap.getOrDefault("社保单位合计", "").toString())) { insuranceAccountDetailPO.setSocialComSum(baseMap.get("社保单位合计").toString()); + } else { + insuranceAccountDetailPO.setSocialComSum(sumOfMapValue(socialComMap)); } if (!StringUtils.isEmpty(baseMap.getOrDefault("公积金单位合计", "").toString())) { insuranceAccountDetailPO.setFundComSum(baseMap.get("公积金单位合计").toString()); + } else { + insuranceAccountDetailPO.setFundComSum(sumOfMapValue(fundComMap)); } if (!StringUtils.isEmpty(baseMap.getOrDefault("其他福利单位合计", "").toString())) { insuranceAccountDetailPO.setOtherComSum(baseMap.get("其他福利单位合计").toString()); + } else { + insuranceAccountDetailPO.setOtherComSum(sumOfMapValue(otherComMap)); + } + + + if (!StringUtils.isEmpty(baseMap.getOrDefault("单位合计", "").toString())) { + insuranceAccountDetailPO.setComSum(baseMap.get("单位合计").toString()); + } else { + insuranceAccountDetailPO.setComSum(new BigDecimal(insuranceAccountDetailPO.getSocialComSum()) + .add(new BigDecimal(insuranceAccountDetailPO.getFundComSum())) + .add(new BigDecimal(insuranceAccountDetailPO.getOtherComSum())).toString()); } if (!StringUtils.isEmpty(baseMap.getOrDefault("账单月份", "").toString())) { @@ -1739,15 +1761,31 @@ public class SIAccountServiceImpl extends Service implements SIAccountService { if (!StringUtils.isEmpty(baseMap.getOrDefault("社保合计", "").toString())) { insuranceAccountDetailPO.setSocialSum(baseMap.get("社保合计").toString()); + } else { + insuranceAccountDetailPO.setSocialSum(new BigDecimal(insuranceAccountDetailPO.getSocialComSum()) + .add(new BigDecimal(insuranceAccountDetailPO.getSocialPerSum())) + .toString()); } if (!StringUtils.isEmpty(baseMap.getOrDefault("公积金合计", "").toString())) { insuranceAccountDetailPO.setFundSum(baseMap.get("公积金合计").toString()); + } else { + insuranceAccountDetailPO.setFundSum(new BigDecimal(insuranceAccountDetailPO.getFundComSum()) + .add(new BigDecimal(insuranceAccountDetailPO.getFundPerSum())) + .toString()); } if (!StringUtils.isEmpty(baseMap.getOrDefault("其他福利合计", "").toString())) { insuranceAccountDetailPO.setOtherSum(baseMap.get("其他福利合计").toString()); + } else { + insuranceAccountDetailPO.setOtherSum(new BigDecimal(insuranceAccountDetailPO.getOtherComSum()) + .add(new BigDecimal(insuranceAccountDetailPO.getOtherPerSum())) + .toString()); } if (!StringUtils.isEmpty(baseMap.getOrDefault("合计", "").toString())) { insuranceAccountDetailPO.setTotal(baseMap.get("合计").toString()); + } else { + insuranceAccountDetailPO.setTotal(new BigDecimal(insuranceAccountDetailPO.getPerSum()) + .add(new BigDecimal(insuranceAccountDetailPO.getComSum())) + .toString()); } //如果导入的时补缴数据,还会包含补缴月份 @@ -1760,6 +1798,17 @@ public class SIAccountServiceImpl extends Service implements SIAccountService { return insuranceAccountDetailPO; } + /** + * map中value值求和 + */ + public String sumOfMapValue(Map welfarePay){ + BigDecimal sum = new BigDecimal("0"); + for (String value : welfarePay.values()) { + sum = sum.add(new BigDecimal(value)); + } + return sum.toString(); + } + /** * 对比新旧两份数据,并更新数据 */ From f4ebcf987cae743a48b699a88e62e3f92aebd958 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Sun, 23 Apr 2023 17:30:43 +0800 Subject: [PATCH 26/35] =?UTF-8?q?=E7=BB=B4=E6=8A=A4=E4=BC=B0=E8=AE=A1?= =?UTF-8?q?=E6=8E=A7=E5=88=B6=E5=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/salary/web/MaintainerController.java | 9 +++ .../maintainer/MaintainerController.java | 56 +++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 src/com/api/salary/web/MaintainerController.java create mode 100644 src/com/engine/salary/maintainer/MaintainerController.java diff --git a/src/com/api/salary/web/MaintainerController.java b/src/com/api/salary/web/MaintainerController.java new file mode 100644 index 000000000..f43fe0a46 --- /dev/null +++ b/src/com/api/salary/web/MaintainerController.java @@ -0,0 +1,9 @@ +package com.api.salary.web; + + +import javax.ws.rs.Path; + +@Path("/bs/hrmsalary/maintainer") +public class MaintainerController extends com.engine.salary.maintainer.MaintainerController{ + +} diff --git a/src/com/engine/salary/maintainer/MaintainerController.java b/src/com/engine/salary/maintainer/MaintainerController.java new file mode 100644 index 000000000..12040d334 --- /dev/null +++ b/src/com/engine/salary/maintainer/MaintainerController.java @@ -0,0 +1,56 @@ +package com.engine.salary.maintainer; + +import com.engine.common.util.ServiceUtil; +import com.engine.salary.maintainer.salaryacct.SalaryAcctManager; +import com.engine.salary.maintainer.salaryacct.SalaryAcctSupplementParam; +import com.engine.salary.util.ResponseResult; +import io.swagger.v3.oas.annotations.parameters.RequestBody; +import lombok.extern.slf4j.Slf4j; +import weaver.hrm.HrmUserVarify; +import weaver.hrm.User; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.POST; +import javax.ws.rs.Path; +import javax.ws.rs.Produces; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.MediaType; +import java.util.Map; + +/** + * 累计专项附加扣除 + *

Copyright: Copyright (c) 2022

+ *

Company: 泛微软件

+ * + * @author qiantao + * @version 1.0 + **/ +@Slf4j +public class MaintainerController { + + private SalaryAcctManager getSalaryAcctManager(User user) { + return ServiceUtil.getService(SalaryAcctManager.class, user); + } + + //---------------------------薪资核算 start ------------------------------------ + + /** + * 补充核算 + * + * @param queryParam + * @return + */ + @POST + @Path("/template/list") + @Produces(MediaType.APPLICATION_JSON) + public String templateList(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryAcctSupplementParam queryParam) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult>(user).run(getSalaryAcctManager(user)::supplementAcctRecord, queryParam); + } + + + + //---------------------------薪资核算 end ------------------------------------ + +} From 31235096bb7e8338ad94c1b86cae150a57da715e Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Sun, 23 Apr 2023 17:37:06 +0800 Subject: [PATCH 27/35] =?UTF-8?q?=E6=81=A2=E5=A4=8D=E5=BE=80=E6=9C=9F?= =?UTF-8?q?=E7=B4=AF=E8=AE=A1=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../datacollection/AddUpSituationManager.java | 64 +++++++++++++++++++ .../taxdeclaration/TaxDeclarationMapper.java | 2 +- .../taxdeclaration/TaxDeclarationMapper.xml | 9 +++ 3 files changed, 74 insertions(+), 1 deletion(-) create mode 100644 src/com/engine/salary/maintainer/datacollection/AddUpSituationManager.java diff --git a/src/com/engine/salary/maintainer/datacollection/AddUpSituationManager.java b/src/com/engine/salary/maintainer/datacollection/AddUpSituationManager.java new file mode 100644 index 000000000..39a930ebe --- /dev/null +++ b/src/com/engine/salary/maintainer/datacollection/AddUpSituationManager.java @@ -0,0 +1,64 @@ +package com.engine.salary.maintainer.datacollection; + +import com.engine.common.util.ServiceUtil; +import com.engine.core.impl.Service; +import com.engine.salary.entity.taxdeclaration.param.TaxDeclarationSaveParam; +import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationPO; +import com.engine.salary.mapper.taxdeclaration.TaxDeclarationMapper; +import com.engine.salary.service.TaxDeclarationService; +import com.engine.salary.service.impl.TaxDeclarationServiceImpl; +import com.engine.salary.util.SalaryDateUtil; +import com.engine.salary.util.SalaryEntityUtil; +import com.engine.salary.util.db.MapperProxyFactory; +import weaver.general.BaseBean; + +import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.time.YearMonth; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * @author Harryxzy + * @date 2023/04/23 17:23 + * @description 往期累计情况维护类 + */ +public class AddUpSituationManager extends Service { + + private TaxDeclarationMapper getTaxDeclarationMapper() { + return MapperProxyFactory.getProxy(TaxDeclarationMapper.class); + } + + private TaxDeclarationService getTaxDeclarationService() { + return ServiceUtil.getService(TaxDeclarationServiceImpl.class, user); + } + + public String recoverAddUpHistoryData() { + // 获取已有的个税申报表记录 + List taxDeclarationList = getTaxDeclarationMapper().listSome(new TaxDeclarationPO()); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM"); + Map taxDeclarationMap = SalaryEntityUtil.convert2Map(taxDeclarationList, TaxDeclarationPO::getId, PO->PO.getTaxAgentId()+"-"+sdf.format(PO.getSalaryMonth())); + BaseBean bb = new BaseBean(); + List taxDeclarationIds = taxDeclarationList.stream().map(TaxDeclarationPO::getId).collect(Collectors.toList()); + bb.writeLog("往期累计数据恢复DataIds:"+ taxDeclarationIds); + bb.writeLog("往期累计数据恢复DataMap:"+ taxDeclarationMap); + // 循环调用生成申报单接口 + for(int i =0; i < taxDeclarationList.size(); i++){ + TaxDeclarationPO PO = taxDeclarationList.get(i); + bb.writeLog("开始删除生成:"+PO.getTaxAgentId()+"-"+PO.getSalaryMonth()); + // 删除记录 + int delete = getTaxDeclarationMapper().deleteByIdZj(PO.getId()); + LocalDate localDate = SalaryDateUtil.dateToLocalDate(PO.getSalaryMonth()); + // 调用生成申报单接口 + YearMonth yearMonth = YearMonth.of(localDate.getYear(),localDate.getMonth()); + try { + getTaxDeclarationService().save(TaxDeclarationSaveParam.builder().salaryMonth(yearMonth).taxAgentId(PO.getTaxAgentId()).build()); + }catch (Exception e){ + bb.writeLog("错误:"+e); + continue; + } + } + return "SUCCESS"; + } +} diff --git a/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.java b/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.java index a252a430b..5785ed794 100644 --- a/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.java +++ b/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.java @@ -1,7 +1,6 @@ package com.engine.salary.mapper.taxdeclaration; import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationPO; -import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.Collection; @@ -41,4 +40,5 @@ public interface TaxDeclarationMapper { */ void deleteByIds(@Param("ids") Collection ids); + int deleteByIdZj(Long id); } \ No newline at end of file diff --git a/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.xml b/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.xml index fb270b1e1..24ea392ff 100644 --- a/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.xml +++ b/src/com/engine/salary/mapper/taxdeclaration/TaxDeclarationMapper.xml @@ -32,6 +32,15 @@ ,t.income_category + + UPDATE hrsa_tax_declaration + SET delete_type = 1, + update_time ='2023-01-01' + WHERE delete_type = 0 + AND id = #{id} + + +