From 6559979ca8936cf0b36288853f771f7c250eeea4 Mon Sep 17 00:00:00 2001 From: "DESKTOP-J7ED0MB\\yinjinlu" <411641505@qq.com> Date: Sun, 9 Oct 2022 16:33:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E8=89=BA=E8=B7=AF=E7=BA=BF=E4=B8=AD?= =?UTF-8?q?=E7=9A=84=E5=85=B3=E9=94=AE=E5=B7=A5=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ktg/mes/pro/domain/ProRouteProcess.java | 22 +++++---- .../pro/service/IProRouteProcessService.java | 9 ++++ .../impl/ProRouteProcessServiceImpl.java | 49 ++++++++++++++++++- .../mapper/pro/ProRouteProcessMapper.xml | 14 +++--- 4 files changed, 76 insertions(+), 18 deletions(-) diff --git a/ktg-mes/src/main/java/com/ktg/mes/pro/domain/ProRouteProcess.java b/ktg-mes/src/main/java/com/ktg/mes/pro/domain/ProRouteProcess.java index fbbcdc7..f736897 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/pro/domain/ProRouteProcess.java +++ b/ktg-mes/src/main/java/com/ktg/mes/pro/domain/ProRouteProcess.java @@ -66,8 +66,8 @@ public class ProRouteProcess extends BaseEntity @Excel(name = "甘特图显示颜色") private String colorCode; - /** 是否更新生产工单进度 */ - private String updateFlag; + /** 是否关键工序 */ + private String keyFlag; /** 预留字段1 */ private String attr1; @@ -185,7 +185,15 @@ public class ProRouteProcess extends BaseEntity this.defaultSufTime = defaultSufTime; } - public Long getDefaultSufTime() + public String getKeyFlag() { + return keyFlag; + } + + public void setKeyFlag(String keyFlag) { + this.keyFlag = keyFlag; + } + + public Long getDefaultSufTime() { return defaultSufTime; } @@ -213,13 +221,7 @@ public class ProRouteProcess extends BaseEntity this.attr2 = attr2; } - public String getUpdateFlag() { - return updateFlag; - } - public void setUpdateFlag(String updateFlag) { - this.updateFlag = updateFlag; - } public String getAttr2() { @@ -260,7 +262,7 @@ public class ProRouteProcess extends BaseEntity ", defaultPreTime=" + defaultPreTime + ", defaultSufTime=" + defaultSufTime + ", colorCode='" + colorCode + '\'' + - ", updateFlag='" + updateFlag + '\'' + + ", keyFlag='" + keyFlag + '\'' + ", attr1='" + attr1 + '\'' + ", attr2='" + attr2 + '\'' + ", attr3=" + attr3 + diff --git a/ktg-mes/src/main/java/com/ktg/mes/pro/service/IProRouteProcessService.java b/ktg-mes/src/main/java/com/ktg/mes/pro/service/IProRouteProcessService.java index 38a5fce..1be8850 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/pro/service/IProRouteProcessService.java +++ b/ktg-mes/src/main/java/com/ktg/mes/pro/service/IProRouteProcessService.java @@ -1,6 +1,8 @@ package com.ktg.mes.pro.service; import java.util.List; + +import com.ktg.mes.pro.domain.ProFeedback; import com.ktg.mes.pro.domain.ProRouteProcess; /** @@ -48,6 +50,13 @@ public interface IProRouteProcessService */ public String checkUpdateFlagUnique(ProRouteProcess proRouteProcess); + /** + * 检查某个报工单对应的工序是否是关键工序 + * @param feedback + * @return + */ + public boolean checkKeyProcess(ProFeedback feedback); + /** * 查找上一个工序 * @param proRouteProcess diff --git a/ktg-mes/src/main/java/com/ktg/mes/pro/service/impl/ProRouteProcessServiceImpl.java b/ktg-mes/src/main/java/com/ktg/mes/pro/service/impl/ProRouteProcessServiceImpl.java index 524ee2f..bf0bdba 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/pro/service/impl/ProRouteProcessServiceImpl.java +++ b/ktg-mes/src/main/java/com/ktg/mes/pro/service/impl/ProRouteProcessServiceImpl.java @@ -1,14 +1,21 @@ package com.ktg.mes.pro.service.impl; import java.util.List; +import java.util.stream.Collectors; +import cn.hutool.core.collection.CollectionUtil; import com.ktg.common.constant.UserConstants; import com.ktg.common.utils.DateUtils; import com.ktg.common.utils.StringUtils; +import com.ktg.mes.md.domain.MdWorkstation; +import com.ktg.mes.md.mapper.MdWorkstationMapper; +import com.ktg.mes.pro.domain.*; +import com.ktg.mes.pro.mapper.ProRouteMapper; +import com.ktg.mes.pro.mapper.ProRouteProductMapper; +import com.ktg.mes.pro.mapper.ProWorkorderMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ktg.mes.pro.mapper.ProRouteProcessMapper; -import com.ktg.mes.pro.domain.ProRouteProcess; import com.ktg.mes.pro.service.IProRouteProcessService; /** @@ -20,9 +27,19 @@ import com.ktg.mes.pro.service.IProRouteProcessService; @Service public class ProRouteProcessServiceImpl implements IProRouteProcessService { + @Autowired + private ProRouteMapper proRouteMapper; + @Autowired private ProRouteProcessMapper proRouteProcessMapper; + + @Autowired + private ProRouteProductMapper proRouteProductMapper; + + @Autowired + private MdWorkstationMapper mdWorkstationMapper; + /** * 查询工艺组成 * @@ -77,6 +94,36 @@ public class ProRouteProcessServiceImpl implements IProRouteProcessService return UserConstants.UNIQUE; } + @Override + public boolean checkKeyProcess(ProFeedback feedback) { + //根据当前生产的产品获取对应的工艺路线 + Long routeId =-1L,processId = -1L; + ProRouteProduct param = new ProRouteProduct(); + param.setItemId(feedback.getItemId()); + List products = proRouteProductMapper.selectProRouteProductList(param); + if(!CollectionUtil.isNotEmpty(products)){ + products = products.stream().filter(item -> proRouteMapper.selectProRouteByRouteId(item.getRouteId()).getEnableFlag()==UserConstants.YES).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(products)){ + routeId = products.get(0).getRouteId(); + } + } + + //根据工作站获取工序 + MdWorkstation workstation = mdWorkstationMapper.selectMdWorkstationByWorkstationId(feedback.getWorkstationId()); + processId = workstation.getProcessId(); + + //再判断当前的工序在此工艺路线中是否是关键工序 + ProRouteProcess param2 = new ProRouteProcess(); + param2.setRouteId(routeId); + param2.setProcessId(processId); + param2.setKeyFlag(UserConstants.YES); + List processes = proRouteProcessMapper.selectProRouteProcessList(param2); + if(CollectionUtil.isNotEmpty(processes)){ + return true; + } + return false; + } + @Override public ProRouteProcess findPreProcess(ProRouteProcess proRouteProcess) { return proRouteProcessMapper.findPreProcess(proRouteProcess); diff --git a/ktg-mes/src/main/resources/mapper/pro/ProRouteProcessMapper.xml b/ktg-mes/src/main/resources/mapper/pro/ProRouteProcessMapper.xml index 95a1fa0..73f19a7 100644 --- a/ktg-mes/src/main/resources/mapper/pro/ProRouteProcessMapper.xml +++ b/ktg-mes/src/main/resources/mapper/pro/ProRouteProcessMapper.xml @@ -18,7 +18,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + @@ -31,7 +31,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select record_id, route_id, process_id, process_code, process_name, order_num, next_process_id, next_process_code, next_process_name, link_type, default_pre_time, default_suf_time, color_code,update_flag, remark, attr1, attr2, attr3, attr4, create_by, create_time, update_by, update_time from pro_route_process + select record_id, route_id, process_id, process_code, process_name, order_num, next_process_id, next_process_code, next_process_name, link_type, default_pre_time, default_suf_time, color_code,key_flag, remark, attr1, attr2, attr3, attr4, create_by, create_time, update_by, update_time from pro_route_process @@ -50,7 +50,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and default_pre_time = #{defaultPreTime} and default_suf_time = #{defaultSufTime} and color_code = #{colorCode} - and update_flag = #{updateFlag} + and key_flag = #{keyFlag} order by order_num asc @@ -72,7 +72,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"