diff --git a/src/main/java/com/spring/modules/material/dao/ProductionStockMapper.java b/src/main/java/com/spring/modules/material/dao/ProductionStockMapper.java index 104b155..1b8de61 100644 --- a/src/main/java/com/spring/modules/material/dao/ProductionStockMapper.java +++ b/src/main/java/com/spring/modules/material/dao/ProductionStockMapper.java @@ -57,4 +57,7 @@ public interface ProductionStockMapper { IPage soFinalRollSearch(Page page, @Param("query") SoFinalRollOutData data); + SoFinalRollOutData getRollBySysBatch(@Param("site") String site,@Param("systemBatchNo")String systemBatchNo); + + } diff --git a/src/main/java/com/spring/modules/material/service/Impl/PoReceiveServiceImpl.java b/src/main/java/com/spring/modules/material/service/Impl/PoReceiveServiceImpl.java index 2de7480..fd12c19 100644 --- a/src/main/java/com/spring/modules/material/service/Impl/PoReceiveServiceImpl.java +++ b/src/main/java/com/spring/modules/material/service/Impl/PoReceiveServiceImpl.java @@ -163,20 +163,35 @@ public class PoReceiveServiceImpl implements PoReceiveService { if(checkPartNo.size()==0){ throw new RuntimeException("物料不存在或者不在用"); } - Date currentDate = new Date(); - if(currentDate.after(inData.getExpiredDate())){ - throw new RuntimeException("该物料已过期,失效日期为"+DateUtil.getStringDate(inData.getExpiredDate())); + int days=45; + String getExpire=normalSearchMapper.getPartPropertiesValue(inData.getSite(),inData.getPartNo(),"P00009"); + if(getExpire==null){ + + }else { + if(Integer.parseInt(getExpire)>0){ + days= Integer.parseInt(getExpire); + } + } + + Date currentDate = new Date(); Calendar calendar = Calendar.getInstance(); calendar.setTime(currentDate); - - // 使用 Calendar 类的方法计算45天前的日期 - calendar.add(Calendar.DAY_OF_YEAR, -45); + // // 使用 Calendar 类的方法计算45天前的日期 + calendar.add(Calendar.DAY_OF_YEAR, days); Date pastDate = calendar.getTime(); - // Date futureDate = new Date(currentDate.getTime() - (45 * 24 * 60 * 60 * 1000)); - if(pastDate.after(inData.getManufactureDate())){ - throw new RuntimeException("该物料生产日期在45天以前,生产日期为"+DateUtil.getStringDate(inData.getManufactureDate())); + if(pastDate.after(inData.getExpiredDate())){ + throw new RuntimeException("该物料有效期不足"+days+"天."); } + // Calendar calendar = Calendar.getInstance(); + // calendar.setTime(currentDate); + // // 使用 Calendar 类的方法计算45天前的日期 + // calendar.add(Calendar.DAY_OF_YEAR, -45); + // Date pastDate = calendar.getTime(); + // // Date futureDate = new Date(currentDate.getTime() - (45 * 24 * 60 * 60 * 1000)); + // if(pastDate.after(inData.getManufactureDate())){ + // throw new RuntimeException("该物料生产日期在45天以前,生产日期为"+DateUtil.getStringDate(inData.getManufactureDate())); + // } for (int i = 0; i < inData.getRollNumber(); i++) { String rollNo= transNoControlService.transNo(inData.getSite(), "RollNo"); inData.setRollNo(rollNo); diff --git a/src/main/java/com/spring/modules/material/service/Impl/ProductionStockServiceImpl.java b/src/main/java/com/spring/modules/material/service/Impl/ProductionStockServiceImpl.java index 3efb7f4..7bbc9fa 100644 --- a/src/main/java/com/spring/modules/material/service/Impl/ProductionStockServiceImpl.java +++ b/src/main/java/com/spring/modules/material/service/Impl/ProductionStockServiceImpl.java @@ -156,6 +156,11 @@ public class ProductionStockServiceImpl implements ProductionStockService { @Override @Transactional public String saveStockCach(TransDetailsubCachData inData){ + SoFinalRollOutData rollNoOut=productionStockMapper.getRollBySysBatch(inData.getSite(),inData.getRollNo()); + if(rollNoOut==null){ + throw new RuntimeException("扫描的标签有误!"); + } + inData.setRollNo(rollNoOut.getFinalRollNo()); TransHeaderData searchData=new TransHeaderData(); searchData.setSite(inData.getSite()); searchData.setTransNo(inData.getTransNo()); diff --git a/src/main/resources/mapper/material/ProductionStockMapper.xml b/src/main/resources/mapper/material/ProductionStockMapper.xml index 791503f..3565504 100644 --- a/src/main/resources/mapper/material/ProductionStockMapper.xml +++ b/src/main/resources/mapper/material/ProductionStockMapper.xml @@ -173,5 +173,8 @@ - + \ No newline at end of file