| | |
| | | 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 calculateSalaryCalculateDto) { |
| | | if (calculateSalaryCalculateDto == null || calculateSalaryCalculateDto.getStaffOnJobId() == null |
| | | || StringUtils.isEmpty(calculateSalaryCalculateDto.getSalaryMonth())) { |
| | | return AjaxResult.error("参数错误"); |
| | | } |
| | | Map<String, Object> result = new HashMap<>(); |
| | | result.put("id", calculateSalaryCalculateDto.getStaffOnJobId().intValue()); |
| | | result.put("staffOnJobId", calculateSalaryCalculateDto.getStaffOnJobId()); |
| | | result.put("basicSalary", calculateSalaryCalculateDto.getBasicSalary()); |
| | | result.put("dayDays", calculateSalaryCalculateDto.getDayDays()); |
| | | result.put("nightDays", calculateSalaryCalculateDto.getNightDays()); |
| | | result.put("pieceSalary", calculateSalaryCalculateDto.getPieceSalary()); |
| | | result.put("hourlySalary", calculateSalaryCalculateDto.getHourlySalary()); |
| | | result.put("otherIncome", calculateSalaryCalculateDto.getOtherIncome()); |
| | | result.put("otherDeduct", calculateSalaryCalculateDto.getOtherDeduct()); |
| | | result.put("socialPersonal", calculateSalaryCalculateDto.getSocialPersonal()); |
| | | result.put("fundPersonal", calculateSalaryCalculateDto.getFundPersonal()); |
| | | result.put("socialSupplementAmount", calculateSalaryCalculateDto.getSocialSupplementAmount()); |
| | | result.put("salaryTax", calculateSalaryCalculateDto.getSalaryTax()); |
| | | result.put("grossSalary", calculateSalaryCalculateDto.getGrossSalary()); |
| | | result.put("deductSalary", calculateSalaryCalculateDto.getDeductSalary()); |
| | | result.put("netSalary", calculateSalaryCalculateDto.getNetSalary()); |
| | | result.put("remark", calculateSalaryCalculateDto.getRemark()); |
| | | result.put("salaryMonth", calculateSalaryCalculateDto.getSalaryMonth()); |
| | | schemeApplicableStaffService.calculateByEmployeeId( |
| | | calculateSalaryCalculateDto.getStaffOnJobId().intValue(), |
| | | result, |
| | | calculateSalaryCalculateDto.getSalaryMonth() |
| | | ); |
| | | return AjaxResult.success(result); |
| | | } |
| | | |
| | | public List<Map<String, Object>> setSchemeApplicableStaffUserInfo(List<Long> ids) { |
| | | if(CollectionUtils.isEmpty(ids)){ |
| | | return new ArrayList<>(); |