weaver-hrm-salary/src/com/engine/salary/entity/datacollection/po/OtherDeductionPO.java

205 lines
5.5 KiB
Java
Raw Normal View History

2022-03-10 17:57:46 +08:00
package com.engine.salary.entity.datacollection.po;
2024-09-20 16:45:35 +08:00
import com.engine.hrmelog.annotation.ElogTransform;
import com.engine.salary.annotation.Auth;
2024-12-25 16:28:21 +08:00
import cn.hutool.core.util.NumberUtil;
import com.engine.hrmelog.annotation.ElogTransform;
import com.engine.salary.annotation.Encrypt;
2022-04-21 20:29:11 +08:00
import com.engine.salary.annotation.SalaryFormulaVar;
2022-03-10 17:57:46 +08:00
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
2022-04-21 14:15:56 +08:00
import java.util.Collection;
2022-03-10 17:57:46 +08:00
import java.util.Date;
import java.util.List;
/**
* 数据采集-其他免税扣除表
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
2024-02-21 18:19:02 +08:00
@ElogTransform( name = "其他免税扣除")
2024-09-20 16:45:35 +08:00
@Auth(page = "otherDeduction")
2022-03-10 17:57:46 +08:00
public class OtherDeductionPO {
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
* 主键
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "主键id")
2022-03-10 17:57:46 +08:00
private Long id;
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
* 人员信息表的主键id
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "人员id")
2022-03-10 17:57:46 +08:00
private Long employeeId;
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
* 个税扣缴义务人的主键id
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "个税扣缴义务人id")
2022-03-10 17:57:46 +08:00
private Long taxAgentId;
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
2022-04-21 20:29:11 +08:00
* 申报月份
2022-03-10 17:57:46 +08:00
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "税款所属期")
2022-03-10 17:57:46 +08:00
private Date declareMonth;
2022-04-21 20:29:11 +08:00
/**
* 免税收入
*/
@ElogTransform(name = "免税收入")
@SalaryFormulaVar(defaultLabel = "免税收入", labelId = 91238, dataType = "number")
@Encrypt
private String freeIncome;
2024-12-17 14:05:05 +08:00
/**
* 减免税额
*/
@ElogTransform(name = "减免税额")
@SalaryFormulaVar(defaultLabel = "减免税额", labelId = 102810, dataType = "number")
@Encrypt
private String derateDeduction;
2022-03-10 17:57:46 +08:00
/**
* 商业健康保险
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "商业健康保险")
2022-04-21 20:29:11 +08:00
@SalaryFormulaVar(defaultLabel = "商业健康保险", labelId = 91238, dataType = "number")
@Encrypt
2022-03-10 17:57:46 +08:00
private String businessHealthyInsurance;
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
* 税延养老保险
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "税延养老保险")
2022-04-21 20:29:11 +08:00
@SalaryFormulaVar(defaultLabel = "税延养老保险", labelId = 91239, dataType = "number")
@Encrypt
2022-03-10 17:57:46 +08:00
private String taxDelayEndowmentInsurance;
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
* 其他
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "其他")
2022-04-21 20:29:11 +08:00
@SalaryFormulaVar(defaultLabel = "其他", labelId = 84500, dataType = "number")
@Encrypt
2022-03-10 17:57:46 +08:00
private String otherDeduction;
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
* 准予扣除的捐赠额
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "准予扣除的捐赠额")
2022-04-21 20:29:11 +08:00
@SalaryFormulaVar(defaultLabel = "准予扣除的捐赠额", labelId = 91240, dataType = "number")
@Encrypt
2022-03-10 17:57:46 +08:00
private String deductionAllowedDonation;
2022-04-21 20:29:11 +08:00
2023-04-04 14:21:25 +08:00
/**
* 个人养老金
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "个人养老金")
2023-04-04 14:21:25 +08:00
@SalaryFormulaVar(defaultLabel = "个人养老金", labelId = 91240, dataType = "number")
@Encrypt
private String privatePension;
2022-03-10 17:57:46 +08:00
/**
* 创建时间
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "创建时间")
2022-03-10 17:57:46 +08:00
private Date createTime;
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
* 更新时间
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "更新时间")
2022-03-10 17:57:46 +08:00
private Date updateTime;
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
* 创建人
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "创建人id")
2022-03-10 17:57:46 +08:00
private Long creator;
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
* 是否已删除0未删除1已删除
*/
private Integer deleteType;
2022-04-21 20:29:11 +08:00
2022-03-10 17:57:46 +08:00
/**
* 租户ID
*/
2024-12-25 16:28:21 +08:00
@ElogTransform(name = "租户")
2022-03-10 17:57:46 +08:00
private String tenantKey;
private List<Long> employeeIds;
2022-04-21 14:15:56 +08:00
private Collection<Long> taxAgentIds;
2025-07-02 20:02:05 +08:00
private Integer incomeCategory;
2022-03-10 17:57:46 +08:00
2024-12-19 10:46:04 +08:00
2024-12-19 09:53:56 +08:00
private List<FreeIncomePO> freeIncomeList;
2024-12-25 16:28:21 +08:00
private List<HealthInsurancePO> healthInsuranceList;
2024-12-19 10:46:04 +08:00
private List<EndowmentInsurancePO> endowmentInsuranceList;
private List<GrantDonationPO> grantDonationList;
2024-12-25 16:28:21 +08:00
private List<DerateDeductionPO> derateDeductionList;
2024-12-19 10:46:04 +08:00
private List<OtherDerateDeductionPO> otherDerateDeductionList;
2024-12-23 16:41:42 +08:00
private List<PersonalPensionPO> personalPensionList;
2024-12-19 09:53:56 +08:00
2024-12-25 16:28:21 +08:00
public void handleList() {
freeIncome = freeIncomeList
.stream()
.map(FreeIncomePO::getFreeAmount)
.filter(NumberUtil::isNumber)
.mapToDouble(Double::valueOf)
.sum() + "";
derateDeduction = derateDeductionList
.stream()
.map(DerateDeductionPO::getDerateAmount)
.filter(NumberUtil::isNumber)
.mapToDouble(Double::valueOf)
.sum() + "";
taxDelayEndowmentInsurance = endowmentInsuranceList
.stream()
.map(EndowmentInsurancePO::getCurrentDeduction)
.filter(NumberUtil::isNumber)
.mapToDouble(Double::valueOf)
.sum() + "";
deductionAllowedDonation = grantDonationList
.stream()
.map(GrantDonationPO::getActualDeduction)
.filter(NumberUtil::isNumber)
.mapToDouble(Double::valueOf)
.sum() + "";
businessHealthyInsurance = healthInsuranceList
.stream()
.map(HealthInsurancePO::getCurrentDeduction)
.filter(NumberUtil::isNumber)
.mapToDouble(Double::valueOf)
.sum() + "";
otherDeduction = otherDerateDeductionList
.stream()
.map(OtherDerateDeductionPO::getOtherDeduction)
.filter(NumberUtil::isNumber)
.mapToDouble(Double::valueOf)
.sum() + "";
privatePension = personalPensionList
.stream()
.map(PersonalPensionPO::getPayAmount)
.filter(NumberUtil::isNumber)
.mapToDouble(Double::valueOf)
.sum() + "";
}
2022-03-10 17:57:46 +08:00
}