From 1c703617885275090d69c697e82e61f4940c0bdc Mon Sep 17 00:00:00 2001 From: yyt <306727702@qq.com> Date: 星期二, 28 五月 2024 14:20:29 +0800 Subject: [PATCH] 380新产品,优化 --- jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/impl/BsOrderSchedulingServiceImpl.java | 91 ++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 85 insertions(+), 6 deletions(-) diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/impl/BsOrderSchedulingServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/impl/BsOrderSchedulingServiceImpl.java index 94ad69c..7b63e34 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/impl/BsOrderSchedulingServiceImpl.java +++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/impl/BsOrderSchedulingServiceImpl.java @@ -5,13 +5,21 @@ import com.jcdm.common.utils.DateUtils; import com.jcdm.common.utils.StringUtils; import com.jcdm.main.bs.orderScheduling.Query.PrepareOnlineQuery; +import com.jcdm.main.bs.orderScheduling.common.Constants; import com.jcdm.main.bs.orderScheduling.domain.BsOrderScheduling; import com.jcdm.main.bs.orderScheduling.mapper.BsOrderSchedulingMapper; import com.jcdm.main.bs.orderScheduling.service.IBsOrderSchedulingService; +import com.jcdm.main.bs.orderScheduling.vo.FollowReportVO; import com.jcdm.main.bs.orderScheduling.vo.LineChartVO; +import com.jcdm.main.da.paramCollection.domain.DaParamCollection; +import com.jcdm.main.da.paramCollection.mapper.DaParamCollectionMapper; +import com.jcdm.main.da.paramCollection.service.impl.DaParamCollectionServiceImpl; +import com.jcdm.main.da.passingStationCollection.domain.DaPassingStationCollection; +import com.jcdm.main.da.passingStationCollection.mapper.DaPassingStationCollectionMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; @@ -34,6 +42,12 @@ @Autowired private BsOrderSchedulingMapper bsOrderSchedulingMapper; + @Resource + private DaParamCollectionMapper daParamCollectionMapper; + + @Resource + private DaPassingStationCollectionMapper daPassingStationCollectionMapper; + /** * 鏌ヨ璁㈠崟鎺掍骇 * @@ -45,6 +59,20 @@ { return bsOrderSchedulingMapper.selectBsOrderSchedulingById(id); } + + /** + * 鏌ヨ璁㈠崟鎺掍骇 + * + * @param sncode 璁㈠崟鎺掍骇鍙戝姩鏈哄彿 + * @return 璁㈠崟鎺掍骇 + */ + @Override + public BsOrderScheduling selectBsOrderSchedulingSNCode(String sncode) + { + return bsOrderSchedulingMapper.selectBsOrderSchedulingSNCode(sncode); + } + + /** * 鏌ヨ璁㈠崟鎺掍骇鍒楄〃 @@ -64,6 +92,53 @@ } @Override + public List<BsOrderScheduling> selectBsOrderSchedulingPage(BsOrderScheduling bsOrderScheduling) + { + if(bsOrderScheduling.getDateConditions()!=null){ + String[] conditions = bsOrderScheduling.getDateConditions(); + bsOrderScheduling.setStartTime(conditions[0]); + bsOrderScheduling.setEndTime(conditions[1]); + } + return bsOrderSchedulingMapper.selectBsOrderSchedulingPage(bsOrderScheduling); + } + + + @Override + public FollowReportVO getFollowReportList(BsOrderScheduling bsOrderScheduling) + { + FollowReportVO vo = new FollowReportVO(); + if(bsOrderScheduling.getDateConditions()!=null){ + String[] conditions = bsOrderScheduling.getDateConditions(); + bsOrderScheduling.setStartTime(conditions[0]); + bsOrderScheduling.setEndTime(conditions[1]); + } + //涓昏〃鏁版嵁 + List<BsOrderScheduling> mainList = bsOrderSchedulingMapper.selectBsOrderSchedulingList(bsOrderScheduling); + vo.setMainList(mainList); + List<String> engineNoList = mainList.stream().map(BsOrderScheduling::getEngineNo).distinct().collect(Collectors.toList()); + List<DaParamCollection> allChildList = new ArrayList<>(); + List<DaPassingStationCollection> collect5 = new ArrayList<>(); + if (CollUtil.isNotEmpty(engineNoList)){ + allChildList = daParamCollectionMapper.getListBySfcCode(engineNoList); + collect5 = daPassingStationCollectionMapper.getListBySfcCode(engineNoList); + } + if (CollUtil.isNotEmpty(allChildList)){ + //鎷垮埌鎵�鏈夊瓙鏁版嵁 + List<DaParamCollection> collect1 = allChildList.stream().filter(x -> Constants.DATA1.equals(x.getType())).collect(Collectors.toList()); + List<DaParamCollection> collect2 = allChildList.stream().filter(x -> Constants.DATA2.equals(x.getType())).collect(Collectors.toList()); + List<DaParamCollection> collect3 = allChildList.stream().filter(x -> Constants.DATA3.equals(x.getType())).collect(Collectors.toList()); + List<DaParamCollection> collect4 = allChildList.stream().filter(x -> Constants.DATA4.equals(x.getType())).collect(Collectors.toList()); + vo.setList1(collect1); + vo.setList2(collect2); + vo.setList3(collect3); + vo.setList4(collect4); + } + vo.setList5(collect5); + return vo; + + } + + @Override public List<LineChartVO> getOffLineNum() { List<LineChartVO> result = new ArrayList<>(); @@ -71,13 +146,13 @@ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); LocalDateTime now = LocalDateTime.now(); LocalDateTime startTime = LocalDateTime.of(now.getYear(),now.getMonthValue(),now.getDayOfMonth(),8,0,0); - LocalDateTime endTime = LocalDateTime.of(now.getYear(),now.getMonthValue(),now.plusDays(1).getDayOfMonth(),22,0,0); + LocalDateTime endTime = LocalDateTime.of(now.getYear(),now.getMonthValue(),now.plusDays(1).getDayOfMonth(),23,0,0); String s1 = startTime.format(formatter); String s2 = endTime.format(formatter); bsOrderScheduling.setStartTime(s1); bsOrderScheduling.setEndTime(s2); List<BsOrderScheduling> todayList = bsOrderSchedulingMapper.selectBsOrderSchedulingList(bsOrderScheduling); - todayList = todayList.stream().filter(x -> ObjectUtil.isNotEmpty(x.getCvtOfflineTime())).collect(Collectors.toList()); + todayList = todayList.stream().filter(x -> ObjectUtil.isNotEmpty(x.getFinalAssemblyOfflineTime())).collect(Collectors.toList()); if (CollUtil.isNotEmpty(todayList)){ List<String> allModel = todayList.stream().map(BsOrderScheduling::getModel).distinct().collect(Collectors.toList()); Map<String, List<BsOrderScheduling>> collect = new HashMap<>(); @@ -86,7 +161,7 @@ List<Integer> arr = new ArrayList<>(); vo.setName(s); collect = todayList.stream().filter(x -> s.equals(x.getModel())).collect(Collectors.groupingBy(item -> new SimpleDateFormat("yyyy-MM-dd HH").format(item - .getCvtOfflineTime()))); + .getFinalAssemblyOfflineTime()))); Map<Integer,Integer> temp = new HashMap<>(); if (CollUtil.isNotEmpty(collect)){ for (String string : collect.keySet()) { @@ -94,12 +169,16 @@ String s3 = string.split(StringUtils.SPACE)[1]; if (StringUtils.isNotEmpty(s3)){ int i = Integer.parseInt(s3); - temp.put(i,size); + temp.put(i+1,size); } } } - for (int i = 8; i < 23; i++) { - arr.add(temp.getOrDefault(i, 0)); + for (int i = 8; i < 24; i++) { + if (i==8){ + arr.add(0); + }else { + arr.add(temp.getOrDefault(i, 0)); + } } vo.setData(arr); vo.setType("line"); -- Gitblit v1.9.3