自动化立体仓库 - WMS系统
lty
3 天以前 c6e32e5da5d30ce2f74f0e32c3290d421c0951f2
src/main/java/com/zy/asrs/task/OrderToSortLineScheduler.java
@@ -2,6 +2,7 @@
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.OrderToLine;
import com.zy.asrs.service.*;
@@ -29,6 +30,8 @@
    private BasArmRulesService basArmRulesService;
    @Autowired
    private OrderToLineHandler orderToLineHandler;
    @Autowired
    private MatService matService;
    @Autowired
    private BasArmMastSignService basArmMastSignService;
@@ -62,17 +65,24 @@
                    }
                    List<ItemUtilParam.Item> items = new ArrayList<>();
                    for (OrderDetlPakin orderDetl:orderDetlPakinList){
                        Integer number =  basArmRulesService.getNumber(orderDetl.getWeight(),orderDetl.getVolume(),orderDetl.getManLength(),orderDetl.getWidth(),orderDetl.getHeight());
                        Mat mat = matService.selectByMatnr(orderDetl.getMatnr());
                        Integer number =  basArmRulesService.getNumber(mat.getWeight(),mat.getVolume(),mat.getManLength(),mat.getWidth(),mat.getHeight());
                        if (number == null) {
                            BasArmRules basArmRules = new BasArmRules();
                            basArmRules.setMaterialHeight(orderDetl.getHeight());
                            basArmRules.setMaterialWeight(orderDetl.getWeight());
                            basArmRules.setMaterialLength(orderDetl.getManLength());
                            basArmRules.setMaterialWidth(orderDetl.getWidth());
                            basArmRules.setMaterialHeight(mat.getHeight());
                            basArmRules.setMaterialWeight(mat.getWeight());
                            basArmRules.setMaterialLength(mat.getManLength());
                            basArmRules.setMaterialWidth(mat.getWidth());
                            basArmRulesService.insert(basArmRules);
                            return;
                        } else if (number == 0){
                            return;
                            Integer status =  basArmRulesService.getStatus(orderDetl.getWeight(),orderDetl.getVolume(),orderDetl.getManLength(),orderDetl.getWidth(),orderDetl.getHeight());
                            if (!Cools.isEmpty(status) && status == 2){
                                continue;
                            } else {
                                return;
                            }
                        }
                        String name = ToSortLineUtils.MergerParameter(orderDetl.getMatnr(),orderDetl.getStandby3(),orderDetl.getStandby1(),orderDetl.getStandby2());
                        int maxCapacity = number;