*
L
2 天以前 538ce7e95297953686db099cacd63e76d2d83154
*
4个文件已修改
204 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/BasCrnpController.java 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 113 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/utils/LocFCSUtils.java 47 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/deviceOperate/crnOperate.html 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/BasCrnpController.java
@@ -139,21 +139,21 @@
                    }
                }
            }
//            if (Cools.isEmpty(basCrnpParam.getLocMastDemoE())){
//                return R.error("请输入测试空库位列表").add("请输入测试空库位列表");
//            } else {
//                String[] split = basCrnpParam.getLocMastDemoE().split(";");
//                if (split.length!=basCrnpParam.getLocMastDemoCount()){
//                    return R.error("输入测试空库位列表数量不匹配").add("输入测试空库位列表数量不匹配");
//                }
//                basCrnpParam.setLocMastDemoListE(new ArrayList<>(Arrays.asList(split)));
//                for (String locNo : basCrnpParam.getLocMastDemoListE()){
//                    boolean locNoDetection = CodeDetectionUtil.locNoDetection(locNo);
//                    if (!locNoDetection){
//                        return R.error("输入测试空库位异常").add("输入测试空库位异常");
//                    }
//                }
//            }
            if (Cools.isEmpty(basCrnpParam.getLocMastDemoE())){
                return R.error("请输入测试空库位列表").add("请输入测试空库位列表");
            } else {
                String[] split = basCrnpParam.getLocMastDemoE().split(";");
                if (split.length!=basCrnpParam.getLocMastDemoCount()){
                    return R.error("输入测试空库位列表数量不匹配").add("输入测试空库位列表数量不匹配");
                }
                basCrnpParam.setLocMastDemoListE(new ArrayList<>(Arrays.asList(split)));
                for (String locNo : basCrnpParam.getLocMastDemoListE()){
                    boolean locNoDetection = CodeDetectionUtil.locNoDetection(locNo);
                    if (!locNoDetection){
                        return R.error("输入测试空库位异常").add("输入测试空库位异常");
                    }
                }
            }
            if (Cools.isEmpty(basCrnpParam.getStaOutDemo())){
                return R.error("请输入测试出库站").add("请输入测试出库站");
@@ -199,12 +199,14 @@
            }
            crnProtocol.setLocMastDemoCount(basCrnpParam.getLocMastDemoCount());
            crnProtocol.setLocMastDemoListF(basCrnpParam.getLocMastDemoListF());
            ArrayList<String[]> locS = LocFCSUtils.getLocS(basCrnpParam.getLocMastDemoListF());
            crnProtocol.setLocMastDemoListE(basCrnpParam.getLocMastDemoListE());
            ArrayList<String[]> locSF = LocFCSUtils.getLocS(basCrnpParam.getLocMastDemoListF());
            ArrayList<String[]> locSE = LocFCSUtils.getLocS(basCrnpParam.getLocMastDemoListE());
            ArrayList<String[]> locS = LocFCSUtils.updateLocSInPlace(locSF,locSE);
//            crnProtocol.setLocMastDemoListE(basCrnpParam.getLocMastDemoListE());
            ArrayList<String> locMastDemoList = new ArrayList<>();
            locMastDemoList.addAll(basCrnpParam.getLocMastDemoListF());
