src/main/java/com/zy/asrs/controller/MatController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/entity/InventoryCheckOrder.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/WorkMastScheduler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/MatController.java
@@ -69,7 +69,7 @@ EntityWrapper<Mat> wrapper = new EntityWrapper<>(); if (!Cools.isEmpty(condition)) { // wrapper.like("matnr", condition).or().like("maktx", condition); wrapper.like("matnr", condition).or().like("specs", condition); wrapper.like("matnr", condition).or().like("specs", condition).or().like("maktx", condition); } wrapper.orderBy("create_time", false); List<Mat> mats = matService.selectList(wrapper); src/main/java/com/zy/asrs/entity/InventoryCheckOrder.java
@@ -87,9 +87,11 @@ } switch (this.status){ case "1": return "未提交"; return "盘点中"; case "2": return "已提交"; return "盘点完"; case "3": return "已上报"; default: return ""; } src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -17,6 +17,7 @@ import com.zy.common.model.DetlDto; import com.zy.common.model.enums.WorkNoType; import com.zy.common.service.CommonService; import com.zy.common.utils.Synchro; import com.zy.nc.service.NccJcQilibcBarcodeflowWmsService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -794,8 +795,6 @@ } } //如果已经拣料回库,就需要取locNo字段 // String locNo =Cools.isEmpty(wrkMast.getLocNo())? wrkMast.getSourceLocNo():wrkMast.getLocNo(); // inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("loc_no",locNo)) iterator.remove(); iterator1.remove(); } @@ -827,7 +826,21 @@ if (!wrkDetlService.insert(wrkDetl)) { throw new CoolException("添加" + wrkMast.getWrkNo() + "盘点任务," + wrkDetl.getMatnr() + "商品," + wrkDetl.getBatch() + "批号任务明细失败"); } String locNo = Cools.isEmpty(wrkMast.getLocNo()) ? wrkMast.getSourceLocNo() : wrkMast.getLocNo(); List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("loc_no", locNo)); for (InventoryCheckOrderDetl checkOrderDetl : checkOrderDetls) { if (wrkDetl.getMatnr().equals(checkOrderDetl.getMatnr()) && Cools.eq(wrkDetl.getBatch(), checkOrderDetl.getBatch())) { checkOrderDetl.setCheckAnfme(wrkDetl.getAnfme()); checkOrderDetl.setStatus("2"); } else { InventoryCheckOrderDetl newDetl = new InventoryCheckOrderDetl(); Synchro.Copy(wrkDetl, newDetl); newDetl.setAnfme(0D); newDetl.setCheckAnfme(wrkDetl.getAnfme()); newDetl.setOrderNo(checkOrderDetl.getOrderNo()); newDetl.setStatus("2"); } } } List<WrkDetl> wrkDetls1 = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); for (WrkDetl wrkDetl : wrkDetls1) { src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -389,6 +389,10 @@ throw new CoolException("保存工作档明细失败"); } if (ioType == 107) { List<InventoryCheckOrderDetl> checkOrderDetls = checkOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("order_no", checkOrderNo).eq("loc_no", dto.getLocNo())); if (checkOrderDetls != null && !checkOrderDetls.isEmpty()) { throw new CoolException("该库位的盘点任务已经添加到了该库位中"); } InventoryCheckOrderDetl checkOrderDetl = new InventoryCheckOrderDetl(); checkOrderDetl.setOrderNo(checkOrderNo); checkOrderDetl.setMatnr(detlDto.getLocDetl().getMatnr()); @@ -396,6 +400,7 @@ checkOrderDetl.setBatch(detlDto.getLocDetl().getBatch()); checkOrderDetl.setLocNo(detlDto.getLocDetl().getLocNo()); checkOrderDetl.setAnfme(detlDto.getLocDetl().getAnfme()); checkOrderDetl.setIoTime(new Date()); checkOrderDetl.setStatus("0"); checkOrderDetlService.insert(checkOrderDetl); } src/main/java/com/zy/asrs/task/WorkMastScheduler.java
@@ -1,9 +1,17 @@ package com.zy.asrs.task; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; import com.zy.asrs.entity.InventoryCheckOrder; import com.zy.asrs.entity.InventoryCheckOrderDetl; import com.zy.asrs.entity.WrkMast; import com.zy.asrs.service.InventoryCheckOrderDetlService; import com.zy.asrs.service.InventoryCheckOrderService; import com.zy.asrs.service.WrkMastService; import com.zy.asrs.task.core.ReturnT; import com.zy.asrs.task.handler.WorkMastHandler; import com.zy.system.entity.Config; import com.zy.system.service.ConfigService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -26,6 +34,18 @@ @Autowired private WorkMastHandler workMastHandler; @Autowired private InventoryCheckOrderService inventoryCheckOrderService; @Autowired private InventoryCheckOrderDetlService inventoryCheckOrderDetlService; @Autowired private ConfigService configService; @Scheduled(cron = "0/3 * * * * ? ") public void execute(){ List<WrkMast> wrkMasts = wrkMastService.selectToBeCompleteData(); @@ -45,4 +65,64 @@ } } /** * 自动删除超过1天,无明细的盘点单 */ @Scheduled(cron = "0/3 * * * * ? ") public void execute2() { List<InventoryCheckOrder> inventoryCheckOrders = inventoryCheckOrderService.selectList(new EntityWrapper<InventoryCheckOrder>()); if (inventoryCheckOrders.isEmpty()) { return; } for (InventoryCheckOrder checkOrder : inventoryCheckOrders) { List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("order_no", checkOrder.getOrderNo())); if (checkOrderDetls.isEmpty() && System.currentTimeMillis() - checkOrder.getCreateTime().getTime() >= 1000 * 60 * 60 * 24) { if (!inventoryCheckOrderService.deleteById(checkOrder)) { log.error("盘点单[orderNo={}]删除失败", checkOrder.getOrderNo()); } else { log.info("盘点单[orderNo={}]删除成功", checkOrder.getOrderNo()); } } } } /** * 自动完结达到一定数量的盘点单 */ @Scheduled(cron = "0/30 * * * * ? ") public void execute3() { List<InventoryCheckOrder> inventoryCheckOrders = inventoryCheckOrderService.selectList(new EntityWrapper<InventoryCheckOrder>()); if (inventoryCheckOrders.isEmpty()) { return; } int num = 20; try { Config config = configService.selectConfigByCode("AutoLocMove"); if (Cools.isEmpty(config) || config.getValue().equals("false")) { } else { num = Integer.parseInt(config.getValue()); } } catch (Exception e) { } for (InventoryCheckOrder checkOrder : inventoryCheckOrders) { List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("order_no", checkOrder.getOrderNo())); boolean complete = true; for (InventoryCheckOrderDetl checkOrderDetl : checkOrderDetls) { if (!checkOrderDetl.getStatus().equals("2")) { complete = false; } } if (complete && checkOrderDetls.size() >= num) { checkOrder.setStatus("2"); if (!inventoryCheckOrderService.updateById(checkOrder)) { log.error("盘点单[orderNo={}]更新状态成功", checkOrder.getOrderNo()); } else { log.info("盘点单[orderNo={}]更新状态失败", checkOrder.getOrderNo()); } } } } }