#
whycq
2022-12-08 bc2bfeb28739207ddb9144464271b28b2003e157
#
3个文件已修改
422 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/SiteController.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 199 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 177 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/SiteController.java
@@ -44,11 +44,53 @@
        List<Map<String, Object>> res = new ArrayList<>();
        for (DevpSlave devp : slaveProperties.getDevp()) {
            SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
            Map<String, Object> map1 = new HashMap<>();
            map1.put("floor", 1);
            map1.put("modeVal", devpThread.ioModeOf1F1.id);
            map1.put("modeDesc", devpThread.ioModeOf1F1.desc);
            res.add(map1);
            Map<String, Object> map2 = new HashMap<>();
            map2.put("floor", 2);
            map2.put("modeVal", devpThread.ioModeOf2F.id);
            map2.put("modeDesc", devpThread.ioModeOf2F.desc);
            map2.put("modeVal", devpThread.ioModeOf1F2.id);
            map2.put("modeDesc", devpThread.ioModeOf1F2.desc);
            res.add(map2);
            Map<String, Object> map3 = new HashMap<>();
            map3.put("floor", 2);
            map3.put("modeVal", devpThread.ioModeOf1F3.id);
            map3.put("modeDesc", devpThread.ioModeOf1F3.desc);
            res.add(map3);
            Map<String, Object> map4 = new HashMap<>();
            map4.put("floor", 4);
            map4.put("modeVal", devpThread.ioModeOf1F4.id);
            map4.put("modeDesc", devpThread.ioModeOf1F4.desc);
            res.add(map4);
            Map<String, Object> map5 = new HashMap<>();
            map5.put("floor", 5);
            map5.put("modeVal", devpThread.ioModeOf2F1.id);
            map5.put("modeDesc", devpThread.ioModeOf2F1.desc);
            res.add(map5);
            Map<String, Object> map6 = new HashMap<>();
            map6.put("floor", 6);
            map6.put("modeVal", devpThread.ioModeOf2F2.id);
            map6.put("modeDesc", devpThread.ioModeOf2F2.desc);
            res.add(map6);
            Map<String, Object> map7 = new HashMap<>();
            map7.put("floor", 7);
            map7.put("modeVal", devpThread.ioModeOf3F1.id);
            map7.put("modeDesc", devpThread.ioModeOf3F1.desc);
            res.add(map7);
            Map<String, Object> map8 = new HashMap<>();
            map8.put("floor", 8);
            map8.put("modeVal", devpThread.ioModeOf3F2.id);
            map8.put("modeDesc", devpThread.ioModeOf3F2.desc);
            res.add(map8);
        }
        return R.ok().add(res);
    }
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -124,8 +124,28 @@
                }
                // 入出库模式判断
//                if ( inSta.getStaNo()==203 && devpThread.ioModeOf2F != IoModeType.PAKIN_MODE) { continue; }
                if (inSta.getStaNo() == 203 && devpThread.ioModeOf2F == IoModeType.PAKOUT_MODE) {
                if (inSta.getStaNo() == 101 && devpThread.ioModeOf1F1 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 104 && devpThread.ioModeOf1F2 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 111 && devpThread.ioModeOf1F3 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 114 && devpThread.ioModeOf1F4 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 201 && devpThread.ioModeOf2F1 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 204 && devpThread.ioModeOf2F2 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 301 && devpThread.ioModeOf3F1 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 304 && devpThread.ioModeOf3F2 == IoModeType.PAKOUT_MODE) {
                    continue;
                }
@@ -282,7 +302,28 @@
                }
