From fb2e89d3fea8fd0855cbaf0df452eaa71526326b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=98=89=E4=BC=9F?= <1724121454@qq.com> Date: Fri, 27 Aug 2021 10:39:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=A7=E5=93=81=E6=8A=A5=E5=BA=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../anomaly/mapper/AbnormalBillMapper.java | 3 +- .../service/impl/AbnormalBillServiceImpl.java | 35 +++++++++++++++---- .../resources/mapper/AbnormalBillMapper.xml | 4 +-- .../mesnac/common/dto/ScrapDto.java | 10 ++++++ .../mesnac/common/service/AnomalyService.java | 3 +- .../mesnac/production/model/SfcScrap.java | 15 +++++++- .../service/impl/SfcScrapServiceImpl.java | 3 +- .../main/resources/mapper/SfcScrapMapper.xml | 8 +++-- 8 files changed, 65 insertions(+), 16 deletions(-) diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/mapper/AbnormalBillMapper.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/mapper/AbnormalBillMapper.java index 8109ce9b..3e02f6b1 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/mapper/AbnormalBillMapper.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/mapper/AbnormalBillMapper.java @@ -10,6 +10,7 @@ import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; import java.util.List; +import java.util.Map; /** *

@@ -36,7 +37,7 @@ public interface AbnormalBillMapper extends BaseMapper { List findCountBySfc(@Param("site")String site, @Param("type")String type, @Param("sfc")String sfc, @Param("status")List status); - String findAbnormalMethodBySFC(@Param("site")String site,@Param("abnormalBo")String abnormalBo,@Param("sfc")String sfc); + Map findAbnormalMethodBySFC(@Param("site")String site, @Param("abnormalBo")String abnormalBo, @Param("sfc")String sfc); List findScrapDtoBySfc(@Param("site")String site, @Param("mainSfc")String mainSfc,@Param("splitSfc")List splitSfc); diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java index cd1e14fd..1aa56928 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java @@ -1149,7 +1149,7 @@ public class AbnormalBillServiceImpl extends ServiceImpl jgProductionIsScrap(String abnormalNo, String site, String sfc) { //查询该sfc在质量异常异常方案是否是报废,如果是,则大于1 String abnormalBo = null; if(!StringUtils.isBlank(abnormalNo)){ @@ -1164,7 +1164,13 @@ public class AbnormalBillServiceImpl extends ServiceImpl map = this.jgProductionIsScrap(abnormalNo, site, sfc); + String mainSfc = null; + String abnormalBo = null; + if(map != null){ + mainSfc = map.get("SFC"); + abnormalBo = map.get("HANDLE"); + } List splitSfcs = null; SplitSfc splitSfc = new SplitSfc(); @@ -1181,7 +1187,9 @@ public class AbnormalBillServiceImpl extends ServiceImpl0){ - mainSfc = this.jgProductionIsScrap(abnormalNo, site, splitSfcs.get(0).getSfc()); + Map map1 = this.jgProductionIsScrap(abnormalNo, site, splitSfcs.get(0).getSfc()); + mainSfc = map1.get("SFC"); + abnormalBo = map1.get("HANDLE"); }else{ if(!StringUtil.isBlank(sfc) && !StringUtil.isBlank(abnormalNo)){ throw new BaseException("该异常单下的产品条码不是报废"); @@ -1194,18 +1202,31 @@ public class AbnormalBillServiceImpl extends ServiceImpl scrapDtoBySfc = abnormalBillMapper.findScrapDtoBySfc(site, mainSfc,splitSfcs); + + + //如果用户提报上来的sfc不为空,并且不是主sfc,则把主sfc从scrapDtoBySfc去掉 if(!StringUtil.isBlank(sfc) && !sfc.equals(mainSfc)){ - for(ScrapDto scrap:scrapDtoBySfc){ - if(scrap.getSfc().equals(mainSfc)){ - scrapDtoBySfc.remove(scrap); - break; + for (int i = 0; i < scrapDtoBySfc.size(); i++) { + if(scrapDtoBySfc.get(i).getSfc().equals(mainSfc)){ + scrapDtoBySfc.remove(scrapDtoBySfc.get(i)); + continue; } } } if(scrapDtoBySfc.size() <= 0){ throw new BaseException("该产品条码的异常方案不是报废"); } + + //查找到责任人,放到表里 + AbnormalBillDispose abnormalBillDispose = new AbnormalBillDispose(); + abnormalBillDispose.setAbnormalBillBo(abnormalBo); + List abnormalBillDisposes = abnormalBillDisposeService.selectList(abnormalBillDispose); + if(abnormalBillDisposes.size() > 0){ + for (int i = 0; i < scrapDtoBySfc.size(); i++) { + scrapDtoBySfc.get(i).setDutyUser(abnormalBillDisposes.get(0).getPrincipalUser()); + } + } return scrapDtoBySfc; } diff --git a/anomaly/src/main/resources/mapper/AbnormalBillMapper.xml b/anomaly/src/main/resources/mapper/AbnormalBillMapper.xml index f8a6c614..2780c57c 100644 --- a/anomaly/src/main/resources/mapper/AbnormalBillMapper.xml +++ b/anomaly/src/main/resources/mapper/AbnormalBillMapper.xml @@ -1081,8 +1081,8 @@ - + SELECT zabv.SFC SFC,zabv.HANDLE HANDLE FROM Z_ABNORMAL_BILL_VIEW zabv INNER JOIN (SELECT MAX(ZAB.HANDLE) HANDLE FROM Z_ABNORMAL_BILL_VIEW ZAB WHERE ZAB.SITE = #{site} diff --git a/common/src/main/java/com/foreverwin/mesnac/common/dto/ScrapDto.java b/common/src/main/java/com/foreverwin/mesnac/common/dto/ScrapDto.java index 0d3c933b..912e55ba 100644 --- a/common/src/main/java/com/foreverwin/mesnac/common/dto/ScrapDto.java +++ b/common/src/main/java/com/foreverwin/mesnac/common/dto/ScrapDto.java @@ -26,6 +26,8 @@ public class ScrapDto { private String type; + private String dutyUser; + public String getSfc() { return sfc; } @@ -105,4 +107,12 @@ public class ScrapDto { public void setType(String type) { this.type = type; } + + public String getDutyUser() { + return dutyUser; + } + + public void setDutyUser(String dutyUser) { + this.dutyUser = dutyUser; + } } diff --git a/common/src/main/java/com/foreverwin/mesnac/common/service/AnomalyService.java b/common/src/main/java/com/foreverwin/mesnac/common/service/AnomalyService.java index ed2f0609..c8a7a193 100644 --- a/common/src/main/java/com/foreverwin/mesnac/common/service/AnomalyService.java +++ b/common/src/main/java/com/foreverwin/mesnac/common/service/AnomalyService.java @@ -3,6 +3,7 @@ package com.foreverwin.mesnac.common.service; import com.foreverwin.mesnac.common.dto.ScrapDto; import java.util.List; +import java.util.Map; /** * @Description TODO @@ -31,7 +32,7 @@ public interface AnomalyService { * @param sfc * @return */ - String jgProductionIsScrap(String abnormalNo,String site,String sfc); + Map jgProductionIsScrap(String abnormalNo, String site, String sfc); /** * 检索 diff --git a/production/src/main/java/com/foreverwin/mesnac/production/model/SfcScrap.java b/production/src/main/java/com/foreverwin/mesnac/production/model/SfcScrap.java index be8fee96..d3cb4ee7 100644 --- a/production/src/main/java/com/foreverwin/mesnac/production/model/SfcScrap.java +++ b/production/src/main/java/com/foreverwin/mesnac/production/model/SfcScrap.java @@ -85,6 +85,11 @@ public class SfcScrap extends Model { @TableField("MODIFIED_DATE_TIME") private LocalDateTime modifiedDateTime; + @TableField("DUTY_USER") + private String dutyUser; + + + public String getHandle() { return handle; @@ -182,7 +187,15 @@ public class SfcScrap extends Model { this.modifiedDateTime = modifiedDateTime; } -public static final String HANDLE = "HANDLE"; + public String getDutyUser() { + return dutyUser; + } + + public void setDutyUser(String dutyUser) { + this.dutyUser = dutyUser; + } + + public static final String HANDLE = "HANDLE"; public static final String SITE = "SITE"; diff --git a/production/src/main/java/com/foreverwin/mesnac/production/service/impl/SfcScrapServiceImpl.java b/production/src/main/java/com/foreverwin/mesnac/production/service/impl/SfcScrapServiceImpl.java index 6be7d012..2d545a37 100644 --- a/production/src/main/java/com/foreverwin/mesnac/production/service/impl/SfcScrapServiceImpl.java +++ b/production/src/main/java/com/foreverwin/mesnac/production/service/impl/SfcScrapServiceImpl.java @@ -152,13 +152,14 @@ public class SfcScrapServiceImpl extends ServiceImpl i throw new BaseException("该sfc的数量为0,不能报废"); } sfcScrap.setQty(sfc.getQty()); + sfcScrap.setDutyUser(sfcScraps.getDutyUser()); sfcScrap.setCreatedUser(user); sfcScrap.setCreatedDateTime(now); sfcScrap.setModifiedUser(user); sfcScrap.setModifiedDateTime(now); //向生产派工那边发送数据 - //podTemplateService.sendErp(sfcScrap.getSfc(),sfcScrap.getStepId(),BigDecimal.valueOf(0L),BigDecimal.valueOf(sfcScrap.getQty()),BigDecimal.valueOf(0L)); + podTemplateService.sendErp(sfcScrap.getSfc(),sfcScrap.getStepId(),BigDecimal.valueOf(0L),BigDecimal.valueOf(sfcScrap.getQty()),BigDecimal.valueOf(0L)); try{ //调用mes公共接口,报废 diff --git a/production/src/main/resources/mapper/SfcScrapMapper.xml b/production/src/main/resources/mapper/SfcScrapMapper.xml index e9c541bb..f1594657 100644 --- a/production/src/main/resources/mapper/SfcScrapMapper.xml +++ b/production/src/main/resources/mapper/SfcScrapMapper.xml @@ -431,20 +431,22 @@