From 90622c0e0bdf651e48311df0da56da0aa6ffa286 Mon Sep 17 00:00:00 2001 From: andy <1042025947@qq.com> Date: Thu, 16 Apr 2026 14:25:05 +0800 Subject: [PATCH] 1 --- .../evo/attendance/domain/vo/RzSalaryVo.java | 2 ++ .../com/evo/finance/domain/vo/SalaryVo.java | 3 ++- .../impl/RzSalaryDetailServiceImpl.java | 19 +++++++++++++++---- .../impl/RzLeaveDetailServiceImpl.java | 10 +++++++++- .../service/impl/SysStaffServiceImpl.java | 16 ++++++++-------- 5 files changed, 36 insertions(+), 14 deletions(-) diff --git a/evo-admin/src/main/java/com/evo/attendance/domain/vo/RzSalaryVo.java b/evo-admin/src/main/java/com/evo/attendance/domain/vo/RzSalaryVo.java index 7d66562..dd470b5 100644 --- a/evo-admin/src/main/java/com/evo/attendance/domain/vo/RzSalaryVo.java +++ b/evo-admin/src/main/java/com/evo/attendance/domain/vo/RzSalaryVo.java @@ -15,6 +15,8 @@ public class RzSalaryVo { @Excel(name = "姓名") private String name; + @Excel(name = "身份证号") + private String idCard; @Excel(name = "提成金额") private BigDecimal sale; @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM") diff --git a/evo-admin/src/main/java/com/evo/finance/domain/vo/SalaryVo.java b/evo-admin/src/main/java/com/evo/finance/domain/vo/SalaryVo.java index 17aed3e..fc859fa 100644 --- a/evo-admin/src/main/java/com/evo/finance/domain/vo/SalaryVo.java +++ b/evo-admin/src/main/java/com/evo/finance/domain/vo/SalaryVo.java @@ -3,10 +3,11 @@ package com.evo.finance.domain.vo; import com.evo.common.annotation.Excel; import lombok.Data; +import java.io.Serializable; import java.math.BigDecimal; @Data -public class SalaryVo { +public class SalaryVo implements Serializable { @Excel(name = "序号") private Integer seqNo; diff --git a/evo-admin/src/main/java/com/evo/finance/service/impl/RzSalaryDetailServiceImpl.java b/evo-admin/src/main/java/com/evo/finance/service/impl/RzSalaryDetailServiceImpl.java index 2678d9b..87e2e16 100644 --- a/evo-admin/src/main/java/com/evo/finance/service/impl/RzSalaryDetailServiceImpl.java +++ b/evo-admin/src/main/java/com/evo/finance/service/impl/RzSalaryDetailServiceImpl.java @@ -292,7 +292,13 @@ public class RzSalaryDetailServiceImpl extends ServiceImpl sortList = dataList.stream().sorted((x,y) -> {return x.getDeptName().compareTo(y.getDeptName()); }).collect(Collectors.toList()); sortList.add(hjResult); - companyLists.add(sortList); + List ewSalaryVoList = Collections.emptyList(); + for (SalaryVo salaryVo : sortList){ + SalaryVo allResult = new SalaryVo(); + BeanUtils.copyProperties(salaryVo,allResult); + ewSalaryVoList.add(allResult); + } + companyLists.add(ewSalaryVoList); }else{ SalaryVo result = sumSalaryVo(dataList); result.setDeptName(sheetCompanyName+"总计"); @@ -320,13 +326,18 @@ public class RzSalaryDetailServiceImpl extends ServiceImpl{ + for (List dataList : companyLists){ int x = 1; for (SalaryVo salaryVo : dataList){ salaryVo.setSeqNo(x++); } - }); + } +// companyLists.stream().forEach(dataList ->{ +// int x = 1; +// for (SalaryVo salaryVo : dataList){ +// salaryVo.setSeqNo(x++); +// } +// }); return util.exportExcel(allList,companyLists,"总表", allSheetNames, new SimpleDateFormat("yyyy-MM").format(rzSalaryDetail.getMonth())+"月工资", "制表: "+"审核: "+"经理签字: "+"总经理签字:"); diff --git a/evo-admin/src/main/java/com/evo/personnelMatters/service/impl/RzLeaveDetailServiceImpl.java b/evo-admin/src/main/java/com/evo/personnelMatters/service/impl/RzLeaveDetailServiceImpl.java index df63f39..e57cf8d 100644 --- a/evo-admin/src/main/java/com/evo/personnelMatters/service/impl/RzLeaveDetailServiceImpl.java +++ b/evo-admin/src/main/java/com/evo/personnelMatters/service/impl/RzLeaveDetailServiceImpl.java @@ -335,6 +335,7 @@ public class RzLeaveDetailServiceImpl extends ServiceImpl holidays = Collections.findDuplicatesList(ParamUtils.getHoliddayList(Integer.valueOf(year), 2), holidayDates); + //现有工作时长, 需要减去公休时长 + wordDays = new BigDecimal(wordDays).subtract(new BigDecimal(holidays.size())).intValue(); + } } //计算结束时间和请假时长 此处使用beginDate 而不使用rzLeaveDetail.getLeaveStartTime() 的原因是, 上面获取全部请假日期的时候, 已经处理过时间, 只需要增加公休,法休时间就可以了 rzLeaveDetail.setLeaveEndTime(DateUtils.addDays(beginDate, endDays)); - rzLeaveDetail.setLeaveHour(new BigDecimal(sysDictData.getDictValue()).multiply(Constants.DAY_WORK_HOUR).intValue()); + rzLeaveDetail.setLeaveHour(new BigDecimal(wordDays).multiply(Constants.DAY_WORK_HOUR).intValue()); }else{ rzLeaveDetail = leaveHour(rzLeaveDetail); // //不需要计算, 过滤节假日啥的, 只过滤周末就好了 diff --git a/evo-admin/src/main/java/com/evo/system/service/impl/SysStaffServiceImpl.java b/evo-admin/src/main/java/com/evo/system/service/impl/SysStaffServiceImpl.java index 4e19e43..f7b6c26 100644 --- a/evo-admin/src/main/java/com/evo/system/service/impl/SysStaffServiceImpl.java +++ b/evo-admin/src/main/java/com/evo/system/service/impl/SysStaffServiceImpl.java @@ -758,13 +758,13 @@ public class SysStaffServiceImpl extends ServiceImpl i @Override public AjaxResult importSalesCommissions(List attendanceList) { // 获取销售部门信息 - SysDept sysDept = deptMapper.selectOne(new LambdaQueryWrapper() - .eq(SysDept::getDelFlag, Constants.DELETE_FLAG_0) - .eq(SysDept::getDeptName, "销售部")); - - if (sysDept == null) { - return AjaxResult.error("销售部门未找到,请确认部门是否存在且未被删除!"); - } +// SysDept sysDept = deptMapper.selectOne(new LambdaQueryWrapper() +// .eq(SysDept::getDelFlag, Constants.DELETE_FLAG_0) +// .eq(SysDept::getDeptName, "销售部")); +// +// if (sysDept == null) { +// return AjaxResult.error("销售部门未找到,请确认部门是否存在且未被删除!"); +// } sysStaffDetailMapper.resetSalesCommission(); @@ -775,7 +775,7 @@ public class SysStaffServiceImpl extends ServiceImpl i // 直接根据姓名和部门ID查询员工信息 SysStaff sysStaff = getBaseMapper().selectOne(new LambdaQueryWrapper() .eq(SysStaff::getName, rzSalaryVo.getName()) - .eq(SysStaff::getDeptId, sysDept.getDeptId()) + .eq(SysStaff::getIdCard, rzSalaryVo.getIdCard()) .eq(SysStaff::getDelFlag, Constants.DELETE_FLAG_0)); if (sysStaff != null) {