//            locMastDemoList.addAll(basCrnpParam.getLocMastDemoListF());
            locMastDemoList.addAll(basCrnpParam.getLocMastDemoListE());
            crnProtocol.setLocMastDemoList(locMastDemoList);
            crnProtocol.setLocMastDemoListSign(locS);
            crnProtocol.setStaOutDemo(basCrnpParam.getStaOutDemo());
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2818,37 +2818,47 @@
                    if (basCrnp.getInEnable().equals("Y")) {
                        boolean crnStnToLocDemo = this.crnStnToLocDemo(crnSlave, crnProtocol);//  入库
                        if (crnStnToLocDemo){
                            crnProtocol.setSignIntOut(true);
                            crnProtocol.setLastIo("O");
                        } else if (!crnProtocol.isSignIntOut()){
                            crnProtocol.setLastIo("O");
                        }
                    } else if (basCrnp.getOutEnable().equals("Y")) {
                        boolean locToCrnStnDemo = this.locToCrnStnDemo(crnSlave, crnProtocol);//  出库
                        if (locToCrnStnDemo && crnProtocol.isSignIntOut()){
                        if (!crnProtocol.isSignIntOut()){
                            crnProtocol.setLastIo("I");
                        } else if (locToCrnStnDemo){
                            crnProtocol.setLastIo("I");
                            crnProtocol.setSignIntOut(true);
                        } else if (!crnProtocol.isSignIntOut()){
                            crnProtocol.setLastIo("I");
                        } else {
                            boolean locToCrnStnDemo = this.locToCrnStnDemo(crnSlave, crnProtocol);//  出库
                            if (locToCrnStnDemo && crnProtocol.isSignIntOut()){
                                crnProtocol.setLastIo("I");
                            } else if (locToCrnStnDemo){
                                crnProtocol.setLastIo("I");
                                crnProtocol.setSignIntOut(true);
                            } else if (!crnProtocol.isSignIntOut()){
                                crnProtocol.setLastIo("I");
                            }
                        }
                    }
                }
                // 如果最近一次是出库模式
                else if (crnProtocol.getLastIo().equals("O")) {
                    if (basCrnp.getOutEnable().equals("Y")) {
                        boolean locToCrnStnDemo = this.locToCrnStnDemo(crnSlave, crnProtocol);//  出库
                        if (locToCrnStnDemo && crnProtocol.isSignIntOut()){
                        if (!crnProtocol.isSignIntOut()) {
                            crnProtocol.setLastIo("I");
                        } else if (locToCrnStnDemo){
                            crnProtocol.setLastIo("I");
                            crnProtocol.setSignIntOut(true);
                        } else if (!crnProtocol.isSignIntOut()){
                            crnProtocol.setLastIo("I");
                        } else {
                            boolean locToCrnStnDemo = this.locToCrnStnDemo(crnSlave, crnProtocol);//  出库
                            if (locToCrnStnDemo && crnProtocol.isSignIntOut()){
                                crnProtocol.setLastIo("I");
                            } else if (locToCrnStnDemo){
                                crnProtocol.setLastIo("I");
                                crnProtocol.setSignIntOut(true);
                            } else if (!crnProtocol.isSignIntOut()){
                                crnProtocol.setLastIo("I");
                            }
                        }
                    } else if (basCrnp.getInEnable().equals("Y")) {
                        boolean crnStnToLocDemo = this.crnStnToLocDemo(crnSlave, crnProtocol);//  入库
                        if (crnStnToLocDemo){
                            crnProtocol.setSignIntOut(true);
                            crnProtocol.setLastIo("O");
                        } else if (!crnProtocol.isSignIntOut()){
                            crnProtocol.setLastIo("O");
@@ -3307,33 +3317,58 @@
                    if (Cools.isEmpty(basCrnp.getHpMk()) || !basCrnp.getHpMk().equals("Y")){
                        continue;
                    }
                    boolean signIn = false;
                    for (String[] locS : crnProtocol.getLocMastDemoListSign()){
                        if (locS[3].equals(String.valueOf(locS.length))){
                            String locNo1 = locS[0];
                            String locNo2 = locS[2];
                            ArrayList<String> locNoList = new ArrayList<>();
                            locNoList.add(locNo1);
                            locNoList.add(locNo2);
                            for (String locNo : locNoList) {
                                TaskWrk taskWrk1 = taskWrkService.selectByTaskNo(locNo+"r");
                                if (Cools.isEmpty(taskWrk1)){
                                    continue;
                                }
                                signIn = true;
                                break;
                            }
                        }
                    }
                    if (signIn){
                        continue;
                    }
                    for (String[] locS : crnProtocol.getLocMastDemoListSign()){
                        if (locS[3].equals("1")){
                            String locNo = locS[0];
                            LocMast locMast = locMastService.selectByLocNo(locNo);
                            if (locMast.getLocSts().equals("F")){
                                CarryParam carryParam = new CarryParam();
                                carryParam.setTaskNo(locNo);
                                carryParam.setBarcode(locNo);
                                carryParam.setIoType(1);//任务类型=》1:出库、2:移库、3:入库   ====转换为====>  1:入库,2:出库,3:移库
                                carryParam.setTaskPriority(1);
                                carryParam.setTargetPoint("1012");
                                carryParam.setStartPoint(BarcodeUtils.formatCode(locNo));
                                carryParam.setMeno("Demo");
                                taskWrkController.addTaskPoint(carryParam);
                                Thread.sleep(50);
                            } else if (locMast.getLocSts().equals("O")){
                                CarryParam carryParam = new CarryParam();
                                carryParam.setTaskNo(locNo+"r");
                                carryParam.setBarcode(locNo);
                                carryParam.setIoType(3);//任务类型=》1:出库、2:移库、3:入库   ====转换为====>  1:入库,2:出库,3:移库
                                carryParam.setTaskPriority(1);
                                carryParam.setStartPoint("1012");
                                carryParam.setTargetPoint(BarcodeUtils.formatCode(locNo));
                                carryParam.setMeno("Demo");
                                taskWrkController.addTaskPoint(carryParam);
                                Thread.sleep(50);
                                LocFCSUtils.updateLocSInPlace(crnProtocol.getLocMastDemoListSign());
                            String locNo1 = locS[0];
                            String locNo2 = locS[2];
                            ArrayList<String> locNoList = new ArrayList<>();
                            locNoList.add(locNo1);
                            locNoList.add(locNo2);
                            for (String locNo : locNoList) {
                                LocMast locMast = locMastService.selectByLocNo(locNo);
                                if (locMast.getLocSts().equals("F")){
                                    CarryParam carryParam = new CarryParam();
                                    carryParam.setTaskNo(locNo);
                                    carryParam.setBarcode(locNo);
                                    carryParam.setIoType(1);//任务类型=》1:出库、2:移库、3:入库   ====转换为====>  1:入库,2:出库,3:移库
                                    carryParam.setTaskPriority(1);
                                    carryParam.setTargetPoint("1012");
                                    carryParam.setStartPoint(BarcodeUtils.formatCode(locNo));
                                    carryParam.setMeno("Demo");
                                    taskWrkController.addTaskPoint(carryParam);
                                } else if (locMast.getLocSts().equals("O")){
                                    CarryParam carryParam = new CarryParam();
                                    carryParam.setTaskNo(locNo+"r");
                                    carryParam.setBarcode(locNo);
                                    carryParam.setIoType(3);//任务类型=》1:出库、2:移库、3:入库   ====转换为====>  1:入库,2:出库,3:移库
                                    carryParam.setTaskPriority(1);
                                    carryParam.setStartPoint("1012");
                                    carryParam.setTargetPoint(BarcodeUtils.formatCode(locNo));
                                    carryParam.setMeno("Demo");
                                    taskWrkController.addTaskPoint(carryParam);
                                    LocFCSUtils.updateLocSInPlace(crnProtocol.getLocMastDemoListSign());
                                }
                            }
                        }
                    }
src/main/java/com/zy/asrs/utils/LocFCSUtils.java
@@ -15,16 +15,26 @@
    public static void main(String[] args) {
        ArrayList<String> locS = new ArrayList<>();
        locS.add("0102101");
        locS.add("0100102");
        locS.add("0100101");
        locS.add("0101001");
        locS.add("0107101");
        locS.add("0108101");
        System.out.println(Arrays.toString(locS.toArray()));
        ArrayList<String[]> locS1 = LocFCSUtils.getLocS(locS);
        for (String[] loc : locS1) {
        ArrayList<String> locSF = new ArrayList<>();
        locSF.add("0102101");
        locSF.add("0100102");
        locSF.add("0100101");
        locSF.add("0101001");
        locSF.add("0107101");
        locSF.add("0108101");
        ArrayList<String> locSE = new ArrayList<>();
        locSE.add("0202101");
        locSE.add("0200102");
        locSE.add("0200101");
        locSE.add("0201001");
        locSE.add("0207101");
        locSE.add("0208101");
        System.out.println(Arrays.toString(locSF.toArray()));
        System.out.println(Arrays.toString(locSE.toArray()));
        ArrayList<String[]> locS1 = LocFCSUtils.getLocS(locSF);
        ArrayList<String[]> locS2 = LocFCSUtils.getLocS(locSE);
        ArrayList<String[]> arrayList = LocFCSUtils.updateLocSInPlace(locS1, locS2);
        for (String[] loc : arrayList) {
            System.out.println(Arrays.toString(loc));
        }
@@ -78,5 +88,22 @@
            }
        }
    }
    public static ArrayList<String[]> updateLocSInPlace(ArrayList<String[]> locSF,ArrayList<String[]> locSE) {
        if (locSF == null || locSF.isEmpty()) {
            return new ArrayList<>();
        }
        if (locSE == null || locSE.isEmpty()) {
            return new ArrayList<>();
        }
        for (String[] rowF : locSF) {
            for (String[] rowE : locSE) {
                if (rowF[3].equals(rowE[3])) {
                    rowF[2] =  rowE[0];
                }
            }
        }
        return locSF;
    }
}
src/main/webapp/views/deviceOperate/crnOperate.html
@@ -81,9 +81,9 @@
                            <el-form-item label="原始出库库位">
                                <el-input v-model="formParam.locMastDemoF" placeholder="原始有物库位"></el-input>
                            </el-form-item>
<!--                            <el-form-item label="原始空库位">-->
<!--                                <el-input v-model="formParam.locMastDemoE" placeholder="原始有物库位"></el-input>-->
<!--                            </el-form-item>-->
                            <el-form-item label="原始空库位">
                                <el-input v-model="formParam.locMastDemoE" placeholder="原始无物库位"></el-input>
                            </el-form-item>
                            <el-form-item label="堆垛机放货站点">
                                <el-input v-model="formParam.staOutDemo" placeholder="堆垛机放货站点"></el-input>
                            </el-form-item>