src/main/java/com/zy/asrs/entity/param/OrderToLine.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/StaDescServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/OrderToSortLineScheduler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/entity/param/OrderToLine.java
New file @@ -0,0 +1,68 @@ package com.zy.asrs.entity.param; import com.zy.common.model.MesPakoutParam; import lombok.Data; import java.util.ArrayList; import java.util.List; @Data public class OrderToLine { /** * 单据编号 */ private String OrderNo; /** * 时间戳 */ private Long createTime; /** * 物料列表 */ private List<MatList> matList = new ArrayList<>(); @Data public static class MatList { // Sku\客人型号\分拣属性1\不可为空\扫码可获取 private String sku; // Po\客人PO\分拣属性2(可人工开关)\可以为空字符串,非NULL\扫码可获取 private String po; //箱数 private Float ctns; //条码值\非分拣属性(可人工开关)\不可为空\扫码可获取 private String upc; //标识:\非分拣属性 //1:执行分拣 //0:不分拣,在线体循环 private Integer sign; //货源\非分拣属性(不下发,数据在条码中,需上报) private String supplier; //绑定标记(标识相同必须去同一个分拣口) private Long binding_tags; public MatList() { } public MatList(String sku, String po) { this.sku = sku; this.po = po; } public MatList(String sku, String po, Float ctns, String upc, Integer sign, String supplier, Long binding_tags) { this.sku = sku; this.po = po; this.ctns = ctns; this.upc = upc; this.sign = sign; this.supplier = supplier; this.binding_tags = binding_tags; } } } src/main/java/com/zy/asrs/service/impl/StaDescServiceImpl.java
@@ -42,7 +42,7 @@ Integer wrkRgv1 = wrkMastStaMapper.wrkCount1(); Integer wrkRgv2 = wrkMastStaMapper.wrkCount2(); Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>(); Wrapper<StaDesc> wrapper = new EntityWrapper<>(); // ✅ 如果 wrkRgv1 < wrkRgv2,则多加一个条件 if (wrkRgv1 < wrkRgv2) { src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -364,7 +364,7 @@ wrkMast.setEmptyMk("N"); // 空板 wrkMast.setLinkMis("N"); wrkMast.setBarcode(locMast.getBarcode()); if (Boolean.parseBoolean(config.getValue()) && locMastRgv.getLocNo() != null) { //若有空库位且配置允许则绑定其备料库位号 if (Boolean.parseBoolean(config.getValue()) && locMastRgv.getLocNo() != null && ioType != 107) { //若有空库位且配置允许则绑定其备料库位号 wrkMast.setLocNo(locMastRgv.getLocNo()); wrkMast.setTakeNone("0"); //0rgv未取,1rgv已取货 } @@ -394,16 +394,13 @@ } } //修改agv备料区状态 if(locMastRgv.getLocSts().equals("O")){ if(locMastRgv.getLocSts().equals("O") && ioType != 107){ locMastRgv.setLocSts("S"); locMastRgv.setModiUser(userId); locMastRgv.setModiTime(now); if (!locMastService.updateById(locMastRgv)) { throw new CoolException("预约agv备料区库位状态失败,库位号:"+locMastRgv.getLocNo()); } }else{ throw new CoolException(locMastRgv.getLocNo() + "备料区不是空库位状态"); } // 修改库位状态: F.在库 ====>>> R.出库预约/P.拣料/盘点/并板出库中 locMast = locMastService.selectById(dto.getLocNo()); src/main/java/com/zy/asrs/task/OrderToSortLineScheduler.java
New file @@ -0,0 +1,17 @@ package com.zy.asrs.task; import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @Slf4j @Component //订单下发至分拣线 public class OrderToSortLineScheduler { // @Scheduled(cron = "0/3 * * * * ? ") private void orderToSortLine() { } }