From 78dbf359be9e5b7ea11a4f3dde25a3037a21ddbc Mon Sep 17 00:00:00 2001 From: bluejay <253316343@qq.com> Date: 星期五, 11 四月 2025 15:52:06 +0800 Subject: [PATCH] 零件统计表查询功能 --- aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPartRouteStatServiceImpl.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 51 insertions(+), 6 deletions(-) diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPartRouteStatServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPartRouteStatServiceImpl.java index c9c4baa..cada14b 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPartRouteStatServiceImpl.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPartRouteStatServiceImpl.java @@ -1,13 +1,16 @@ package com.aps.core.service.impl; +import java.time.LocalDate; import java.time.LocalDateTime; -import java.util.List; -import java.util.Map; +import java.time.format.DateTimeFormatter; +import java.time.temporal.ChronoUnit; +import java.util.*; import com.aps.common.core.utils.uuid.IdUtils; -import com.aps.common.core.utils.uuid.UUID; +import com.aps.common.core.web.domain.AjaxResult; +import com.aps.core.domain.ApsResourceDateStat; +import com.aps.core.mapper.ApsResourceGroupMapper; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.cloud.commons.config.DefaultsBindHandlerAdvisor; import org.springframework.stereotype.Service; import com.aps.core.mapper.ApsPartRouteStatMapper; import com.aps.core.domain.ApsPartRouteStat; @@ -26,7 +29,7 @@ { @Autowired private ApsPartRouteStatMapper apsPartRouteStatMapper; - private DefaultsBindHandlerAdvisor.MappingsProvider mappingsProvider; + private ApsResourceGroupMapper resourceGroupMapper; /** * 鏌ヨ闆朵欢缁熻琛� @@ -103,6 +106,9 @@ + /** + * 鏌ヨ闆朵欢宸ュ簭骞舵洿鏂拌鍒掑紑宸ユ棩鏈� + * */ public void updatePartRoutPlanDate() { List<ApsPartRouteStat> tempList = apsPartRouteStatMapper.selectPartRoutStat(); /*瀵箃empList 鎸夌収 workOrderNo 杩涜鍒嗙粍*/ @@ -140,6 +146,45 @@ } } apsPartRouteStatMapper.deleteLastBatch(batchNum); - } + /** 鏌ヨ璧勬簮鏃ュ巻琛� + */ + @Override + public AjaxResult selectResourceDateStat() { + /*鏌ュ嚭鎵�鏈夌粺璁$殑鏁版嵁*/ + List<ApsResourceDateStat> list = apsPartRouteStatMapper.selectResourceDateStat(); + /*姹傚嚭璁″垝鐨勬渶澶ф椂闂达紝娌℃湁 璁剧疆涓哄綋鍓嶆椂闂�+15澶�*/ + ApsResourceDateStat apsResourceDateStat = list.stream().max(Comparator.comparing(ApsResourceDateStat::getPlanDay)).orElse(null); + LocalDate maxPlanDay = LocalDate.now().plus(15, ChronoUnit.DAYS); + if(apsResourceDateStat!=null){ + maxPlanDay=apsResourceDateStat.getPlanDay(); + } + /*缁勭粐鍑烘棩鏈熻〃澶�*/ + List<String> planDays = new ArrayList<>(); + LocalDate startDay = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + while (startDay .isBefore( maxPlanDay)){ + planDays.add(startDay.format(formatter)); + startDay=startDay.plus(1,ChronoUnit.DAYS); + } + /*鏍规嵁鏃ユ湡琛ㄥご鐨勯『搴忥紝缁勭粐鍑烘瘡涓棩鏈熶笅鐨勭粺璁¢」鐩�*/ + List<ApsResourceDateStat> targetList = new ArrayList<>(); + for (String planDay : planDays) { + ApsResourceDateStat apsResourceDateStat1 = list.stream() + .filter(item -> item.getPlanDay().equals(LocalDate.parse(planDay, formatter))) + .findFirst().orElse(null); + if(apsResourceDateStat1!=null){ + targetList.add(apsResourceDateStat1); + }else{ + ApsResourceDateStat apsResourceDateStat2 = new ApsResourceDateStat(); + apsResourceDateStat2.setPlanDay( LocalDate.parse(planDay, formatter)); + targetList.add(apsResourceDateStat2); + } + } + AjaxResult result=new AjaxResult(200,"鐢熸垚鎴愬姛") + .put("planTitle",planDays) + .put("planTable",targetList); + return result; + } + } -- Gitblit v1.9.3