diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java index 83ccdbc6..ce4ac105 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java @@ -220,7 +220,7 @@ public class AbnormalBillController { try{ return R.ok(abnormalBillService.anomalyReport(abnormalBill, abnormalBillDispose,ncGroupAndNcCodes,dutyCauseType,dutyType)); }catch(Exception e){ - return R.failed("质量异常提报失败,"+e.getMessage()); + return R.failed("质量异常提报失败:"+e.getMessage()); } } @@ -234,7 +234,7 @@ public class AbnormalBillController { try{ return R.ok(abnormalBillService.anomalyReportDevice(abnormalBill,abnormalBillDispose)); }catch (Exception e){ - return R.failed("设备异常提报失败,"+e.getMessage()); + return R.failed("设备异常提报失败:"+e.getMessage()); } } @@ -251,7 +251,7 @@ public class AbnormalBillController { try{ return R.ok( abnormalBillService.cancelBrowse(handle,cancelBrowse,code,cancelSendUserGroup)); }catch(Exception e){ - return R.failed("取消失败,"+e.getMessage()); + return R.failed("取消失败:"+e.getMessage()); } } @@ -260,7 +260,7 @@ public class AbnormalBillController { try{ return R.ok(abnormalBillService.backLog(abnormalBillDto)); }catch(Exception e){ - return R.failed("检索失败,"+e.getMessage()); + return R.failed("检索失败:"+e.getMessage()); } } @@ -275,7 +275,7 @@ public class AbnormalBillController { try{ return R.ok(abnormalBillService.findAllByAbnormalNo(abnormalBill)); }catch (Exception e){ - return R.failed("检索失败,"+e.getMessage()); + return R.failed("检索失败:"+e.getMessage()); } } @@ -288,7 +288,7 @@ public class AbnormalBillController { try{ return R.ok(abnormalBillService.findAllByAbnormalNoDevice(abnormalBill)); }catch (Exception e){ - return R.failed("设备异常响应检索失败,"+e.getMessage()); + return R.failed("设备异常响应检索失败:"+e.getMessage()); } } @@ -304,7 +304,7 @@ public class AbnormalBillController { abnormalBillService.resProcessing(abnormalBill); return R.ok(); }catch(Exception e){ - return R.failed("响应处理失败,"+e.getMessage()); + return R.failed("响应处理失败:"+e.getMessage()); } } @@ -320,7 +320,7 @@ public class AbnormalBillController { abnormalBillService.programConfirm(abnormalBill,abnormalBillDispose); return R.ok(); }catch (Exception e){ - return R.failed("方案确认失败,"+e.getMessage()); + return R.failed("方案确认失败:"+e.getMessage()); } } @@ -338,7 +338,7 @@ public class AbnormalBillController { abnormalBillService.dutyConfirm(abnormalBill,abnormalBillDispose,dutyCauseType,dutyType); return R.ok(); }catch(Exception e){ - return R.failed("判责提交失败,"+e.getMessage()); + return R.failed("判责提交失败:"+e.getMessage()); } } @@ -354,7 +354,7 @@ public class AbnormalBillController { abnormalBillService.anomalyShutDown(abnormalBill,abnormalBillDispose); return R.ok(); }catch (Exception e){ - return R.failed("闭环关闭失败,"+e.getMessage()); + return R.failed("闭环关闭失败:"+e.getMessage()); } } @@ -364,7 +364,7 @@ public class AbnormalBillController { try{ return R.ok(sfcDispatchCommonService.findResrceBySfc(sfcDispatch)); }catch (Exception e){ - return R.failed("根据sfc查找设备失败,"+e.getMessage()); + return R.failed("根据sfc查找设备失败:"+e.getMessage()); } } @@ -373,7 +373,7 @@ public class AbnormalBillController { try{ return R.ok(fileUploadedService.showFile(request,response)); }catch (Exception e){ - return R.failed("显示图片失败,"+e.getMessage()); + return R.failed("显示图片失败:"+e.getMessage()); } } @@ -384,7 +384,7 @@ public class AbnormalBillController { fileUploadedService.deleteFile(ftpPath,fileName); return R.ok(); }catch (Exception e){ - return R.failed("图片删除失败,"+e.getMessage()); + return R.failed("图片删除失败:"+e.getMessage()); } } 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 a13d38a5..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 @@ -5,10 +5,12 @@ import com.foreverwin.mesnac.anomaly.dto.AbnormalBillDto; import com.foreverwin.mesnac.anomaly.model.AbnormalBill; import com.foreverwin.mesnac.common.dto.ScrapDto; import com.foreverwin.mesnac.meapi.model.UserGroup; +import com.foreverwin.mesnac.production.model.SplitSfc; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; import java.util.List; +import java.util.Map; /** *

@@ -35,9 +37,9 @@ public interface AbnormalBillMapper extends BaseMapper { List findCountBySfc(@Param("site")String site, @Param("type")String type, @Param("sfc")String sfc, @Param("status")List status); - Integer findAbnormalMethodBySFC(@Param("site")String site,@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("sfc")String sfc); + List findScrapDtoBySfc(@Param("site")String site, @Param("mainSfc")String mainSfc,@Param("splitSfc")List splitSfc); List getQCAbnormalList(@Param("site") String site); 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 f2596b46..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 @@ -29,6 +29,8 @@ import com.foreverwin.mesnac.meapi.mapper.*; import com.foreverwin.mesnac.meapi.model.*; import com.foreverwin.mesnac.meapi.service.*; import com.foreverwin.mesnac.meapi.util.StringUtils; +import com.foreverwin.mesnac.production.model.SplitSfc; +import com.foreverwin.mesnac.production.service.SplitSfcService; import com.foreverwin.mesnac.quality.service.SelfReportService; import com.foreverwin.modular.core.exception.BaseException; import com.foreverwin.modular.core.exception.BusinessException; @@ -140,7 +142,10 @@ public class AbnormalBillServiceImpl extends ServiceImpl jgProductionIsScrap(String abnormalNo, String site, String sfc) { //查询该sfc在质量异常异常方案是否是报废,如果是,则大于1 - Integer num = abnormalBillMapper.findAbnormalMethodBySFC(site, sfc); - return num <= 0; + String abnormalBo = null; + if(!StringUtils.isBlank(abnormalNo)){ + abnormalBo = HandleEnum.ABNORMAL_BILL.getHandle(site,abnormalNo); + } + return abnormalBillMapper.findAbnormalMethodBySFC(site,abnormalBo, sfc); } @Override - public List getScrapDtoBysfc(String site, String sfc) { - //判断该产品条码是否已经报废 - if(this.jgProductionIsScrap(site,sfc)){ + public List getScrapDtoBysfc(String abnormalNo, String site, String sfc) { + if(StringUtil.isBlank(site)){ + site = CommonMethods.getSite(); + } + //根据用户提报上来的sfc和异常单查找主SFC + Map 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(); + splitSfc.setSite(site); + + //判断能否找到该主sfc。 + if(StringUtil.isBlank(mainSfc)){ + //判断该用户提报上来的sfc是否为空 + if(StringUtil.isBlank(sfc)){ + throw new BaseException("该异常单下没有报废的产品条码"); + } + + //如果不为空,则判断根据这个sfc能从Z_SPLIT_SFC表中查找到主SFC吗,然后在判断主SFC是否已经报废 + splitSfc.setSplitSfc(sfc); + splitSfcs = splitSfcService.selectList(splitSfc); + if(splitSfcs.size()>0){ + 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("该异常单下的产品条码不是报废"); + } + throw new BaseException("该产品条码的异常方案不是报废"); + } + }else if(StringUtil.isBlank(sfc)){ + //根据异常单找到了主sfc,并且sfc参数为空,找到异常单主sfc下拆分的次sfc + splitSfc.setSfc(mainSfc); + splitSfcs = splitSfcService.selectList(splitSfc); + } + List scrapDtoBySfc = abnormalBillMapper.findScrapDtoBySfc(site, mainSfc,splitSfcs); + + + + //如果用户提报上来的sfc不为空,并且不是主sfc,则把主sfc从scrapDtoBySfc去掉 + if(!StringUtil.isBlank(sfc) && !sfc.equals(mainSfc)){ + 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("该产品条码的异常方案不是报废"); } - List scrapDtoBySfc = abnormalBillMapper.findScrapDtoBySfc(site, sfc); + + //查找到责任人,放到表里 + 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 110d9dc5..2780c57c 100644 --- a/anomaly/src/main/resources/mapper/AbnormalBillMapper.xml +++ b/anomaly/src/main/resources/mapper/AbnormalBillMapper.xml @@ -1081,17 +1081,34 @@ - + SELECT zabv.SFC SFC,zabv.HANDLE HANDLE FROM Z_ABNORMAL_BILL_VIEW zabv - WHERE SITE = #{site} AND SFC = #{sfc} AND ABNORMAL_METHOD = 'C' + INNER JOIN (SELECT MAX(ZAB.HANDLE) HANDLE FROM Z_ABNORMAL_BILL_VIEW ZAB WHERE + ZAB.SITE = #{site} + + AND ZAB.SFC = #{sfc} + + + AND ZAB.HANDLE = #{abnormalBo} + + ) ZAB ON ZAB.HANDLE = zabv.HANDLE + WHERE zabv.SITE = #{site} + + AND zabv.SFC = #{sfc} + + + AND zabv.HANDLE = #{abnormalBo} + + AND ABNORMAL_METHOD = 'C' + 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 f3a65186..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 @@ -27,15 +28,16 @@ public interface AnomalyService { /** * 判断产品条码在质量异常中是否为报废 + * @Param abnormalNo * @param sfc * @return */ - boolean jgProductionIsScrap(String site,String sfc); + Map jgProductionIsScrap(String abnormalNo, String site, String sfc); /** * 检索 */ - List getScrapDtoBysfc(String site, String sfc); + List getScrapDtoBysfc(String abnormalNo,String site, String sfc); void anomalyReveseRepairShutDown(String abnormalNo); diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/SfcDispatchMapper.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/SfcDispatchMapper.java index 044d3c0f..fd7366f3 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/SfcDispatchMapper.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/SfcDispatchMapper.java @@ -47,7 +47,13 @@ public interface SfcDispatchMapper extends BaseMapper { @Param("modifyUser") String modifyUser, @Param("modifiedDateTime") LocalDateTime modifiedDateTime, @Param("workHour")BigDecimal workHour); - SfcDispatchDto findResrceBySfc(@Param("sfcDispatch")SfcDispatchDto sfcDispatch, @Param("site") String site, @Param("array") String[] array); + /** + * + * @param sfcDispatch + * @param site + * @return + */ + SfcDispatchDto findResrceBySfc(@Param("sfcDispatch")SfcDispatchDto sfcDispatch, @Param("site") String site); SfcDispatchDto findSfcDispatchBySfc(@Param("site")String site, @Param("dto")SfcDispatchDto sfcDispatch); diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/SfcDispatchServiceImpl.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/SfcDispatchServiceImpl.java index d31e9e7f..493b80f6 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/SfcDispatchServiceImpl.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/SfcDispatchServiceImpl.java @@ -694,7 +694,7 @@ public class SfcDispatchServiceImpl extends ServiceImpl SITE = #{site} - - - AND SFC = #{sfcDispatch.sfc} - - - + AND RESRCE IS NOT NULL + AND SFC = #{sfcDispatch.sfc} + AND MODIFIED_DATE_TIME = ( + SELECT MAX(zsd2.MODIFIED_DATE_TIME) FROM Z_SFC_DISPATCH zsd2 + WHERE SFC=#{sfcDispatch.sfc} AND zsd2.RESRCE IS NOT NULL + ) + diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/NcCodeServiceImpl.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/NcCodeServiceImpl.java index 10d4c511..54885741 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/NcCodeServiceImpl.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/NcCodeServiceImpl.java @@ -84,6 +84,9 @@ public class NcCodeServiceImpl extends ServiceImpl impleme @Override public List findNcCodeDescriptionByNcCode(String ncCode) { String site = CommonMethods.getSite(); + if(StringUtils.isBlank(ncCode)){ + return null; + } String locale = LocaleContextHolder.getLocale().getLanguage(); String[] split = ncCode.split(","); diff --git a/production/src/main/java/com/foreverwin/mesnac/production/controller/SfcScrapController.java b/production/src/main/java/com/foreverwin/mesnac/production/controller/SfcScrapController.java index eb582857..4158f1a5 100644 --- a/production/src/main/java/com/foreverwin/mesnac/production/controller/SfcScrapController.java +++ b/production/src/main/java/com/foreverwin/mesnac/production/controller/SfcScrapController.java @@ -138,11 +138,11 @@ public class SfcScrapController { * @return */ @GetMapping("/getScrapDtoBysfc") - public R getScrapDtoBysfc(String site,String sfc){ + public R getScrapDtoBysfc(String site,String abnormalNo,String sfc){ try{ - return R.ok(anomalyService.getScrapDtoBysfc(site,sfc)); + return R.ok(anomalyService.getScrapDtoBysfc(abnormalNo,site,sfc)); }catch (Exception e){ - return R.failed("产品报废检索报错"+e.getMessage()); + return R.failed("产品报废检索报错:"+e.getMessage()); } } diff --git a/production/src/main/java/com/foreverwin/mesnac/production/mapper/SplitSfcMapper.java b/production/src/main/java/com/foreverwin/mesnac/production/mapper/SplitSfcMapper.java index 4ef0f0ca..4ca6d14e 100644 --- a/production/src/main/java/com/foreverwin/mesnac/production/mapper/SplitSfcMapper.java +++ b/production/src/main/java/com/foreverwin/mesnac/production/mapper/SplitSfcMapper.java @@ -21,4 +21,5 @@ public interface SplitSfcMapper extends BaseMapper { SfcDto getSfcData(@Param("handle") String handle); SplitSfcDto getAbnormalQty(@Param("site") String site, @Param("sfc") String sfc, @Param("operation") String operation,@Param("abnormalNo") String abnormalNo); + } \ No newline at end of file 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/SfcScrapService.java b/production/src/main/java/com/foreverwin/mesnac/production/service/SfcScrapService.java index 8903d827..46ac41b1 100644 --- a/production/src/main/java/com/foreverwin/mesnac/production/service/SfcScrapService.java +++ b/production/src/main/java/com/foreverwin/mesnac/production/service/SfcScrapService.java @@ -29,6 +29,11 @@ public interface SfcScrapService extends IService { List selectList(SfcScrap sfcScrap); + /** + * 报废sfc,报废SFC的全部数量 + * @param param + * @return + */ List scrap(HashMap param) ; public void generatorWord(String shopOrder, String sfc, HttpServletResponse response, HttpServletRequest request); 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 d0124891..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 @@ -12,6 +12,7 @@ import com.foreverwin.mesnac.common.util.StringUtil; import com.foreverwin.mesnac.meapi.mapper.SfcMapper; import com.foreverwin.mesnac.meapi.model.Sfc; import com.foreverwin.mesnac.production.mapper.SfcScrapMapper; +import com.foreverwin.mesnac.production.mapper.SplitSfcMapper; import com.foreverwin.mesnac.production.model.SfcScrap; import com.foreverwin.mesnac.production.service.PodTemplateService; import com.foreverwin.mesnac.production.service.SfcScrapService; @@ -77,6 +78,9 @@ public class SfcScrapServiceImpl extends ServiceImpl i @Autowired private UserService userService; + @Autowired + private SplitSfcMapper splitSfcMapper; + @Override public IPage selectPage(FrontPage frontPage, SfcScrap sfcScrap) { QueryWrapper queryWrapper = new QueryWrapper<>(); @@ -92,6 +96,7 @@ public class SfcScrapServiceImpl extends ServiceImpl i } + @Override public List scrap(HashMap param) { String user = CommonMethods.getUser(); @@ -110,7 +115,6 @@ public class SfcScrapServiceImpl extends ServiceImpl i } } - String str = JSONUtil.toJsonStr(param.get("sfcScrap")); List _sfcScrapList = JSONArray.parseArray(str, SfcScrap.class); List sfcScrapsList = new ArrayList<>(); @@ -136,7 +140,6 @@ public class SfcScrapServiceImpl extends ServiceImpl i throw new BaseException("该sfc不存在,不能报废"); } - if(!StringUtil.isBlank(sfcScraps.getOperation())){ String[] split = sfcScraps.getOperation().split("/"); sfcScrap.setOperation(split[0]); @@ -144,16 +147,19 @@ public class SfcScrapServiceImpl extends ServiceImpl i } sfcScrap.setType(type.toString()); sfcScrap.setReason(reason); + //判断该SFC的数量是否>=0; + if(sfc.getQty() <= 0){ + 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())); + podTemplateService.sendErp(sfcScrap.getSfc(),sfcScrap.getStepId(),BigDecimal.valueOf(0L),BigDecimal.valueOf(sfcScrap.getQty()),BigDecimal.valueOf(0L)); try{ //调用mes公共接口,报废 @@ -165,7 +171,6 @@ public class SfcScrapServiceImpl extends ServiceImpl i throw new BaseException("调用mes公共接口失败"+e.getMessage()); } - sfcScrapsList.add(sfcScrap); } //保存 diff --git a/production/src/main/java/com/foreverwin/mesnac/production/service/impl/SplitSfcServiceImpl.java b/production/src/main/java/com/foreverwin/mesnac/production/service/impl/SplitSfcServiceImpl.java index 890b58ec..a3a781c6 100644 --- a/production/src/main/java/com/foreverwin/mesnac/production/service/impl/SplitSfcServiceImpl.java +++ b/production/src/main/java/com/foreverwin/mesnac/production/service/impl/SplitSfcServiceImpl.java @@ -101,6 +101,9 @@ public class SplitSfcServiceImpl extends ServiceImpl i if (sfcDto==null){ throw new BaseException("未找到闭环关闭的质量异常"); } + if(StringUtil.isBlank(sfcDto.getNcQty())){ + throw new BaseException("质量异常提报不良品数量为空,不能拆分"); + } sfcData.setQty(Double.valueOf(sfcDto.getNcQty())); sfcData.setAbnormalNo(sfcDto.getAbnormalNo()); return sfcData; 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 @@ +