From 383f34804d597f8578799dbae1938824bca090ae Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Sat, 9 Aug 2025 14:14:43 +0800 Subject: [PATCH] =?UTF-8?q?feat(salary):=20=E6=B7=BB=E5=8A=A0=E6=89=B9?= =?UTF-8?q?=E9=87=8F=E5=8F=91=E6=94=BE=E8=96=AA=E8=B5=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 GearSalaryRecordsBo 中添加 employeeIds 字段用于存储员工 ID 数组 - 在 GearSalaryRecordsController 中添加 batchSendSalary 接口 - 在 GearSalaryRecordsServiceImpl 中实现 batchSendSalary 方法 - 在 IGearSalaryRecordsService 中添加 batchSendSalary 接口定义 --- .../GearSalaryRecordsController.java | 9 ++++++++ .../oa/domain/bo/GearSalaryRecordsBo.java | 5 +++- .../oa/service/IGearSalaryRecordsService.java | 2 ++ .../impl/GearSalaryRecordsServiceImpl.java | 23 +++++++++++++++++++ 4 files changed, 38 insertions(+), 1 deletion(-) diff --git a/gear-oa/src/main/java/com/gear/oa/controller/GearSalaryRecordsController.java b/gear-oa/src/main/java/com/gear/oa/controller/GearSalaryRecordsController.java index 28d1d72..d446027 100644 --- a/gear-oa/src/main/java/com/gear/oa/controller/GearSalaryRecordsController.java +++ b/gear-oa/src/main/java/com/gear/oa/controller/GearSalaryRecordsController.java @@ -99,4 +99,13 @@ public class GearSalaryRecordsController extends BaseController { @PathVariable Long[] salaryIds) { return toAjax(iGearSalaryRecordsService.deleteWithValidByIds(Arrays.asList(salaryIds), true)); } + + //批量发送薪资 + @Log(title = "批量发送薪资", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PostMapping("/batchSendSalary") + public R batchSendSalary(@Validated(EditGroup.class) @RequestBody GearSalaryRecordsBo bo) { + return toAjax(iGearSalaryRecordsService.batchSendSalary(bo)); + } + } diff --git a/gear-oa/src/main/java/com/gear/oa/domain/bo/GearSalaryRecordsBo.java b/gear-oa/src/main/java/com/gear/oa/domain/bo/GearSalaryRecordsBo.java index e40bbb2..ccc7b1f 100644 --- a/gear-oa/src/main/java/com/gear/oa/domain/bo/GearSalaryRecordsBo.java +++ b/gear-oa/src/main/java/com/gear/oa/domain/bo/GearSalaryRecordsBo.java @@ -10,6 +10,8 @@ import java.util.Date; import java.math.BigDecimal; import java.util.Date; +import java.util.List; + import com.fasterxml.jackson.annotation.JsonFormat; import com.gear.common.core.domain.BaseEntity; @@ -93,6 +95,7 @@ public class GearSalaryRecordsBo extends BaseEntity { * 发放状态 */ private String payStatus; - + //employee_id数组 + private List employeeIds; } diff --git a/gear-oa/src/main/java/com/gear/oa/service/IGearSalaryRecordsService.java b/gear-oa/src/main/java/com/gear/oa/service/IGearSalaryRecordsService.java index dec96ca..2862f19 100644 --- a/gear-oa/src/main/java/com/gear/oa/service/IGearSalaryRecordsService.java +++ b/gear-oa/src/main/java/com/gear/oa/service/IGearSalaryRecordsService.java @@ -46,4 +46,6 @@ public interface IGearSalaryRecordsService { * 校验并批量删除工资发放记录信息 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + int batchSendSalary(GearSalaryRecordsBo bo); } diff --git a/gear-oa/src/main/java/com/gear/oa/service/impl/GearSalaryRecordsServiceImpl.java b/gear-oa/src/main/java/com/gear/oa/service/impl/GearSalaryRecordsServiceImpl.java index 9910e64..b3cbd0c 100644 --- a/gear-oa/src/main/java/com/gear/oa/service/impl/GearSalaryRecordsServiceImpl.java +++ b/gear-oa/src/main/java/com/gear/oa/service/impl/GearSalaryRecordsServiceImpl.java @@ -140,4 +140,27 @@ public class GearSalaryRecordsServiceImpl implements IGearSalaryRecordsService { } return baseMapper.deleteBatchIds(ids) > 0; } + + @Override + public int batchSendSalary(GearSalaryRecordsBo bo) { + //从bo里面获取员工id以及时间和各种费用 + GearSalaryRecords gearSalaryRecords = new GearSalaryRecords(); + for (Long employeeId : bo.getEmployeeIds()){ + gearSalaryRecords.setEmployeeId(employeeId); + gearSalaryRecords.setPayPeriod(bo.getPayPeriod()); + gearSalaryRecords.setBaseSalary(bo.getBaseSalary()); + gearSalaryRecords.setPerformanceBonus(bo.getPerformanceBonus()); + gearSalaryRecords.setOvertimePay(bo.getOvertimePay()); + gearSalaryRecords.setAllowance(bo.getAllowance()); + gearSalaryRecords.setSocialSecurity(bo.getSocialSecurity()); + gearSalaryRecords.setHousingFund(bo.getHousingFund()); + gearSalaryRecords.setIncomeTax(bo.getIncomeTax()); + gearSalaryRecords.setGrossSalary(bo.getGrossSalary()); + gearSalaryRecords.setNetSalary(bo.getNetSalary()); + gearSalaryRecords.setPayStatus("paid"); // 默认设置为已支付 + baseMapper.insert(gearSalaryRecords); + } + + return 0; + } }