From cb68c3e4547653ee7d308aa4da51f31363647a0f Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期四, 23 十一月 2023 18:09:43 +0800 Subject: [PATCH] 自动补货 --- src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java | 34 ++++++++++++++++++++++++++++++---- 1 files changed, 30 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java index 01ada7a..6a6a33f 100644 --- a/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java @@ -19,6 +19,7 @@ import com.zy.asrs.utils.SaasUtils; import com.zy.common.model.LocDto; import com.zy.system.entity.User; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -131,8 +132,8 @@ @Override - public ManLocDetl selectItem(String locNo, String matnr, String batch) { - return this.baseMapper.selectItem(locNo, matnr, batch); + public ManLocDetl selectItem(String locNo, String matnr, String batch, String csocode, String isoseq, String containerCode) { + return this.baseMapper.selectItem(locNo, matnr, batch,csocode,isoseq,containerCode); } @Override @@ -154,7 +155,13 @@ public void adjustLocDetl(LocDetlAdjustParam param, Long userId, User user) { Date now = new Date(); for (LocDetlAdjustParam.LocDetlAdjust locDetlAdjust : param.getList()) { - ManLocDetl manLocDetl = this.baseMapper.selectItem(param.getLocNo(), locDetlAdjust.getMatnr(), locDetlAdjust.getBatch()); + ManLocDetl manLocDetl = this.baseMapper.selectItem(param.getLocNo(), locDetlAdjust.getMatnr(), locDetlAdjust.getBatch(),locDetlAdjust.getThreeCode(),locDetlAdjust.getDeadTime(),locDetlAdjust.getSuppCode()); + + if(Cools.isEmpty(manLocDetl)){ + addManlocDetl(locDetlAdjust,param.getLocNo()); + continue; + } + this.baseMapper.delete(new EntityWrapper<ManLocDetl>() .eq("loc_no", param.getLocNo()).eq("matnr",locDetlAdjust.getMatnr())); Mat mat = matService.selectOne(new EntityWrapper<Mat>() @@ -230,10 +237,29 @@ private void wapperSetCondition(Wrapper wrapper,String column, String condition){ if(Cools.isEmpty(condition)){ - wrapper.isNull(column); + wrapper.andNew().eq(column,"").or().isNull(column); }else { wrapper.eq(column,condition); } } + private void addManlocDetl(LocDetlAdjustParam.LocDetlAdjust param, String locNo){ + Date now = new Date(); + ManLocDetl manLocDetl = new ManLocDetl(); + Node node = nodeService.selectOne(new EntityWrapper<Node>().eq("name", locNo)); + Mat mat = matService.selectByMatnr(param.getMatnr()); + BeanUtils.copyProperties(mat,manLocDetl); + manLocDetl.setNodeId(node.getId()); + manLocDetl.setBatch(param.getBatch()); + manLocDetl.setAnfme(param.getCount()); + manLocDetl.setContainerCode(param.getSuppCode()); + manLocDetl.setCsocode(param.getThreeCode()); + manLocDetl.setIsoseq(param.getDeadTime()); + manLocDetl.setCreateTime(now); + manLocDetl.setModiTime(now); + manLocDetl.setLocNo(locNo); + manLocDetl.setStatus(1); + this.insert(manLocDetl); + } + } -- Gitblit v1.9.1