自动化立体仓库 - WMS系统
#
lsh
2024-07-14 1ef5306b1fa675e7650c049e16ba59743e3e8cc5
src/main/java/com/zy/asrs/task/handler/BareBoardHandler.java
@@ -12,6 +12,7 @@
import com.zy.asrs.service.*;
import com.zy.asrs.task.AbstractHandler;
import com.zy.asrs.task.core.ReturnT;
import com.zy.asrs.utils.CodeDetectionUtil;
import com.zy.asrs.utils.Utils;
import com.zy.common.model.enums.WorkNoType;
import com.zy.common.service.CommonService;
@@ -160,6 +161,8 @@
                return null;
            }
            ArrayList<Integer> crns =new ArrayList<>();
            ArrayList<Integer> crnList =new ArrayList<>();
            int[] crnCount = new int[7];
            crns.add(1);
            crns.add(2);
            crns.add(3);
@@ -169,6 +172,30 @@
            crns.add(7);
            boolean sign = true;
            for (Integer crnNo : crns){
                int crnCountD = locMastService.selectCount(new EntityWrapper<LocMast>().eq("loc_sts", "D").eq("crn_no", crnNo));
                crnCount[crnNo-1] = crnCountD;
            }
            crnList.add(CodeDetectionUtil.crnCodeDetectionMax(new int[]{crnCount[0],crnCount[1]})[0]+1);
            crnList.add(CodeDetectionUtil.crnCodeDetectionMax(new int[]{crnCount[2],crnCount[3],crnCount[4]})[0]+3);
            crnList.add(CodeDetectionUtil.crnCodeDetectionMaxT(new int[]{crnCount[2],crnCount[3],crnCount[4]},crnList.get(1))[0]+3);
            crnList.add(CodeDetectionUtil.crnCodeDetectionMax(new int[]{crnCount[5],crnCount[6]})[0]+6);
            crnList.add(1);
            crnList.add(2);
            crnList.add(3);
            crnList.add(4);
            crnList.add(5);
            crnList.add(6);
            crnList.add(7);
            for (Integer crnNo : crnList){
                // 检测路径
                Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
                        .eq("type_no", 110)
                        .eq("stn_no", staNo)
                        .eq("crn_no", crnNo);
                StaDesc staDesc = staDescService.selectOne(wrapper);
                if (Cools.isEmpty(staDesc)){
                    continue;
                }
                BasCrnp basCrnp = basCrnpService.selectById(crnNo);
                if (basCrnp.getCrnSts()!=3 || !basCrnp.getOutEnable().equals("Y")){
                    continue;