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; + } }