//                // 入出库模式判断
                if (inSta.getStaNo() == 203 && devpThread.ioModeOf2F != IoModeType.PAKIN_MODE) {
                if (inSta.getStaNo() == 101 && devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 104 && devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 111 && devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 114 && devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 201 && devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 204 && devpThread.ioModeOf2F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 301 && devpThread.ioModeOf3F1 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (inSta.getStaNo() == 304 && devpThread.ioModeOf3F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
@@ -783,8 +824,28 @@
                }
//            // 入出库模式判断
//            if (devpThread.ioMode != IoModeType.PAKOUT_MODE) { continue; }
                if (wrkMast.getStaNo() == 204 && devpThread.ioModeOf2F != IoModeType.PAKOUT_MODE) {
                if (wrkMast.getStaNo() == 100 && devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 103 && devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 110 && devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 113 && devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 200 && devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 203 && devpThread.ioModeOf2F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 300 && devpThread.ioModeOf3F1 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
                if (wrkMast.getStaNo() == 303 && devpThread.ioModeOf3F2 != IoModeType.PAKOUT_MODE) {
                    continue;
                }
@@ -1895,40 +1956,148 @@
                    }
                    WrkMast pakout = wrkMastMapper.selectWorkingPakout(inSta.getStaNo());
                    switch (inSta.getStaNo()) {
                        case 203://1F
                        case 102: // 1F1
                            if (pakout != null) {
                                if (devpThread.ioModeOf2F != IoModeType.PAKOUT_MODE) {
                                if (devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf2F = IoModeType.PAKOUT_BOOTING;
                                    devpThread.ioModeOf1F1 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf2F = IoModeType.PAKOUT_MODE;
                                        devpThread.ioModeOf1F1 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf2F = IoModeType.PAKIN_MODE;
                                devpThread.ioModeOf1F1 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 401://1F
                        case 106: // 1F2
                            if (pakout != null) {
                                if (devpThread.ioModeOf4F != IoModeType.PAKOUT_MODE) {
                                if (devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf4F = IoModeType.PAKOUT_BOOTING;
                                    devpThread.ioModeOf1F2 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf4F = IoModeType.PAKOUT_MODE;
                                        devpThread.ioModeOf1F2 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf4F = IoModeType.PAKIN_MODE;
                                devpThread.ioModeOf1F2 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 112: // 1F3
                            if (pakout != null) {
                                if (devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf1F3 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf1F3 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf1F3 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 116: // 1F4
                            if (pakout != null) {
                                if (devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf1F4 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf1F4 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf1F4 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 202: // 2F1
                            if (pakout != null) {
                                if (devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf2F1 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf2F1 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf2F1 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 205: // 2F2
                            if (pakout != null) {
                                if (devpThread.ioModeOf2F2 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf2F2 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf2F2 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf2F2 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 302: // 3F1
                            if (pakout != null) {
                                if (devpThread.ioModeOf3F1 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf3F1 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf3F1 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf3F1 = IoModeType.PAKIN_MODE;
                            }
                            break;
                        case 305: // 3F2
                            if (pakout != null) {
                                if (devpThread.ioModeOf3F2 != IoModeType.PAKOUT_MODE) {
                                    // 出库切换中
                                    devpThread.ioModeOf3F2 = IoModeType.PAKOUT_BOOTING;
                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
                                            && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
                                            && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
                                        // 出库模式
                                        devpThread.ioModeOf3F2 = IoModeType.PAKOUT_MODE;
                                    }
                                }
                            } else {
                                // 入库模式
                                devpThread.ioModeOf3F2 = IoModeType.PAKIN_MODE;
                            }
                            break;
                    }
src/main/resources/application.yml
@@ -64,21 +64,21 @@
      lev: 1
    # 堆垛机入库站点2
    crnInStn[1]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 112
      row: 2
      bay: 55
      lev: 1
    # 堆垛机入库站点3
    crnInStn[2]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 202
      row: 2
      bay: 55
      lev: 4
    # 堆垛机入库站点
    crnInStn[3]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 302
      row: 2
      bay: 55
@@ -92,21 +92,21 @@
      lev: 1
    # 堆垛机出库站点2
    crnOutStn[1]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 112
      row: 2
      bay: 55
      lev: 1
    # 堆垛机出库站点3
    crnOutStn[2]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 202
      row: 2
      bay: 55
      lev: 4
    # 堆垛机出库站点
    crnOutStn[3]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 302
      row: 2
      bay: 55
@@ -137,14 +137,14 @@
      lev: 1
    # 堆垛机入库站点3
    crnInStn[2]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 205
      row: 7
      bay: 55
      lev: 4
    # 堆垛机入库站点4
    crnInStn[3]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 305
      row: 7
      bay: 55
@@ -158,21 +158,21 @@
      lev: 1
    # 堆垛机出库站点2
    crnOutStn[1]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 116
      row: 7
      bay: 55
      lev: 1
    # 堆垛机出库站点3
    crnOutStn[2]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 205
      row: 7
      bay: 55
      lev: 4
    # 堆垛机出库站点3
    crnOutStn[3]:
      devpPlcId: ${wcs-slave.devp[0].id}
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 305
      row: 7
      bay: 55
@@ -180,7 +180,7 @@
  # 输送线1
  devp[0]:
    id: 1
    ip: 192.168.4.250
    ip: 10.10.10.121
    port: 102
    rack: 0
    slot: 0
@@ -192,54 +192,12 @@
    inSta[1]:
      staNo: 111
      barcode: ${wcs-slave.barcode[1].id}
    # 入库口3
    inSta[2]:
      staNo: 104
      barcode: ${wcs-slave.barcode[2].id}
    # 入库口4
    inSta[3]:
      staNo: 114
      barcode: ${wcs-slave.barcode[3].id}
    # 入库口5
    inSta[4]:
      staNo: 201
      barcode: ${wcs-slave.barcode[].id}
    # 入库口6
    inSta[5]:
      staNo: 204
      barcode: ${wcs-slave.barcode[0].id}
    # 入库口7
    inSta[6]:
      staNo: 301
      barcode: ${wcs-slave.barcode[0].id}
    # 入库口8
    inSta[7]:
      staNo: 304
      barcode: ${wcs-slave.barcode[0].id}
    # 空板入库口1
    emptyInSta[0]:
      staNo: 101
    # 空板入库口2
    emptyInSta[1]:
      staNo: 111
    # 空板入库口2
    emptyInSta[2]:
      staNo: 104
    # 空板入库口4
    emptyInSta[3]:
      staNo: 114
    # 空板入库口5
    emptyInSta[4]:
      staNo: 201
    # 空板入库口6
    emptyInSta[5]:
      staNo: 204
    # 空板入库口7
    emptyInSta[6]:
      staNo: 301
    # 空板入库口8
    emptyInSta[7]:
      staNo: 304
    # 出库口1
    outSta[0]:
@@ -247,24 +205,6 @@
    # 出库口2
    outSta[1]:
      staNo: 110
    # 出库口3
    outSta[2]:
      staNo: 103
    # 出库口4
    outSta[3]:
      staNo: 113
    # 出库口5
    outSta[4]:
      staNo: 200
    # 出库口6
    outSta[5]:
      staNo: 203
    # 出库口7
    outSta[6]:
      staNo: 300
    # 出库口8
    outSta[7]:
      staNo: 303
    # 拣料入库口1
    pickSta[0]:
      staNo: 101
@@ -273,30 +213,99 @@
    pickSta[1]:
      staNo: 111
      barcode: ${wcs-slave.barcode[1].id}
    # 拣料入库口3
    pickSta[2]:
  # 输送线2
  devp[1]:
    id: 1
    ip: 10.10.10.131
    port: 102
    rack: 0
    slot: 0
    # 入库口1
    inSta[0]:
      staNo: 104
      barcode: ${wcs-slave.barcode[2].id}
    # 拣料入库口4
    pickSta[3]:
    # 入库口2
    inSta[1]:
      staNo: 114
      barcode: ${wcs-slave.barcode[3].id}
    # 拣料入库口5
    pickSta[4]:
    # 入库口3
    inSta[2]:
      staNo: 201
      barcode: ${wcs-slave.barcode[4].id}
    # 拣料入库口6
    pickSta[5]:
    # 入库口4
    inSta[3]:
      staNo: 204
      barcode: ${wcs-slave.barcode[5].id}
    # 拣料入库口7
    pickSta[6]:
    # 入库口5
    inSta[4]:
      staNo: 301
      barcode: ${wcs-slave.barcode[6].id}
    # 拣料入库口8
    pickSta[7]:
    # 入库口6
    inSta[5]:
      staNo: 304
      barcode: ${wcs-slave.barcode[7].id}
    # 空板入库口1
    emptyInSta[0]:
      staNo: 104
    # 空板入库口2
    emptyInSta[1]:
      staNo: 114
    # 空板入库口3
    emptyInSta[2]:
      staNo: 201
    # 空板入库口4
    emptyInSta[3]:
      staNo: 204
    # 空板入库口5
    emptyInSta[4]:
      staNo: 301
    # 空板入库口6
    emptyInSta[5]:
      staNo: 304
    # 出库口1
    outSta[0]:
      staNo: 103
    # 出库口2
    outSta[1]:
      staNo: 113
    # 出库口3
    outSta[2]:
      staNo: 200
    # 出库口4
    outSta[3]:
      staNo: 203
    # 出库口5
    outSta[4]:
      staNo: 300
    # 出库口6
    outSta[5]:
      staNo: 303
    # 拣料入库口1
    pickSta[0]:
      staNo: 104
      barcode: ${wcs-slave.barcode[2].id}
    # 拣料入库口2
    pickSta[1]:
      staNo: 114
      barcode: ${wcs-slave.barcode[3].id}
    # 拣料入库口3
    pickSta[2]:
      staNo: 201
      barcode: ${wcs-slave.barcode[4].id}
    # 拣料入库口4
    pickSta[3]:
      staNo: 204
      barcode: ${wcs-slave.barcode[5].id}
    # 拣料入库口5
    pickSta[4]:
      staNo: 301
      barcode: ${wcs-slave.barcode[6].id}
    # 拣料入库口6
    pickSta[5]:
      staNo: 304
      barcode: ${wcs-slave.barcode[7].id}
  # 条码扫描仪1
  barcode[0]: