钱智报表开发

This commit is contained in:
dxfeng 2025-12-16 15:31:31 +08:00
parent c1492e748b
commit 2ac44c61d7
4 changed files with 44 additions and 16 deletions

View File

@ -66,6 +66,8 @@ public class QzSalaryReportBO {
.salaryReimbursement(po.stream().mapToDouble(QzSalaryReportDTO::getSalaryReimbursement).sum())
.totalActualPaymentIncome(po.stream().mapToDouble(QzSalaryReportDTO::getTotalActualPaymentIncome).sum())
.totalCompanyCost(po.stream().mapToDouble(QzSalaryReportDTO::getTotalCompanyCost).sum())
.taxPrepaidBalance(po.stream().mapToDouble(QzSalaryReportDTO::getTaxPrepaidBalance).sum())
.afterTaxBalance(po.stream().mapToDouble(QzSalaryReportDTO::getAfterTaxBalance).sum())
.build();
}
@ -117,6 +119,8 @@ public class QzSalaryReportBO {
.salaryReimbursement(po.stream().mapToDouble(QzSalaryReportPO::getSalaryReimbursement).sum())
.totalActualPaymentIncome(po.stream().mapToDouble(QzSalaryReportPO::getTotalActualPaymentIncome).sum())
.totalCompanyCost(po.stream().mapToDouble(QzSalaryReportPO::getTotalCompanyCost).sum())
.taxPrepaidBalance(po.stream().mapToDouble(QzSalaryReportPO::getTaxPrepaidBalance).sum())
.afterTaxBalance(po.stream().mapToDouble(QzSalaryReportPO::getAfterTaxBalance).sum())
.build();
}
@ -179,6 +183,8 @@ public class QzSalaryReportBO {
.salaryReimbursement(Math.round(po.getSalaryReimbursement() * ratio * 100.0) / 100.0)
.totalActualPaymentIncome(Math.round(po.getTotalActualPaymentIncome() * ratio * 100.0) / 100.0)
.totalCompanyCost(Math.round(po.getTotalCompanyCost() * ratio * 100.0) / 100.0)
.taxPrepaidBalance(Math.round(po.getTaxPrepaidBalance() * ratio * 100.0) / 100.0)
.afterTaxBalance(Math.round(po.getAfterTaxBalance() * ratio * 100.0) / 100.0)
.build();
}

View File

@ -115,6 +115,10 @@ public class QzSalaryReportDTO {
* 小计
*/
private Double subtotal;
/**
* 税前补差
*/
private Double taxPrepaidBalance;
/**
* 应发工资
*/
@ -139,6 +143,10 @@ public class QzSalaryReportDTO {
* 解聘补偿
*/
private Double dismissalCompensation;
/**
* 税后补差
*/
private Double afterTaxBalance;
/**
* 税后工资
*/

View File

@ -103,6 +103,10 @@ public class QzSalaryReportPO {
* 小计
*/
private Double subtotal;
/**
* 税前补差
*/
private Double taxPrepaidBalance;
/**
* 应发工资
*/
@ -127,6 +131,10 @@ public class QzSalaryReportPO {
* 解聘补偿
*/
private Double dismissalCompensation;
/**
* 税后补差
*/
private Double afterTaxBalance;
/**
* 税后工资
*/

View File

@ -166,47 +166,51 @@ public class QzSalaryReportServiceImpl extends Service implements QzSalaryReport
*/
private static void buildSalaryReportPO(QzSalaryReportPO po, Map<String, String> salaryItemMap) {
po.setBasicSalary(po.getBasicSalary() + Convert.toDouble(salaryItemMap.get("基本工资"), 0.0));
po.setPostAllowance(po.getPostAllowance() + Convert.toDouble(salaryItemMap.get("岗位津贴"), 0.0));
po.setPerformanceBonus(po.getPerformanceBonus() + Convert.toDouble(salaryItemMap.get("绩效奖金"), 0.0));
po.setPostAllowance(po.getPostAllowance() + Convert.toDouble(salaryItemMap.get("岗位工资"), 0.0));
po.setPerformanceBonus(po.getPerformanceBonus() + Convert.toDouble(salaryItemMap.get("绩效工资"), 0.0));
po.setFullAttendanceSalary(po.getFullAttendanceSalary() + Convert.toDouble(salaryItemMap.get("全勤工资"), 0.0));
po.setMonthStandardSalary(po.getMonthStandardSalary() + Convert.toDouble(salaryItemMap.get("度标准工资"), 0.0));
po.setMonthStandardSalary(po.getMonthStandardSalary() + Convert.toDouble(salaryItemMap.get("工资标准"), 0.0));
po.setWorkdays(po.getWorkdays() + Convert.toInt(salaryItemMap.get("应出勤天数"), 0));
po.setActualMonthSalary(po.getActualMonthSalary() + Convert.toDouble(salaryItemMap.get("实际月薪"), 0.0));
po.setSubsidy(po.getSubsidy() + Convert.toDouble(salaryItemMap.get("补贴"), 0.0));
po.setCommission(po.getCommission() + Convert.toDouble(salaryItemMap.get("提成"), 0.0));
po.setBonus(po.getBonus() + Convert.toDouble(salaryItemMap.get("奖金"), 0.0));
po.setPerformanceAssessment(po.getPerformanceAssessment() + Convert.toDouble(salaryItemMap.get("绩效考核"), 0.0));
po.setCommissionReserveReturn(po.getCommissionReserveReturn() + Convert.toDouble(salaryItemMap.get("提成预留返还"), 0.0));
po.setNotFullAttendanceDeduction(po.getNotFullAttendanceDeduction() + Convert.toDouble(salaryItemMap.get("全勤扣款"), 0.0));
po.setBalance(po.getBalance() + Convert.toDouble(salaryItemMap.get("补差"), 0.0));
po.setPerformanceAssessment(po.getPerformanceAssessment() + Convert.toDouble(salaryItemMap.get("绩效"), 0.0));
po.setCommissionReserveReturn(po.getCommissionReserveReturn() + Convert.toDouble(salaryItemMap.get("提成返还"), 0.0));
po.setNotFullAttendanceDeduction(po.getNotFullAttendanceDeduction() + Convert.toDouble(salaryItemMap.get("全勤扣款"), 0.0));
po.setBalance(po.getBalance() + Convert.toDouble(salaryItemMap.get("其他补差"), 0.0));
po.setLeaveDeduction(po.getLeaveDeduction() + Convert.toDouble(salaryItemMap.get("事假扣款"), 0.0));
po.setSickLeaveDeduction(po.getSickLeaveDeduction() + Convert.toDouble(salaryItemMap.get("病假扣款"), 0.0));
po.setAbsenteeismDeduction(po.getAbsenteeismDeduction() + Convert.toDouble(salaryItemMap.get("旷工扣款"), 0.0));
po.setCommissionReserve(po.getCommissionReserve() + Convert.toDouble(salaryItemMap.get("提成预留"), 0.0));
po.setExternalRefund(po.getExternalRefund() + Convert.toDouble(salaryItemMap.get("退费"), 0.0));
po.setExternalRefund(po.getExternalRefund() + Convert.toDouble(salaryItemMap.get("退费"), 0.0));
po.setOtherDeduction(po.getOtherDeduction() + Convert.toDouble(salaryItemMap.get("其他扣款"), 0.0));
po.setLastMonthArrears(po.getLastMonthArrears() + Convert.toDouble(salaryItemMap.get("上月欠款"), 0.0));
po.setSubtotal(po.getSubtotal() + Convert.toDouble(salaryItemMap.get("小计"), 0.0));
po.setSubtotal(po.getSubtotal() + Convert.toDouble(salaryItemMap.get("应发工资"), 0.0));
// 税前补差
po.setTaxPrepaidBalance(po.getTaxPrepaidBalance() + Convert.toDouble(salaryItemMap.get("税前补差"), 0.0));
po.setPayableSalary(po.getPayableSalary() + Convert.toDouble(salaryItemMap.get("应发工资"), 0.0));
po.setSocialInsurancePaymentSum(po.getSocialInsurancePaymentSum() + Convert.toDouble(salaryItemMap.get("个人社保缴纳合计"), 0.0));
po.setPersonalFundPaymentSum(po.getPersonalFundPaymentSum() + Convert.toDouble(salaryItemMap.get("个人公积金缴纳合计"), 0.0));
po.setTaxableSalary(po.getTaxableSalary() + Convert.toDouble(salaryItemMap.get("税前工资"), 0.0));
po.setThisTimeDeductionTax(po.getThisTimeDeductionTax() + Convert.toDouble(salaryItemMap.get("本次代扣税"), 0.0));
po.setDismissalCompensation(po.getDismissalCompensation() + Convert.toDouble(salaryItemMap.get("解聘补偿"), 0.0));
po.setThisTimeDeductionTax(po.getThisTimeDeductionTax() + Convert.toDouble(salaryItemMap.get("本月(次)应补税额"), 0.0));
po.setDismissalCompensation(po.getDismissalCompensation() + Convert.toDouble(salaryItemMap.get("经济补偿金"), 0.0));
// 税后补差
po.setAfterTaxBalance(po.getAfterTaxBalance() + Convert.toDouble(salaryItemMap.get("税后补差"), 0.0));
po.setAfterTaxSalary(po.getAfterTaxSalary() + Convert.toDouble(salaryItemMap.get("税后工资"), 0.0));
po.setActualPaymentSum(po.getActualPaymentSum() + Convert.toDouble(salaryItemMap.get("实发合计(工资代发)"), 0.0));
po.setActualPaymentSum(po.getActualPaymentSum() + Convert.toDouble(salaryItemMap.get("本月(次)实发薪资合计"), 0.0));
po.setPersonalArrears(po.getPersonalArrears() + Convert.toDouble(salaryItemMap.get("个人欠款"), 0.0));
po.setBusinessDepartmentYearPerformance(po.getBusinessDepartmentYearPerformance() + Convert.toDouble(salaryItemMap.get("业务部门年度绩效"), 0.0));
po.setAnnualEndowmentSum(po.getAnnualEndowmentSum() + Convert.toDouble(salaryItemMap.get("年终奖合计"), 0.0));
po.setBusinessDepartmentYearPerformance(po.getBusinessDepartmentYearPerformance() + Convert.toDouble(salaryItemMap.get("业务部门年度绩效分摊"), 0.0));
po.setAnnualEndowmentSum(po.getAnnualEndowmentSum() + Convert.toDouble(salaryItemMap.get("年终分摊"), 0.0));
po.setCompanySocialInsurancePaymentSum(po.getCompanySocialInsurancePaymentSum() + Convert.toDouble(salaryItemMap.get("单位社保缴纳合计"), 0.0));
po.setCompanyFundPaymentSum(po.getCompanyFundPaymentSum() + Convert.toDouble(salaryItemMap.get("单位公积金缴纳合计"), 0.0));
po.setArchiveManagementFee(po.getArchiveManagementFee() + Convert.toDouble(salaryItemMap.get("档案管理费"), 0.0));
po.setArchiveManagementFeeRepayment(po.getArchiveManagementFeeRepayment() + Convert.toDouble(salaryItemMap.get("档案管理费补缴"), 0.0));
po.setServiceFee(po.getServiceFee() + Convert.toDouble(salaryItemMap.get("服务费"), 0.0));
po.setServiceFeeRepayment(po.getServiceFeeRepayment() + Convert.toDouble(salaryItemMap.get("服务费补缴"), 0.0));
po.setServiceFeeRepayment(po.getServiceFeeRepayment() + Convert.toDouble(salaryItemMap.get("服务费"), 0.0));
po.setCompanyMonthlyPaymentSum(po.getCompanyMonthlyPaymentSum() + Convert.toDouble(salaryItemMap.get("单位月缴纳合计"), 0.0));
po.setCompanyTotalCost(po.getCompanyTotalCost() + Convert.toDouble(salaryItemMap.get("公司总成本"), 0.0));
po.setSalaryReimbursement(po.getSalaryReimbursement() + Convert.toDouble(salaryItemMap.get("工资走报销"), 0.0));
po.setSalaryReimbursement(po.getSalaryReimbursement() + Convert.toDouble(salaryItemMap.get("其他扣款"), 0.0));
po.setTotalActualPaymentIncome(po.getTotalActualPaymentIncome() + Convert.toDouble(salaryItemMap.get("员工实发总收入(含报销)"), 0.0));
po.setTotalCompanyCost(po.getTotalCompanyCost() + Convert.toDouble(salaryItemMap.get("公司总成本(含报销)"), 0.0));
}
@ -311,12 +315,14 @@ public class QzSalaryReportServiceImpl extends Service implements QzSalaryReport
result.add(new WeaTableColumnGroup("150", "其他扣款", "otherDeduction"));
result.add(new WeaTableColumnGroup("150", "上月欠款", "lastMonthArrears"));
result.add(new WeaTableColumnGroup("150", "小计", "subtotal"));
result.add(new WeaTableColumnGroup("150", "税前补差", "taxPrepaidBalance"));
result.add(new WeaTableColumnGroup("150", "应发工资", "payableSalary"));
result.add(new WeaTableColumnGroup("150", "个人社保缴纳合计", "socialInsurancePaymentSum"));
result.add(new WeaTableColumnGroup("150", "个人公积金缴纳合计", "personalFundPaymentSum"));
result.add(new WeaTableColumnGroup("150", "税前工资", "taxableSalary"));
result.add(new WeaTableColumnGroup("150", "本次代扣税", "thisTimeDeductionTax"));
result.add(new WeaTableColumnGroup("150", "解聘补偿", "dismissalCompensation"));
result.add(new WeaTableColumnGroup("150", "税后补差", "afterTaxBalance"));
result.add(new WeaTableColumnGroup("150", "税后工资", "afterTaxSalary"));
result.add(new WeaTableColumnGroup("150", "实发合计(工资代发)", "actualPaymentSum"));
result.add(new WeaTableColumnGroup("150", "个人欠款", "personalArrears"));