From b6f0c4a0b3f55c1815fd53099d77ae9b25d8f64a Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Wed, 29 Nov 2023 15:18:20 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E6=B5=B7=E6=B8=AF=E6=B9=BE=20?= =?UTF-8?q?=E4=B8=8B=E7=BA=A7=E5=B7=A5=E8=B5=84=E5=8D=95=E6=A0=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/salaryBill/dto/SalaryMySalaryBillListDTO.java | 4 ++++ .../salary/mapper/salarybill/SalarySendInfoMapper.xml | 3 ++- .../salary/service/impl/SalarySendServiceImpl.java | 4 ++++ src/com/engine/salary/wrapper/SalarySendWrapper.java | 9 +++++---- 4 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/com/engine/salary/entity/salaryBill/dto/SalaryMySalaryBillListDTO.java b/src/com/engine/salary/entity/salaryBill/dto/SalaryMySalaryBillListDTO.java index 359e40ee7..e5259a141 100644 --- a/src/com/engine/salary/entity/salaryBill/dto/SalaryMySalaryBillListDTO.java +++ b/src/com/engine/salary/entity/salaryBill/dto/SalaryMySalaryBillListDTO.java @@ -61,5 +61,9 @@ public class SalaryMySalaryBillListDTO { private String userName; + private Long managerId; + + private String managerName; + } diff --git a/src/com/engine/salary/mapper/salarybill/SalarySendInfoMapper.xml b/src/com/engine/salary/mapper/salarybill/SalarySendInfoMapper.xml index 49e8c719f..8ba6d8720 100644 --- a/src/com/engine/salary/mapper/salarybill/SalarySendInfoMapper.xml +++ b/src/com/engine/salary/mapper/salarybill/SalarySendInfoMapper.xml @@ -581,7 +581,8 @@ t3.acct_times, t1.send_time, t1.send_status, - h.lastname as userName + h.lastname as userName, + h.MANAGERId as managerId FROM hrsa_salary_send_info t1 LEFT JOIN hrsa_tax_agent t2 ON t2.id = t1.tax_agent_id diff --git a/src/com/engine/salary/service/impl/SalarySendServiceImpl.java b/src/com/engine/salary/service/impl/SalarySendServiceImpl.java index 8a9aa4976..e1017cb6c 100644 --- a/src/com/engine/salary/service/impl/SalarySendServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalarySendServiceImpl.java @@ -751,6 +751,10 @@ public class SalarySendServiceImpl extends Service implements SalarySendService queryParam.setStartSalaryMonth(getLimitMonth()); List list = salarySendInfoMapper.mySalaryBillList(queryParam); + // 封装直接上级名字 + List managerEmployees = getSalaryEmployeeService(user).listByIds(list.stream().map(SalaryMySalaryBillListDTO::getManagerId).distinct().collect(Collectors.toList())); + Map managerMap = SalaryEntityUtil.convert2Map(managerEmployees, DataCollectionEmployee::getEmployeeId, DataCollectionEmployee::getUsername); + list.stream().forEach(dto -> dto.setManagerName(managerMap.getOrDefault(ObjectUtils.isEmpty(dto.getManagerId()) ? -1L : dto.getManagerId(), ""))); PageInfo pageInfo = new PageInfo<>(list, SalaryMySalaryBillListDTO.class); pageInfo.setTotal(list.size()); diff --git a/src/com/engine/salary/wrapper/SalarySendWrapper.java b/src/com/engine/salary/wrapper/SalarySendWrapper.java index c1d1cb7af..24c51605b 100644 --- a/src/com/engine/salary/wrapper/SalarySendWrapper.java +++ b/src/com/engine/salary/wrapper/SalarySendWrapper.java @@ -579,7 +579,7 @@ public class SalarySendWrapper extends Service implements SalarySendWrapperProxy */ public Map mySalaryBillList(SalaryBillQueryParam queryParam) { Map datas = new HashMap<>(); - if (ObjectUtil.isNotEmpty(queryParam.getEmployeeId())) { + if (ObjectUtil.isNotEmpty(queryParam.getEmployeeId()) && user.getUID()!= queryParam.getEmployeeId().intValue()) { // 判断是否是下属 Set juniorEmpIds = myJuniorMap(Long.valueOf(user.getUID())).keySet(); if (!juniorEmpIds.contains(queryParam.getEmployeeId())) { @@ -633,9 +633,10 @@ public class SalarySendWrapper extends Service implements SalarySendWrapperProxy WeaTableColumn idColumn = new WeaTableColumn("0px", "id", "id"); idColumn.setDisplay(WeaBoolAttr.TRUE); list.add(new WeaTableColumn("20%", "薪资所属月", "salaryYearMonth")); - list.add(new WeaTableColumn("40%", "个税扣缴义务人", "taxAgent")); - list.add(new WeaTableColumn("40%", "姓名", "userName")); - list.add(new WeaTableColumn("40%", "发放时间", "sendTime")); + list.add(new WeaTableColumn("20%", "个税扣缴义务人", "taxAgent")); + list.add(new WeaTableColumn("20%", "姓名", "userName")); + list.add(new WeaTableColumn("20%", "直接上级", "managerName")); + list.add(new WeaTableColumn("20%", "发放时间", "sendTime")); return list; }