| | |
| | | package com.yuanchu.mom.service.impl; |
| | | |
| | | import com.alibaba.excel.EasyExcel; |
| | | import com.alibaba.excel.ExcelWriter; |
| | | import com.alibaba.excel.write.metadata.WriteSheet; |
| | | import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.yuanchu.mom.common.GetLook; |
| | | import com.yuanchu.mom.common.PrintChina; |
| | | import com.yuanchu.mom.dto.AuxiliaryCorrectionHoursDto; |
| | | import com.yuanchu.mom.dto.AuxiliaryOriginalHoursDto; |
| | | import com.yuanchu.mom.dto.AuxiliaryOriginalHoursLookDto; |
| | | import com.yuanchu.mom.dto.*; |
| | | import com.yuanchu.mom.mapper.*; |
| | | import com.yuanchu.mom.pojo.AuxiliaryCorrectionHours; |
| | | import com.yuanchu.mom.pojo.AuxiliaryOutputWorkingHours; |
| | | import com.yuanchu.mom.pojo.Power; |
| | | import com.yuanchu.mom.pojo.User; |
| | | import com.yuanchu.mom.service.AuxiliaryOriginalHoursService; |
| | | import com.yuanchu.mom.utils.QueryWrappers; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.io.IOException; |
| | | import java.net.URLEncoder; |
| | | import java.text.DecimalFormat; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | @Service |
| | |
| | | ids.clear(); |
| | | ids.add(userMapper.selectOne(Wrappers.<User>lambdaQuery().like(User::getName, name)).getId()); |
| | | } |
| | | if (ids.size() == 0) { |
| | | ids = null; |
| | | } |
| | | IPage<AuxiliaryOriginalHoursDto> originalHoursDtoIPage = new Page<>(); |
| | | originalHoursDtoIPage.setSize(page.getSize()); |
| | | originalHoursDtoIPage.setCurrent(page.getCurrent()); |
| | | List<AuxiliaryOriginalHoursDto> auxiliaryOriginalHoursDtos = new ArrayList<>(); |
| | | Map<String, AuxiliaryOriginalHoursDto> data1 = new HashMap<>(); |
| | | Map<String, AuxiliaryOriginalHoursDto> data2 = new HashMap<>(); |
| | | //产量工时 |
| | | List<Map<String, Object>> maps = auxiliaryOutputWorkingHoursMapper.totalHours(auxiliaryOriginalHoursLookDto.getMonth(), ids); |
| | | if (ObjectUtils.isNotEmpty(maps)) { |
| | | for (Map<String, Object> objectMap : maps) { |
| | | auxiliaryOriginalHoursDtos.add(getData(objectMap, "产量工时")); |
| | | } |
| | | |
| | | data1 = getData(maps, "产量工时"); |
| | | auxiliaryOriginalHoursDtos.addAll(data1.values()); |
| | | } |
| | | //辅助工时 |
| | | List<Map<String, Object>> maps1 = auxiliaryWorkingHoursDayMapper.totalHours(auxiliaryOriginalHoursLookDto.getMonth(), ids); |
| | | if (ObjectUtils.isNotEmpty(maps1)) { |
| | | for (Map<String, Object> objectMap : maps1) { |
| | | auxiliaryOriginalHoursDtos.add(getData(objectMap, "辅助工时")); |
| | | } |
| | | data2 = getData(maps1, "辅助工时"); |
| | | auxiliaryOriginalHoursDtos.addAll(data2.values()); |
| | | } |
| | | //加班工时 |
| | | //总工时 |
| | | List<Map<String, Object>> maps2 = auxiliaryOriginalHoursMapper.totalHours(auxiliaryOriginalHoursLookDto.getMonth(), ids); |
| | | //总工时=产量工时+辅助工时+加班工时 |
| | | Map<String, AuxiliaryOriginalHoursDto> data4 = new HashMap<String, AuxiliaryOriginalHoursDto>(); |
| | | Map<String, AuxiliaryOriginalHoursDto> data3 = data1; |
| | | if (data1.size()>0) { |
| | | if (data2.size() > 0) { |
| | | for (Map.Entry<String, AuxiliaryOriginalHoursDto> entry : data2.entrySet()) { |
| | | String key = entry.getKey(); |
| | | AuxiliaryOriginalHoursDto value = entry.getValue(); |
| | | if (data3.containsKey(key)) { |
| | | for (Map.Entry<String, AuxiliaryOriginalHoursDto> dtoEntry : data3.entrySet()) { |
| | | if (dtoEntry.getKey().equals(key)) { |
| | | AuxiliaryOriginalHoursDto auxiliaryOriginalHoursDto = new AuxiliaryOriginalHoursDto(); |
| | | AuxiliaryOriginalHoursDto hoursDto = data3.get(key); |
| | | BeanUtils.copyProperties(hoursDto, auxiliaryOriginalHoursDto); |
| | | auxiliaryOriginalHoursDto.setType("总工时"); |
| | | auxiliaryOriginalHoursDto.setOneHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getOneHours()) ? auxiliaryOriginalHoursDto.getOneHours() : 0) + (ObjectUtils.isNotEmpty(value.getOneHours()) ? value.getOneHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwoHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwoHours()) ? auxiliaryOriginalHoursDto.getTwoHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwoHours()) ? value.getTwoHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setThreeHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getThreeHours()) ? auxiliaryOriginalHoursDto.getThreeHours() : 0) + (ObjectUtils.isNotEmpty(value.getThreeHours()) ? value.getThreeHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setFourHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getFourHours()) ? auxiliaryOriginalHoursDto.getFourHours() : 0) + (ObjectUtils.isNotEmpty(value.getFourHours()) ? value.getFourHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setFiveHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getFiveHours()) ? auxiliaryOriginalHoursDto.getFiveHours() : 0) + (ObjectUtils.isNotEmpty(value.getFiveHours()) ? value.getFiveHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setSixHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getSixHours()) ? auxiliaryOriginalHoursDto.getSixHours() : 0) + (ObjectUtils.isNotEmpty(value.getSixHours()) ? value.getSixHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setSevenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getSevenHours()) ? auxiliaryOriginalHoursDto.getSevenHours() : 0) + (ObjectUtils.isNotEmpty(value.getSevenHours()) ? value.getSevenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setEightHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getEightHours()) ? auxiliaryOriginalHoursDto.getEightHours() : 0) + (ObjectUtils.isNotEmpty(value.getEightHours()) ? value.getEightHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setNineHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getNineHours()) ? auxiliaryOriginalHoursDto.getNineHours() : 0) + (ObjectUtils.isNotEmpty(value.getNineHours()) ? value.getNineHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTenHours()) ? auxiliaryOriginalHoursDto.getTenHours() : 0) + (ObjectUtils.isNotEmpty(value.getTenHours()) ? value.getTenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setElevenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getElevenHours()) ? auxiliaryOriginalHoursDto.getElevenHours() : 0) + (ObjectUtils.isNotEmpty(value.getElevenHours()) ? value.getElevenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwelveHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwelveHours()) ? auxiliaryOriginalHoursDto.getTwelveHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwelveHours()) ? value.getTwelveHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setThirteenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getThirteenHours()) ? auxiliaryOriginalHoursDto.getThirteenHours() : 0) + (ObjectUtils.isNotEmpty(value.getThirteenHours()) ? value.getThirteenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setFourteenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getFourteenHours()) ? auxiliaryOriginalHoursDto.getFourteenHours() : 0) + (ObjectUtils.isNotEmpty(value.getFourteenHours()) ? value.getFourteenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setFifteenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getFifteenHours()) ? auxiliaryOriginalHoursDto.getFifteenHours() : 0) + (ObjectUtils.isNotEmpty(value.getFifteenHours()) ? value.getFifteenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setSixteenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getSixteenHours()) ? auxiliaryOriginalHoursDto.getSixteenHours() : 0) + (ObjectUtils.isNotEmpty(value.getSixteenHours()) ? value.getSixteenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setSeventeenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getSeventeenHours()) ? auxiliaryOriginalHoursDto.getSeventeenHours() : 0) + (ObjectUtils.isNotEmpty(value.getSeventeenHours()) ? value.getSeventeenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setEighteenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getEighteenHours()) ? auxiliaryOriginalHoursDto.getEighteenHours() : 0) + (ObjectUtils.isNotEmpty(value.getEighteenHours()) ? value.getEighteenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setNineteenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getNineteenHours()) ? auxiliaryOriginalHoursDto.getNineteenHours() : 0) + (ObjectUtils.isNotEmpty(value.getNineteenHours()) ? value.getNineteenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwelveHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwelveHours()) ? auxiliaryOriginalHoursDto.getTwelveHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwelveHours()) ? value.getTwelveHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwentyOneHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyOneHours()) ? auxiliaryOriginalHoursDto.getTwentyOneHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwentyOneHours()) ? value.getTwentyOneHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwentyTwoHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyTwoHours()) ? auxiliaryOriginalHoursDto.getTwentyTwoHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwentyTwoHours()) ? value.getTwentyTwoHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwentyThreeHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyThreeHours()) ? auxiliaryOriginalHoursDto.getTwentyThreeHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwentyThreeHours()) ? value.getTwentyThreeHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwentyFourHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyFourHours()) ? auxiliaryOriginalHoursDto.getTwentyFourHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwentyFourHours()) ? value.getTwentyFourHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwentyFiveHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyFiveHours()) ? auxiliaryOriginalHoursDto.getTwentyFiveHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwentyFiveHours()) ? value.getTwentyFiveHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwentySixHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentySixHours()) ? auxiliaryOriginalHoursDto.getTwentySixHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwentySixHours()) ? value.getTwentySixHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwentySevenHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentySevenHours()) ? auxiliaryOriginalHoursDto.getTwentySevenHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwentySevenHours()) ? value.getTwentySevenHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwentyEightHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyEightHours()) ? auxiliaryOriginalHoursDto.getTwentyEightHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwentyEightHours()) ? value.getTwentyEightHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTwentyNineHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyNineHours()) ? auxiliaryOriginalHoursDto.getTwentyNineHours() : 0) + (ObjectUtils.isNotEmpty(value.getTwentyNineHours()) ? value.getTwentyNineHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setThirtyHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getThirtyHours()) ? auxiliaryOriginalHoursDto.getThirtyHours() : 0) + (ObjectUtils.isNotEmpty(value.getThirtyHours()) ? value.getThirtyHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setThirtyOneHours((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getThirtyOneHours()) ? auxiliaryOriginalHoursDto.getThirtyOneHours() : 0) + (ObjectUtils.isNotEmpty(value.getThirtyOneHours()) ? value.getThirtyOneHours() : 0)); |
| | | auxiliaryOriginalHoursDto.setTotal((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTotal()) ? auxiliaryOriginalHoursDto.getTotal() : 0) + (ObjectUtils.isNotEmpty(value.getTotal()) ? value.getTotal() : 0)); |
| | | data4.put(key, auxiliaryOriginalHoursDto); |
| | | } else { |
| | | AuxiliaryOriginalHoursDto hoursDto = data3.get(dtoEntry.getKey()); |
| | | AuxiliaryOriginalHoursDto dto = new AuxiliaryOriginalHoursDto(); |
| | | BeanUtils.copyProperties(hoursDto, dto); |
| | | dto.setType("总工时"); |
| | | data4.put(dtoEntry.getKey(), dto); |
| | | } |
| | | } |
| | | } else { |
| | | value.setType("总工时"); |
| | | data4.put(key, value); |
| | | } |
| | | } |
| | | } |
| | | else { |
| | | for (Map.Entry<String, AuxiliaryOriginalHoursDto> entry : data3.entrySet()) { |
| | | AuxiliaryOriginalHoursDto dto = entry.getValue(); |
| | | AuxiliaryOriginalHoursDto originalHoursDto = new AuxiliaryOriginalHoursDto(); |
| | | BeanUtils.copyProperties(dto, originalHoursDto); |
| | | originalHoursDto.setType("总工时"); |
| | | data4.put(entry.getKey(), originalHoursDto); |
| | | } |
| | | } |
| | | auxiliaryOriginalHoursDtos.addAll(data4.values()); |
| | | } |
| | | /*List<Map<String, Object>> maps2 = auxiliaryOriginalHoursMapper.totalHours(auxiliaryOriginalHoursLookDto.getMonth(), ids); |
| | | if (ObjectUtils.isNotEmpty(maps2)) { |
| | | //产量工时+辅助工时都不为空 |
| | | for (Map<String, Object> objectMap : maps2) { |
| | | auxiliaryOriginalHoursDtos.add(getData(objectMap, "总工时")); |
| | | auxiliaryOriginalHoursDtos.addAll(getData(maps2, "总工时").values()); |
| | | } |
| | | //如果辅助工时不为空 |
| | | else if (ObjectUtils.isNotEmpty(maps1)) { |
| | | auxiliaryOriginalHoursDtos.addAll(getData(maps1, "总工时").values()); |
| | | } else if (ObjectUtils.isNotEmpty(maps)) { |
| | | auxiliaryOriginalHoursDtos.addAll(getData(maps, "总工时").values()); |
| | | }*/ |
| | | |
| | | auxiliaryOriginalHoursDtos = auxiliaryOriginalHoursDtos.stream().sorted(Comparator.comparing(AuxiliaryOriginalHoursDto::getName)).collect(Collectors.toList()); |
| | | // 检查每个人的工时类型,补全缺少的工时 |
| | | Map<String, Set<String>> workHoursMap = new HashMap<>(); |
| | | String[] requiredHours = {"产量工时", "辅助工时", "加班工时", "总工时"}; |
| | | for (AuxiliaryOriginalHoursDto dto : auxiliaryOriginalHoursDtos) { |
| | | workHoursMap.computeIfAbsent(dto.getName(), k -> new HashSet<>()).add(dto.getType()); |
| | | } |
| | | List<AuxiliaryOriginalHoursDto> result = auxiliaryOriginalHoursDtos; |
| | | for (String name1 : workHoursMap.keySet()) { |
| | | Set<String> workTypes = workHoursMap.get(name1); |
| | | for (String requiredHour : requiredHours) { |
| | | if (!workTypes.contains(requiredHour)) { |
| | | AuxiliaryOriginalHoursDto auxiliaryOriginalHoursDto = new AuxiliaryOriginalHoursDto(); |
| | | auxiliaryOriginalHoursDto.setName(name1); |
| | | auxiliaryOriginalHoursDto.setAuxiliaryCorrectionHours(null); |
| | | auxiliaryOriginalHoursDto.setType(requiredHour); |
| | | auxiliaryOriginalHoursDto.setMonth(auxiliaryOriginalHoursLookDto.getMonth()); |
| | | result.add(auxiliaryOriginalHoursDto); |
| | | } |
| | | } |
| | | } |
| | | //如果产量工时为空 |
| | | else if (ObjectUtils.isEmpty(maps)) { |
| | | for (Map<String, Object> objectMap : maps1) { |
| | | auxiliaryOriginalHoursDtos.add(getData(objectMap, "总工时")); |
| | | } |
| | | } else if (ObjectUtils.isEmpty(maps1)) { |
| | | for (Map<String, Object> objectMap : maps) { |
| | | auxiliaryOriginalHoursDtos.add(getData(objectMap, "总工时")); |
| | | } |
| | | } |
| | | originalHoursDtoIPage.setRecords(auxiliaryOriginalHoursDtos); |
| | | List<String> order = Arrays.asList("产量工时", "辅助工时", "加班工时", "总工时"); |
| | | Comparator<AuxiliaryOriginalHoursDto> comparator = Comparator.comparingInt(dto -> { |
| | | String type = dto.getType(); |
| | | return order.indexOf(type) == -1 ? order.size() : order.indexOf(type); |
| | | }); |
| | | result = result.stream().sorted(Comparator.comparing(AuxiliaryOriginalHoursDto::getName).thenComparing(comparator)).collect(Collectors.toList()); |
| | | originalHoursDtoIPage.setRecords(result); |
| | | originalHoursDtoIPage.setTotal(result.size()); |
| | | map.put("body", originalHoursDtoIPage); |
| | | return map; |
| | | } |
| | | |
| | | private AuxiliaryOriginalHoursDto getData(Map<String, Object> objectMap, String type) { |
| | | AuxiliaryOriginalHoursDto auxiliaryOriginalHoursDto = new AuxiliaryOriginalHoursDto(); |
| | | auxiliaryOriginalHoursDto.setName(objectMap.get("name").toString());//姓名 |
| | | auxiliaryOriginalHoursDto.setType(type); |
| | | auxiliaryOriginalHoursDto.setMonth(objectMap.get("month").toString().substring(0, 7));//月份 |
| | | //查询这个人这个月是否有修正的产量工时 |
| | | AuxiliaryCorrectionHours auxiliaryCorrectionHours = auxiliaryCorrectionHoursMapper.selectOne(Wrappers.<AuxiliaryCorrectionHours>lambdaQuery() |
| | | .eq(AuxiliaryCorrectionHours::getNameUser, userMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getName, auxiliaryOriginalHoursDto.getName())).getId()) |
| | | .eq(AuxiliaryCorrectionHours::getType, auxiliaryOriginalHoursDto.getType()) |
| | | .eq(AuxiliaryCorrectionHours::getMonth, auxiliaryOriginalHoursDto.getMonth())); |
| | | switch (objectMap.get("month").toString().substring(8, 10)) { |
| | | case "01": |
| | | auxiliaryOriginalHoursDto.setOneHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getOneHours().compareTo(auxiliaryOriginalHoursDto.getOneHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setOne(1); |
| | | } |
| | | } |
| | | break; |
| | | case "02": |
| | | auxiliaryOriginalHoursDto.setTwoHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwoHours().compareTo(auxiliaryOriginalHoursDto.getTwoHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwo(1); |
| | | } |
| | | } |
| | | break; |
| | | case "03": |
| | | auxiliaryOriginalHoursDto.setThreeHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getThreeHours().compareTo(auxiliaryOriginalHoursDto.getThreeHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setThree(1); |
| | | } |
| | | } |
| | | break; |
| | | case "04": |
| | | auxiliaryOriginalHoursDto.setFourHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getFourHours().compareTo(auxiliaryOriginalHoursDto.getFourHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setFour(1); |
| | | } |
| | | } |
| | | break; |
| | | case "05": |
| | | auxiliaryOriginalHoursDto.setFiveHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getFiveHours().compareTo(auxiliaryOriginalHoursDto.getFiveHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setFive(1); |
| | | } |
| | | } |
| | | break; |
| | | case "06": |
| | | auxiliaryOriginalHoursDto.setSixHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getSixHours().compareTo(auxiliaryOriginalHoursDto.getSixHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setSix(1); |
| | | } |
| | | } |
| | | break; |
| | | case "07": |
| | | auxiliaryOriginalHoursDto.setSevenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getSevenHours().compareTo(auxiliaryOriginalHoursDto.getSevenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setSeven(1); |
| | | } |
| | | } |
| | | break; |
| | | case "08": |
| | | auxiliaryOriginalHoursDto.setEightHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getEightHours().compareTo(auxiliaryOriginalHoursDto.getEightHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setEight(1); |
| | | } |
| | | } |
| | | break; |
| | | case "09": |
| | | auxiliaryOriginalHoursDto.setNineHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getNineHours().compareTo(auxiliaryOriginalHoursDto.getNineHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setNine(1); |
| | | } |
| | | } |
| | | break; |
| | | case "10": |
| | | auxiliaryOriginalHoursDto.setTenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTenHours().compareTo(auxiliaryOriginalHoursDto.getTenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "11": |
| | | auxiliaryOriginalHoursDto.setElevenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getElevenHours().compareTo(auxiliaryOriginalHoursDto.getElevenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setEleven(1); |
| | | } |
| | | } |
| | | break; |
| | | case "12": |
| | | auxiliaryOriginalHoursDto.setTwelveHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwelveHours().compareTo(auxiliaryOriginalHoursDto.getTwelveHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwelve(1); |
| | | } |
| | | } |
| | | break; |
| | | case "13": |
| | | auxiliaryOriginalHoursDto.setThirteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getThirteenHours().compareTo(auxiliaryOriginalHoursDto.getThirteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setThirteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "14": |
| | | auxiliaryOriginalHoursDto.setFourteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getFourteenHours().compareTo(auxiliaryOriginalHoursDto.getFourteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setFourteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "15": |
| | | auxiliaryOriginalHoursDto.setFifteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getFifteenHours().compareTo(auxiliaryOriginalHoursDto.getFifteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setFifteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "16": |
| | | auxiliaryOriginalHoursDto.setSixteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getSixteenHours().compareTo(auxiliaryOriginalHoursDto.getSixteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setSixteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "17": |
| | | auxiliaryOriginalHoursDto.setSeventeenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getSeventeenHours().compareTo(auxiliaryOriginalHoursDto.getSeventeenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setSeventeen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "18": |
| | | auxiliaryOriginalHoursDto.setEighteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getEighteenHours().compareTo(auxiliaryOriginalHoursDto.getEighteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setEighteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "19": |
| | | auxiliaryOriginalHoursDto.setNineteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getNineteenHours().compareTo(auxiliaryOriginalHoursDto.getNineteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setNineteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "20": |
| | | auxiliaryOriginalHoursDto.setTwentyHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyHours().compareTo(auxiliaryOriginalHoursDto.getTwentyHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwenty(1); |
| | | } |
| | | } |
| | | break; |
| | | case "21": |
| | | auxiliaryOriginalHoursDto.setTwentyOneHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyOneHours().compareTo(auxiliaryOriginalHoursDto.getTwentyOneHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyOne(1); |
| | | } |
| | | } |
| | | break; |
| | | case "22": |
| | | auxiliaryOriginalHoursDto.setTwentyTwoHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyTwoHours().compareTo(auxiliaryOriginalHoursDto.getTwentyTwoHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyTwo(1); |
| | | } |
| | | } |
| | | break; |
| | | case "23": |
| | | auxiliaryOriginalHoursDto.setTwentyThreeHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyThreeHours().compareTo(auxiliaryOriginalHoursDto.getTwentyThreeHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyThree(1); |
| | | } |
| | | } |
| | | break; |
| | | case "24": |
| | | auxiliaryOriginalHoursDto.setTwentyFourHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyFourHours().compareTo(auxiliaryOriginalHoursDto.getTwentyFourHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyFour(1); |
| | | } |
| | | } |
| | | break; |
| | | case "25": |
| | | auxiliaryOriginalHoursDto.setTwentyFiveHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyFiveHours().compareTo(auxiliaryOriginalHoursDto.getTwentyFiveHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyFive(1); |
| | | } |
| | | } |
| | | break; |
| | | case "26": |
| | | auxiliaryOriginalHoursDto.setTwentySixHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentySixHours().compareTo(auxiliaryOriginalHoursDto.getTwentySixHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentySix(1); |
| | | } |
| | | } |
| | | break; |
| | | case "27": |
| | | auxiliaryOriginalHoursDto.setTwentySevenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentySevenHours().compareTo(auxiliaryOriginalHoursDto.getTwentySevenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentySeven(1); |
| | | } |
| | | } |
| | | break; |
| | | case "28": |
| | | auxiliaryOriginalHoursDto.setTwentyEightHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyEightHours().compareTo(auxiliaryOriginalHoursDto.getTwentyEightHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyEight(1); |
| | | } |
| | | } |
| | | break; |
| | | case "29": |
| | | auxiliaryOriginalHoursDto.setTwentyNineHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyNineHours().compareTo(auxiliaryOriginalHoursDto.getTwentyNineHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyNine(1); |
| | | } |
| | | } |
| | | break; |
| | | case "30": |
| | | auxiliaryOriginalHoursDto.setThirtyHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getThirtyHours().compareTo(auxiliaryOriginalHoursDto.getThirtyHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setThirty(1); |
| | | } |
| | | } |
| | | break; |
| | | case "31": |
| | | auxiliaryOriginalHoursDto.setThirtyOneHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getThirtyOneHours().compareTo(auxiliaryOriginalHoursDto.getThirtyOneHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setThirtyOne(1); |
| | | } |
| | | } |
| | | break; |
| | | |
| | | //导出原始工时 |
| | | @Override |
| | | public void exportWorkingHours(String month, String name, String departLims, HttpServletResponse response) throws IOException { |
| | | List<AuxiliaryOriginalHoursDto> auxiliaryOriginalHoursDtos = new ArrayList<AuxiliaryOriginalHoursDto>(); |
| | | |
| | | //查询原始工时(使用分页查询) |
| | | AuxiliaryOriginalHoursLookDto auxiliaryOriginalHoursLookDto = new AuxiliaryOriginalHoursLookDto(); |
| | | if (ObjectUtils.isNotEmpty(month)) { |
| | | auxiliaryOriginalHoursLookDto.setMonth(month); |
| | | } |
| | | return auxiliaryOriginalHoursDto; |
| | | if (ObjectUtils.isNotEmpty(name)) { |
| | | auxiliaryOriginalHoursLookDto.setName(name); |
| | | } |
| | | if (ObjectUtils.isNotEmpty(departLims)) { |
| | | auxiliaryOriginalHoursLookDto.setDepartLims(departLims); |
| | | } |
| | | IPage<AuxiliaryOriginalHoursDto> body = (IPage<AuxiliaryOriginalHoursDto>) selectAuxiliaryOriginalHours(new Page(-1, -1), auxiliaryOriginalHoursLookDto).get("body"); |
| | | auxiliaryOriginalHoursDtos = body.getRecords(); |
| | | response.setContentType("application/vnd.ms-excel"); |
| | | response.setCharacterEncoding("UTF-8"); |
| | | // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 |
| | | String fileName = URLEncoder.encode("工时统计导出", "UTF-8"); |
| | | response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); |
| | | try { |
| | | // 新建ExcelWriter |
| | | ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()).build(); |
| | | WriteSheet mainSheet = EasyExcel.writerSheet(0, "原始工时导出").head(AuxiliaryOriginalHoursDto.class).build(); |
| | | excelWriter.write(auxiliaryOriginalHoursDtos, mainSheet); |
| | | // 关闭流 |
| | | excelWriter.finish(); |
| | | } catch (IOException e) { |
| | | throw new RuntimeException("导出失败"); |
| | | } |
| | | |
| | | } |
| | | |
| | | private Map<String, AuxiliaryOriginalHoursDto> getData(List<Map<String, Object>> objectMaps, String type) { |
| | | Map<String, AuxiliaryOriginalHoursDto> dtoMap = new HashMap<>(); |
| | | for (Map<String, Object> objectMap : objectMaps) { |
| | | String name = objectMap.get("name").toString(); |
| | | String month = objectMap.get("month").toString().substring(0, 7); |
| | | AuxiliaryOriginalHoursDto auxiliaryOriginalHoursDto = dtoMap.get(name); |
| | | if (auxiliaryOriginalHoursDto == null) { |
| | | auxiliaryOriginalHoursDto = new AuxiliaryOriginalHoursDto(); |
| | | auxiliaryOriginalHoursDto.setName(name); |
| | | auxiliaryOriginalHoursDto.setType(type); |
| | | auxiliaryOriginalHoursDto.setMonth(month); |
| | | // 查询这个人这个月是否有修正的产量工时 |
| | | AuxiliaryCorrectionHours auxiliaryCorrectionHours = auxiliaryCorrectionHoursMapper.selectOne(Wrappers.<AuxiliaryCorrectionHours>lambdaQuery() |
| | | .eq(AuxiliaryCorrectionHours::getNameUser, userMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getName, auxiliaryOriginalHoursDto.getName())).getId()) |
| | | .eq(AuxiliaryCorrectionHours::getType, auxiliaryOriginalHoursDto.getType()) |
| | | .eq(AuxiliaryCorrectionHours::getMonth, auxiliaryOriginalHoursDto.getMonth())); |
| | | auxiliaryOriginalHoursDto.setAuxiliaryCorrectionHours(auxiliaryCorrectionHours); |
| | | } |
| | | AuxiliaryCorrectionHours auxiliaryCorrectionHours = auxiliaryOriginalHoursDto.getAuxiliaryCorrectionHours(); |
| | | switch (objectMap.get("month").toString().substring(8, 10)) { |
| | | case "01": |
| | | auxiliaryOriginalHoursDto.setOneHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getOneHours().compareTo(auxiliaryOriginalHoursDto.getOneHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setOne(1); |
| | | } |
| | | } |
| | | break; |
| | | case "02": |
| | | auxiliaryOriginalHoursDto.setTwoHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwoHours().compareTo(auxiliaryOriginalHoursDto.getTwoHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwo(1); |
| | | } |
| | | } |
| | | break; |
| | | case "03": |
| | | auxiliaryOriginalHoursDto.setThreeHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getThreeHours().compareTo(auxiliaryOriginalHoursDto.getThreeHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setThree(1); |
| | | } |
| | | } |
| | | break; |
| | | case "04": |
| | | auxiliaryOriginalHoursDto.setFourHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getFourHours().compareTo(auxiliaryOriginalHoursDto.getFourHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setFour(1); |
| | | } |
| | | } |
| | | break; |
| | | case "05": |
| | | auxiliaryOriginalHoursDto.setFiveHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getFiveHours().compareTo(auxiliaryOriginalHoursDto.getFiveHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setFive(1); |
| | | } |
| | | } |
| | | break; |
| | | case "06": |
| | | auxiliaryOriginalHoursDto.setSixHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getSixHours().compareTo(auxiliaryOriginalHoursDto.getSixHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setSix(1); |
| | | } |
| | | } |
| | | break; |
| | | case "07": |
| | | auxiliaryOriginalHoursDto.setSevenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getSevenHours().compareTo(auxiliaryOriginalHoursDto.getSevenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setSeven(1); |
| | | } |
| | | } |
| | | break; |
| | | case "08": |
| | | auxiliaryOriginalHoursDto.setEightHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getEightHours().compareTo(auxiliaryOriginalHoursDto.getEightHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setEight(1); |
| | | } |
| | | } |
| | | break; |
| | | case "09": |
| | | auxiliaryOriginalHoursDto.setNineHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getNineHours().compareTo(auxiliaryOriginalHoursDto.getNineHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setNine(1); |
| | | } |
| | | } |
| | | break; |
| | | case "10": |
| | | auxiliaryOriginalHoursDto.setTenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTenHours().compareTo(auxiliaryOriginalHoursDto.getTenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "11": |
| | | auxiliaryOriginalHoursDto.setElevenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getElevenHours().compareTo(auxiliaryOriginalHoursDto.getElevenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setEleven(1); |
| | | } |
| | | } |
| | | break; |
| | | case "12": |
| | | auxiliaryOriginalHoursDto.setTwelveHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwelveHours().compareTo(auxiliaryOriginalHoursDto.getTwelveHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwelve(1); |
| | | } |
| | | } |
| | | break; |
| | | case "13": |
| | | auxiliaryOriginalHoursDto.setThirteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getThirteenHours().compareTo(auxiliaryOriginalHoursDto.getThirteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setThirteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "14": |
| | | auxiliaryOriginalHoursDto.setFourteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getFourteenHours().compareTo(auxiliaryOriginalHoursDto.getFourteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setFourteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "15": |
| | | auxiliaryOriginalHoursDto.setFifteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getFifteenHours().compareTo(auxiliaryOriginalHoursDto.getFifteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setFifteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "16": |
| | | auxiliaryOriginalHoursDto.setSixteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getSixteenHours().compareTo(auxiliaryOriginalHoursDto.getSixteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setSixteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "17": |
| | | auxiliaryOriginalHoursDto.setSeventeenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getSeventeenHours().compareTo(auxiliaryOriginalHoursDto.getSeventeenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setSeventeen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "18": |
| | | auxiliaryOriginalHoursDto.setEighteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getEighteenHours().compareTo(auxiliaryOriginalHoursDto.getEighteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setEighteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "19": |
| | | auxiliaryOriginalHoursDto.setNineteenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getNineteenHours().compareTo(auxiliaryOriginalHoursDto.getNineteenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setNineteen(1); |
| | | } |
| | | } |
| | | break; |
| | | case "20": |
| | | auxiliaryOriginalHoursDto.setTwentyHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyHours().compareTo(auxiliaryOriginalHoursDto.getTwentyHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwenty(1); |
| | | } |
| | | } |
| | | break; |
| | | case "21": |
| | | auxiliaryOriginalHoursDto.setTwentyOneHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyOneHours().compareTo(auxiliaryOriginalHoursDto.getTwentyOneHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyOne(1); |
| | | } |
| | | } |
| | | break; |
| | | case "22": |
| | | auxiliaryOriginalHoursDto.setTwentyTwoHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyTwoHours().compareTo(auxiliaryOriginalHoursDto.getTwentyTwoHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyTwo(1); |
| | | } |
| | | } |
| | | break; |
| | | case "23": |
| | | auxiliaryOriginalHoursDto.setTwentyThreeHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyThreeHours().compareTo(auxiliaryOriginalHoursDto.getTwentyThreeHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyThree(1); |
| | | } |
| | | } |
| | | break; |
| | | case "24": |
| | | auxiliaryOriginalHoursDto.setTwentyFourHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyFourHours().compareTo(auxiliaryOriginalHoursDto.getTwentyFourHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyFour(1); |
| | | } |
| | | } |
| | | break; |
| | | case "25": |
| | | auxiliaryOriginalHoursDto.setTwentyFiveHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyFiveHours().compareTo(auxiliaryOriginalHoursDto.getTwentyFiveHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyFive(1); |
| | | } |
| | | } |
| | | break; |
| | | case "26": |
| | | auxiliaryOriginalHoursDto.setTwentySixHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentySixHours().compareTo(auxiliaryOriginalHoursDto.getTwentySixHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentySix(1); |
| | | } |
| | | } |
| | | break; |
| | | case "27": |
| | | auxiliaryOriginalHoursDto.setTwentySevenHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentySevenHours().compareTo(auxiliaryOriginalHoursDto.getTwentySevenHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentySeven(1); |
| | | } |
| | | } |
| | | break; |
| | | case "28": |
| | | auxiliaryOriginalHoursDto.setTwentyEightHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyEightHours().compareTo(auxiliaryOriginalHoursDto.getTwentyEightHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyEight(1); |
| | | } |
| | | } |
| | | break; |
| | | case "29": |
| | | auxiliaryOriginalHoursDto.setTwentyNineHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getTwentyNineHours().compareTo(auxiliaryOriginalHoursDto.getTwentyNineHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setTwentyNine(1); |
| | | } |
| | | } |
| | | break; |
| | | case "30": |
| | | auxiliaryOriginalHoursDto.setThirtyHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getThirtyHours().compareTo(auxiliaryOriginalHoursDto.getThirtyHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setThirty(1); |
| | | } |
| | | } |
| | | break; |
| | | case "31": |
| | | auxiliaryOriginalHoursDto.setThirtyOneHours(Double.parseDouble(objectMap.get("manHours").toString())); |
| | | if (ObjectUtils.isNotEmpty(auxiliaryCorrectionHours)) { |
| | | if (auxiliaryCorrectionHours.getThirtyOneHours().compareTo(auxiliaryOriginalHoursDto.getThirtyOneHours()) != 0) { |
| | | auxiliaryOriginalHoursDto.setThirtyOne(1); |
| | | } |
| | | } |
| | | break; |
| | | } |
| | | auxiliaryOriginalHoursDto.setTotal((ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getOneHours()) ? auxiliaryOriginalHoursDto.getOneHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwoHours()) ? auxiliaryOriginalHoursDto.getTwoHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getThreeHours()) ? auxiliaryOriginalHoursDto.getThreeHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getFourHours()) ? auxiliaryOriginalHoursDto.getFourHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getFiveHours()) ? auxiliaryOriginalHoursDto.getFiveHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getSixHours()) ? auxiliaryOriginalHoursDto.getSixHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getSevenHours()) ? auxiliaryOriginalHoursDto.getSevenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getEightHours()) ? auxiliaryOriginalHoursDto.getEightHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getNineHours()) ? auxiliaryOriginalHoursDto.getNineHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTenHours()) ? auxiliaryOriginalHoursDto.getTenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getElevenHours()) ? auxiliaryOriginalHoursDto.getElevenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwelveHours()) ? auxiliaryOriginalHoursDto.getTwelveHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getThirteenHours()) ? auxiliaryOriginalHoursDto.getThirteenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getFourteenHours()) ? auxiliaryOriginalHoursDto.getFourteenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getFifteenHours()) ? auxiliaryOriginalHoursDto.getFifteenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getSixteenHours()) ? auxiliaryOriginalHoursDto.getSixteenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getSeventeenHours()) ? auxiliaryOriginalHoursDto.getSeventeenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getEighteenHours()) ? auxiliaryOriginalHoursDto.getEighteenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getNineteenHours()) ? auxiliaryOriginalHoursDto.getNineteenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyHours()) ? auxiliaryOriginalHoursDto.getTwentyHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyOneHours()) ? auxiliaryOriginalHoursDto.getTwentyOneHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyTwoHours()) ? auxiliaryOriginalHoursDto.getTwentyTwoHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyThreeHours()) ? auxiliaryOriginalHoursDto.getTwentyThreeHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyFourHours()) ? auxiliaryOriginalHoursDto.getTwentyFourHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyFiveHours()) ? auxiliaryOriginalHoursDto.getTwentyFiveHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentySixHours()) ? auxiliaryOriginalHoursDto.getTwentySixHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentySevenHours()) ? auxiliaryOriginalHoursDto.getTwentySevenHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyEightHours()) ? auxiliaryOriginalHoursDto.getTwentyEightHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getTwentyNineHours()) ? auxiliaryOriginalHoursDto.getTwentyNineHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getThirtyHours()) ? auxiliaryOriginalHoursDto.getThirtyHours() : 0) |
| | | + (ObjectUtils.isNotEmpty(auxiliaryOriginalHoursDto.getThirtyOneHours()) ? auxiliaryOriginalHoursDto.getThirtyOneHours() : 0) |
| | | ); |
| | | DecimalFormat df = new DecimalFormat("#.####"); // 设定四位小数 |
| | | auxiliaryOriginalHoursDto.setTotal(Double.parseDouble(df.format(auxiliaryOriginalHoursDto.getTotal()))); |
| | | |
| | | dtoMap.put(name, auxiliaryOriginalHoursDto); |
| | | } |
| | | return dtoMap; |
| | | } |
| | | } |