| | |
| | | import com.ruoyi.framework.web.domain.AjaxResult; |
| | | import com.ruoyi.project.system.mapper.SysUserDeptMapper; |
| | | import com.ruoyi.staff.dto.CalculateSalaryDto; |
| | | import com.ruoyi.staff.dto.StaffSalaryCalculateDto; |
| | | import com.ruoyi.staff.mapper.StaffLeaveMapper; |
| | | import com.ruoyi.staff.mapper.StaffSalaryDetailMapper; |
| | | import com.ruoyi.staff.mapper.StaffSalaryMainMapper; |
| | |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | |
| | | staffSalaryMainLambdaQueryWrapper.eq(StaffSalaryMain::getStatus, staffSalaryMain.getStatus()); |
| | | } |
| | | } |
| | | staffSalaryMainLambdaQueryWrapper.orderByDesc(StaffSalaryMain::getId); |
| | | Page<StaffSalaryMain> page1 = staffSalaryMainMapper.selectPage(page, staffSalaryMainLambdaQueryWrapper); |
| | | page1.getRecords().forEach(main -> { |
| | | List<StaffSalaryDetail> staffSalaryDetailList = staffSalaryDetailMapper.selectList(new LambdaQueryWrapper<StaffSalaryDetail>().eq(StaffSalaryDetail::getMainId, main.getId())); |
| | |
| | | return AjaxResult.success(mapList); |
| | | } |
| | | |
| | | @Override |
| | | public AjaxResult calculateSalaryByEmployee(StaffSalaryCalculateDto staffSalaryCalculateDto) { |
| | | if (staffSalaryCalculateDto == null |
| | | || staffSalaryCalculateDto.getStaffOnJobId() == null |
| | | || StringUtils.isEmpty(staffSalaryCalculateDto.getSalaryMonth())) { |
| | | return AjaxResult.error("参数错误"); |
| | | } |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("id", staffSalaryCalculateDto.getStaffOnJobId()); |
| | | map.put("staffOnJobId", staffSalaryCalculateDto.getStaffOnJobId()); |
| | | map.put("salaryMonth", staffSalaryCalculateDto.getSalaryMonth()); |
| | | map.put("staffName", staffSalaryCalculateDto.getStaffName()); |
| | | map.put("postName", staffSalaryCalculateDto.getPostName()); |
| | | map.put("deptName", staffSalaryCalculateDto.getDeptName()); |
| | | if (staffSalaryCalculateDto.getBasicSalary() != null) { |
| | | map.put("basicSalary", staffSalaryCalculateDto.getBasicSalary()); |
| | | } |
| | | map.put("pieceSalary", staffSalaryCalculateDto.getPieceSalary()); |
| | | map.put("hourlySalary", staffSalaryCalculateDto.getHourlySalary()); |
| | | map.put("otherIncome", staffSalaryCalculateDto.getOtherIncome()); |
| | | map.put("socialPersonal", staffSalaryCalculateDto.getSocialPersonal()); |
| | | map.put("fundPersonal", staffSalaryCalculateDto.getFundPersonal()); |
| | | map.put("otherDeduct", staffSalaryCalculateDto.getOtherDeduct()); |
| | | map.put("socialSupplementAmount", staffSalaryCalculateDto.getSocialSupplementAmount()); |
| | | map.put("salaryTax", staffSalaryCalculateDto.getSalaryTax()); |
| | | map.put("grossSalary", staffSalaryCalculateDto.getGrossSalary()); |
| | | map.put("deductSalary", staffSalaryCalculateDto.getDeductSalary()); |
| | | map.put("netSalary", staffSalaryCalculateDto.getNetSalary()); |
| | | map.put("remark", staffSalaryCalculateDto.getRemark()); |
| | | schemeApplicableStaffService.calculateByEmployeeId( |
| | | staffSalaryCalculateDto.getStaffOnJobId().intValue(), |
| | | map, |
| | | staffSalaryCalculateDto.getSalaryMonth() |
| | | ); |
| | | return AjaxResult.success(map); |
| | | } |
| | | |
| | | public List<Map<String, Object>> setSchemeApplicableStaffUserInfo(List<Long> ids) { |
| | | if(CollectionUtils.isEmpty(ids)){ |
| | | return new ArrayList<>(); |