lty
2025-07-03 747a963f4da5e47182502f63a11ad01db29c6138
#锐麒初始化
10个文件已修改
1499 ■■■■ 已修改文件
pom.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 117 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/MainProcess.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/SiemensDevpThread.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 947 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/common.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/console.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/console.map.js 353 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/console.html 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/crn.html 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pom.xml
@@ -193,7 +193,7 @@
    <build>
        <finalName>tzglwcs</finalName>
        <finalName>rqdzwcs</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1190,9 +1190,26 @@
                if (staProtocol == null) {
                    News.infoNoLog("" + mark + " - 2" + " - 3" + " - 堆垛机出库站信息(staProtocol!=null继续执行,否则循环终止):staProtocol=" + staProtocol);
                    break;
//                    continue;
                } else {
                    staProtocol = staProtocol.clone();
                }
                StaProtocol staProtocol1 = devpThread.getStation().get(crnStn.getStaNo() - 1);
                if (staProtocol1 == null) {
                    News.infoNoLog("" + mark + " - 2" + " - 3" + " - 堆垛机出库站信息(staProtocol!=null继续执行,否则循环终止):staProtocol=" + staProtocol);
                    break;
                } else {
                    staProtocol1 = staProtocol1.clone();
                }
                StaProtocol staProtocol2 = devpThread.getStation().get(crnStn.getStaNo() - 2);
                if (staProtocol2 == null) {
                    News.infoNoLog("" + mark + " - 2" + " - 3" + " - 堆垛机出库站信息(staProtocol!=null继续执行,否则循环终止):staProtocol=" + staProtocol);
                    break;
                } else {
                    staProtocol2 = staProtocol2.clone();
                }
                //出入口输送线只允许存在一个托盘
                if(staProtocol.isLoading() || staProtocol1.isLoading() || staProtocol2.isLoading() ) {
                    break;
                }
//            // 入出库模式判断
@@ -1220,54 +1237,54 @@
                        break;
                    }
//                    // 双深库位且浅库位有货,则需先对浅库位进行库位移转
//                    if (Utils.isDeepLoc(slaveProperties, wrkMast.getSourceLocNo())) {
//                        News.warnNoLog("" + mark + " - 2" + " - 6" + " - 双深库位且浅库位有货,则需先对浅库位进行库位移转 : 开始执行 任务号={}", wrkMast.getWrkNo());
//                        String shallowLocNo = Utils.getShallowLoc(slaveProperties, wrkMast.getSourceLocNo());
//                        LocMast shallowLoc = locMastService.selectById(shallowLocNo);
//                        // O.空库位、Q.拣料/盘点/并板再入库、S.入库预约、X.禁用 直接搬!
//                        if (shallowLoc.getLocSts().equals("P") || shallowLoc.getLocSts().equals("R")) {
//                            News.warnNoLog("" + mark + " - 2" + " - 7" + " - // O.空库位、Q.拣料/盘点/并板再入库、S.入库预约、X.禁用 直接搬!库位状态={}", shallowLoc.getLocSts());
                    // 双深库位且浅库位有货,则需先对浅库位进行库位移转
                    if (Utils.isDeepLoc(slaveProperties, wrkMast.getSourceLocNo())) {
                        News.warnNoLog("" + mark + " - 2" + " - 6" + " - 双深库位且浅库位有货,则需先对浅库位进行库位移转 : 开始执行 任务号={}", wrkMast.getWrkNo());
                        String shallowLocNo = Utils.getShallowLoc(slaveProperties, wrkMast.getSourceLocNo());
                        LocMast shallowLoc = locMastService.selectById(shallowLocNo);
                        // O.空库位、Q.拣料/盘点/并板再入库、S.入库预约、X.禁用 直接搬!
                        if (shallowLoc.getLocSts().equals("P") || shallowLoc.getLocSts().equals("R")) {
                            News.warnNoLog("" + mark + " - 2" + " - 7" + " - // O.空库位、Q.拣料/盘点/并板再入库、S.入库预约、X.禁用 直接搬!库位状态={}", shallowLoc.getLocSts());
                            WrkMast waitWrkMast = wrkMastMapper.selectByLocNo(shallowLocNo);
                            if (null == waitWrkMast) {
                                News.error("{}库位异常,未检索到相应工作档!", shallowLocNo);
                            } else {
                                if (waitWrkMast.getWrkSts() == 11) {
                                    waitWrkMast.setIoPri(15D);
                                    waitWrkMast.setModiTime(new Date());
                                    if (wrkMastMapper.updateById(waitWrkMast) == 0) {
                                        News.error("" + mark + " - 2" + " - 8" + " - 调整工作档优先级失败!工作号={}", waitWrkMast.getWrkNo());
                                    }
                                    continue;
                                } else {
                                }
                            }
                        } else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) {
                            News.warnNoLog("" + mark + " - 2" + " - 9" + " - // F、D  库位状态={}", shallowLoc.getLocSts());
//                            WrkMast waitWrkMast = wrkMastMapper.selectByLocNo(shallowLocNo);
//                            if (null == waitWrkMast) {
//                                News.error("{}库位异常,未检索到相应工作档!", shallowLocNo);
//                            } else {
//                                if (waitWrkMast.getWrkSts() == 11) {
//                                    waitWrkMast.setIoPri(15D);
//                                    waitWrkMast.setModiTime(new Date());
//                                    if (wrkMastMapper.updateById(waitWrkMast) == 0) {
//                                        News.error("" + mark + " - 2" + " - 8" + " - 调整工作档优先级失败!工作号={}", waitWrkMast.getWrkNo());
//                                    }
//                                    continue;
//                                } else {
//
//                                }
//                            }
//                        } else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) {
//                            News.warnNoLog("" + mark + " - 2" + " - 9" + " - // F、D  库位状态={}", shallowLoc.getLocSts());
////                            WrkMast waitWrkMast = wrkMastMapper.selectByLocNo(shallowLocNo);
//                            //2022-08-16 modify,不根据updmk标记移库任务(容易被取消导致堵塞),查询工作档是否存在任务
//                            WrkMast waitWrkMast = wrkMastMapper.selectByLocNo1(shallowLocNo);
//                            // 此标记避免多次执行移库任务
////                            if (Cools.isEmpty(wrkMast.getUpdMk()) || "N".equals(wrkMast.getUpdMk())
////                                || Cools.isEmpty(waitWrkMast)) {
//                            if (Cools.isEmpty(waitWrkMast)) {
//                                wrkMast.setUpdMk("Y");
//                                wrkMastMapper.updateById(wrkMast);
//                                // 生成工作档,将浅库位移转到新的库位中
//                                moveLocForDeepLoc(slave, shallowLoc, mark);
//                            }
//                            News.error("{}任务出库失败,浅库位堵塞!浅库位号:{}", wrkMast.getWrkNo(), shallowLocNo);
//                            continue;
//                        } else if (shallowLoc.getLocSts().equals("Q") || shallowLoc.getLocSts().equals("S")) {
//                            News.warnNoLog("" + mark + " - 2" + " - 10" + " - // Q、S  库位状态={}", shallowLoc.getLocSts());
//                            WrkMast waitWrkMast = wrkMastMapper.selectByLocNo1(shallowLocNo);
//                            if (null != waitWrkMast && waitWrkMast.getWrkSts() == 4) {
//                                News.infoNoLog("" + mark + " - 2" + " - 11" + " - // F、D  工作状态(判断条件为==4)={}", waitWrkMast.getWrkSts());
//                                continue;
//                            }
//                        }
//                    }
                            //2022-08-16 modify,不根据updmk标记移库任务(容易被取消导致堵塞),查询工作档是否存在任务
                            WrkMast waitWrkMast = wrkMastMapper.selectByLocNo1(shallowLocNo);
                            // 此标记避免多次执行移库任务
//                            if (Cools.isEmpty(wrkMast.getUpdMk()) || "N".equals(wrkMast.getUpdMk())
//                                || Cools.isEmpty(waitWrkMast)) {
                            if (Cools.isEmpty(waitWrkMast)) {
                                wrkMast.setUpdMk("Y");
                                wrkMastMapper.updateById(wrkMast);
                                // 生成工作档,将浅库位移转到新的库位中
                                moveLocForDeepLoc(slave, shallowLoc, mark);
                            }
                            News.error("{}任务出库失败,浅库位堵塞!浅库位号:{}", wrkMast.getWrkNo(), shallowLocNo);
                            continue;
                        } else if (shallowLoc.getLocSts().equals("Q") || shallowLoc.getLocSts().equals("S")) {
                            News.warnNoLog("" + mark + " - 2" + " - 10" + " - // Q、S  库位状态={}", shallowLoc.getLocSts());
                            WrkMast waitWrkMast = wrkMastMapper.selectByLocNo1(shallowLocNo);
                            if (null != waitWrkMast && waitWrkMast.getWrkSts() == 4) {
                                News.infoNoLog("" + mark + " - 2" + " - 11" + " - // F、D  工作状态(判断条件为==4)={}", waitWrkMast.getWrkSts());
                                continue;
                            }
                        }
                    }
                    // 已经存在吊车执行任务时,则过滤
                    if (wrkMastMapper.selectWorking(slave.getId()) != null) {
@@ -2388,10 +2405,8 @@
        SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
        List<Integer> list = new ArrayList<>();
        list.add(101);
        list.add(112);
        Map<Integer, Integer> map = new HashMap<>();
        map.put(101, 102);
        map.put(112, 111);
        for (Integer site : list) {
            WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("sta_no", map.get(site)));
            if (!Cools.isEmpty(wrkMast)) {
@@ -2415,7 +2430,7 @@
                }
                Short loctype1 = 1;
                if (site == 101) {
                    loctype1 = 2;
                    loctype1 = 1;
                }
                LocTypeDto locTypeDto = new LocTypeDto(loctype1, (short) 1, (short) 1);
                locTypeDto.setSiteId(site);
src/main/java/com/zy/core/MainProcess.java
@@ -88,14 +88,14 @@
//                    mainService.outOfDevp(11);
//                    if (i>10){
//                        //空托盘自动出库
//                        mainService.autoEmptyOut();
                    if (i>10){
                        //空托盘自动出库
                        mainService.autoEmptyOut();
//                        //空托盘自动入库
//                        mainService.autoEmptyIn();
//                        i=0;
//                    }
//                    i++;
                        i=0;
                    }
                    i++;
                } catch (Exception e) {
src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -48,12 +48,8 @@
//
//    }};
    public static final ArrayList<Integer> staNos1 = new ArrayList<Integer>() {{
        add(121);add(122);add(123);add(124);add(125);
        add(126);
        add(221);add(222);add(223);add(224);add(225);
        add(226);add(227);add(228);add(229);add(230);
        add(231);
        add(411);add(412);add(413);add(414);
        add(101);add(102);add(103);
        add(201);add(202);add(203);
    }};
    public static final ArrayList<Integer> staNos2 = new ArrayList<Integer>() {{
src/main/resources/application.yml
@@ -8,7 +8,7 @@
    name: @pom.build.finalName@
  datasource:
    driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
    url: jdbc:sqlserver://127.0.0.1:1433;databasename=tzglasrs
    url: jdbc:sqlserver://127.0.0.1:1433;databasename=rqdzasrs
    username: sa
    password: sa@123
#    driver-class-name: com.oscar.Driver
@@ -38,18 +38,18 @@
  enable: false
wms:
  url: 127.0.0.1:8080/tzglasrs
  url: 127.0.0.1:8080/rqdzasrs
# 下位机配置
wcs-slave:
  #
  isToOrigin: false
  # 双深
  doubleDeep: false
  doubleDeep: true
  # 双深库位排号
  doubleLocs: 1,4,5,8,9,12,13,16
  doubleLocs: 1,4
  # 一个堆垛机负责的货架排数
  groupCount: 2
  groupCount: 4
  # 堆垛机1
  crn[0]:
    id: 1
@@ -62,7 +62,7 @@
    demo: false
    # 堆垛机入库站点
    crnInStn[0]:
      devpPlcId: ${wcs-slave.devp[1].id}
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 102
      row: 1
      bay: 1
@@ -70,391 +70,18 @@
    # 堆垛机出库站点
    crnOutStn[0]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 121
      row: 1
      bay: 121
      lev: 1
    # 堆垛机入库站点
    crnInStn[1]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 123
      row: 2
      bay: 121
      lev: 1
    # 堆垛机出库站点
    crnOutStn[1]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 103
      row: 2
      row: 1
      bay: 1
      lev: 1
    # 堆垛机入库站点
    crnInStn[2]:
      devpPlcId: ${wcs-slave.devp[1].id}
    # 堆垛机出库站点
    crnOutStn[1]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 203
      row: 2
      bay: 1
      lev: 2
    # 堆垛机入库站点
    crnInStn[3]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 223
      row: 2
      bay: 121
      lev: 2
    # 堆垛机出库站点
    crnOutStn[2]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 201
      row: 1
      bay: 1
      lev: 2
    # 堆垛机出库站点
    crnOutStn[3]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 221
      row: 1
      bay: 121
      lev: 2
    # 堆垛机出库站点
    crnOutStn[4]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 223
      row: 2
      bay: 121
      lev: 2
    # 堆垛机出库站点
    crnOutStn[5]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 203
      row: 2
      bay: 1
      lev: 2
    # 堆垛机出库站点
    crnOutStn[6]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 401
      row: 1
      bay: 1
      lev: 4
    # 堆垛机入库站点
    crnInStn[4]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 401
      row: 1
      bay: 1
      lev: 4
    # 堆垛机出库站点
    crnOutStn[7]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 411
      row: 1
      bay: 121
      lev: 4
    # 堆垛机入库站点
    crnInStn[5]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 411
      row: 1
      bay: 121
      lev: 4
  # 堆垛机2
  crn[1]:
    id: 2
    ip: 10.10.10.111
    port: 102
    rack: 0
    slot: 0
    # 偏移量,当堆垛机站点列号=1时,偏移量=2
    offset: 0
    demo: false
    # 堆垛机入库站点
    crnInStn[0]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 105
      row: 3
      bay: 1
      lev: 1
    # 堆垛机出库站点
    crnOutStn[0]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 124
      row: 3
      bay: 121
      lev: 1
    # 堆垛机入库站点
    crnInStn[1]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 205
      row: 3
      bay: 1
      lev: 2
    # 堆垛机入库站点
    crnInStn[2]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 225
      row: 3
      bay: 121
      lev: 2
    # 堆垛机出库站点
    crnOutStn[1]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 205
      row: 3
      bay: 1
      lev: 2
    # 堆垛机出库站点
    crnOutStn[2]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 225
      row: 3
      bay: 121
      lev: 2
    # 堆垛机入库站点
    crnInStn[3]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 402
      row: 3
      bay: 1
      lev: 4
    # 堆垛机出库站点
    crnOutStn[3]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 402
      row: 3
      bay: 1
      lev: 4
    # 堆垛机入库站点
    crnInStn[4]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 412
      row: 3
      bay: 121
      lev: 4
    # 堆垛机出库站点
    crnOutStn[4]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 412
      row: 3
      bay: 121
      lev: 4
  # 堆垛机3
  crn[2]:
    id: 3
    ip: 10.10.10.122
    port: 102
    rack: 0
    slot: 0
    # 偏移量,当堆垛机站点列号=1时,偏移量=2
    offset: 0
    demo: false
    # 堆垛机入库站点
    crnInStn[0]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 107
      row: 5
      bay: 1
      lev: 1
    # 堆垛机出库站点
    crnOutStn[0]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 125
      row: 5
      bay: 121
      lev: 1
    # 堆垛机入库站点
    crnInStn[1]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 206
      row: 5
      bay: 1
      lev: 2
    # 堆垛机出库站点
    crnOutStn[1]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 226
      row: 5
      bay: 121
      lev: 2
    # 堆垛机入库站点
    crnInStn[2]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 226
      row: 5
      bay: 121
      lev: 2
    # 堆垛机出库站点
    crnOutStn[2]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 206
      row: 5
      bay: 1
      lev: 2
    # 堆垛机入库站点
    crnInStn[3]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 208
      row: 6
      bay: 1
      lev: 2
    # 堆垛机出库站点
    crnOutStn[3]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 208
      row: 6
      bay: 1
      lev: 2
    # 堆垛机入库站点
    crnInStn[4]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 228
      row: 6
      bay: 121
      lev: 2
    # 堆垛机出库站点
    crnOutStn[4]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 228
      row: 6
      bay: 121
      lev: 2
    # 堆垛机入库站点
    crnInStn[5]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 403
      row: 5
      bay: 1
      lev: 4
    # 堆垛机出库站点
    crnOutStn[5]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 403
      row: 5
      bay: 1
      lev: 4
    # 堆垛机入库站点
    crnInStn[6]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 413
      row: 5
      bay: 121
      lev: 4
    # 堆垛机出库站点
    crnOutStn[6]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 413
      row: 5
      bay: 121
      lev: 4
  # 堆垛机4
  crn[3]:
    id: 4
    ip: 10.10.10.133
    port: 102
    rack: 0
    slot: 0
    # 偏移量,当堆垛机站点列号=1时,偏移量=2
    offset: 0
    demo: false
    # 堆垛机入库站点
    crnInStn[0]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 109
      row: 7
      bay: 1
      lev: 1
    # 堆垛机出库站点
    crnOutStn[0]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 126
      row: 7
      bay: 121
      lev: 1
    # 堆垛机入库站点
    crnInStn[1]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 209
      row: 7
      bay: 1
      lev: 2
    # 堆垛机出库站点
    crnOutStn[1]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 209
      row: 7
      bay: 1
      lev: 2
    # 堆垛机入库站点
    crnInStn[2]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 229
      row: 7
      bay: 121
      lev: 2
    # 堆垛机出库站点
    crnOutStn[2]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 229
      row: 7
      bay: 121
      lev: 2
    # 堆垛机入库站点
    crnInStn[3]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 211
      row: 8
      bay: 1
      lev: 2
    # 堆垛机出库站点
    crnOutStn[3]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 211
      row: 8
      bay: 1
      lev: 2
    # 堆垛机入库站点
    crnInStn[4]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 231
      row: 8
      bay: 121
      lev: 2
    # 堆垛机出库站点
    crnOutStn[4]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 231
      row: 8
      bay: 121
      lev: 2
    # 堆垛机入库站点
    crnInStn[5]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 404
      row: 7
      bay: 1
      lev: 4
    # 堆垛机出库站点
    crnOutStn[5]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 404
      row: 7
      bay: 1
      lev: 4
    # 堆垛机入库站点
    crnInStn[6]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 414
      row: 7
      bay: 121
      lev: 4
    # 堆垛机出库站点
    crnOutStn[6]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 414
      row: 7
      bay: 121
      lev: 4
  # 东楼plc
  # plc
  devp[0]:
    id: 1
    ip: 10.10.10.144
@@ -466,380 +93,44 @@
      staNo: 123
      barcode: ${wcs-slave.barcode[0].id}
      backSta: 122
      led: ${wcs-slave.led[1].id}
    # 入库口1
    inSta[1]:
      staNo: 223
      barcode: ${wcs-slave.barcode[1].id}
      backSta: 222
      led: ${wcs-slave.led[6].id}
    # 入库口1
    inSta[2]:
      staNo: 225
      barcode: ${wcs-slave.barcode[2].id}
      backSta: 224
      led: ${wcs-slave.led[7].id}
    # 入库口1
    inSta[3]:
      staNo: 228
      barcode: ${wcs-slave.barcode[3].id}
      backSta: 227
      led: ${wcs-slave.led[9].id}
    # 入库口1
    inSta[4]:
      staNo: 231
      barcode: ${wcs-slave.barcode[4].id}
      backSta: 230
      led: ${wcs-slave.led[11].id}
      led: ${wcs-slave.led[0].id}
#    # 入库口2
#    inSta[1]:
#      staNo: 223
#      barcode: ${wcs-slave.barcode[1].id}
#      backSta: 222
#      led: ${wcs-slave.led[1].id}
    # 拣料入库口1
    pickSta[0]:
      staNo: 223
      barcode: ${wcs-slave.barcode[1].id}
      led: ${wcs-slave.led[6].id}
      barcode: ${wcs-slave.barcode[0].id}
      led: ${wcs-slave.led[0].id}
      backSta: 222
    # 拣料入库口1
    pickSta[1]:
      staNo: 225
      barcode: ${wcs-slave.barcode[2].id}
      led: ${wcs-slave.led[7].id}
      backSta: 224
    # 拣料入库口1
    pickSta[2]:
      staNo: 228
      barcode: ${wcs-slave.barcode[3].id}
      led: ${wcs-slave.led[9].id}
      backSta: 227
    # 拣料入库口1
    pickSta[3]:
      staNo: 231
      barcode: ${wcs-slave.barcode[4].id}
      led: ${wcs-slave.led[11].id}
      backSta: 230
    # 拣料入库口1
    pickSta[4]:
      staNo: 411
      barcode: ${wcs-slave.barcode[4].id}
      led: ${wcs-slave.led[12].id}
      backSta: 411
    # 拣料入库口1
    pickSta[5]:
      staNo: 412
      barcode: ${wcs-slave.barcode[4].id}
      led: ${wcs-slave.led[13].id}
      backSta: 412
    # 拣料入库口1
    pickSta[6]:
      staNo: 413
      barcode: ${wcs-slave.barcode[4].id}
      led: ${wcs-slave.led[14].id}
      backSta: 413
    # 拣料入库口1
    pickSta[7]:
      staNo: 414
      barcode: ${wcs-slave.barcode[4].id}
      led: ${wcs-slave.led[15].id}
      backSta: 414
#    # 拣料入库口2
#    pickSta[1]:
#      staNo: 225
#      barcode: ${wcs-slave.barcode[1].id}
#      led: ${wcs-slave.led[1].id}
#      backSta: 224
    # 空板入库口1
    emptyInSta[0]:
      staNo: 123
      barcode: ${wcs-slave.barcode[0].id}
      backSta: 122
      led: ${wcs-slave.led[1].id}
      led: ${wcs-slave.led[0].id}
    # 空板入库口2
    emptyInSta[1]:
      staNo: 223
      barcode: ${wcs-slave.barcode[1].id}
      barcode: ${wcs-slave.barcode[0].id}
      backSta: 222
      led: ${wcs-slave.led[6].id}
    # 空板入库口2
    emptyInSta[2]:
      staNo: 225
      barcode: ${wcs-slave.barcode[2].id}
      backSta: 224
      led: ${wcs-slave.led[7].id}
    # 空板入库口2
    emptyInSta[3]:
      staNo: 228
      barcode: ${wcs-slave.barcode[3].id}
      backSta: 227
      led: ${wcs-slave.led[9].id}
    # 空板入库口2
    emptyInSta[4]:
      staNo: 231
      barcode: ${wcs-slave.barcode[4].id}
      backSta: 230
      led: ${wcs-slave.led[11].id}
      led: ${wcs-slave.led[1].id}
    # 出库口1
    outSta[0]:
      staNo: 121
    outSta[1]:
      staNo: 124
    outSta[2]:
      staNo: 125
    outSta[3]:
      staNo: 126
    outSta[4]:
      staNo: 221
    outSta[5]:
      staNo: 223
    outSta[6]:
      staNo: 225
    outSta[7]:
      staNo: 226
    outSta[8]:
      staNo: 228
    outSta[9]:
      staNo: 229
    outSta[10]:
      staNo: 231
    outSta[11]:
      staNo: 411
    outSta[12]:
      staNo: 412
    outSta[13]:
      staNo: 413
    outSta[14]:
      staNo: 414
  # 西楼PLC
  devp[1]:
    id: 2
    ip: 10.10.10.180
    port: 102
    rack: 0
    slot: 0
    # 入库口1
    inSta[0]:
      staNo: 102
      barcode: ${wcs-slave.barcode[5].id}
      backSta: 101
      led: ${wcs-slave.led[16].id}
    # 入库口1
    inSta[1]:
      staNo: 105
      barcode: ${wcs-slave.barcode[6].id}
      backSta: 104
      led: ${wcs-slave.led[18].id}
    # 入库口1
    inSta[2]:
      staNo: 107
      barcode: ${wcs-slave.barcode[7].id}
      backSta: 106
      led: ${wcs-slave.led[19].id}
    # 入库口1
    inSta[3]:
      staNo: 109
      barcode: ${wcs-slave.barcode[8].id}
      backSta: 108
      led: ${wcs-slave.led[20].id}
    # 入库口1
    inSta[4]:
      staNo: 203
      barcode: ${wcs-slave.barcode[9].id}
      backSta: 202
      led: ${wcs-slave.led[22].id}
    # 入库口1
    inSta[5]:
      staNo: 205
      barcode: ${wcs-slave.barcode[10].id}
      backSta: 204
      led: ${wcs-slave.led[23].id}
    # 入库口1
    inSta[6]:
      staNo: 208
      barcode: ${wcs-slave.barcode[11].id}
      backSta: 207
      led: ${wcs-slave.led[25].id}
    # 入库口1
    inSta[7]:
      staNo: 211
      barcode: ${wcs-slave.barcode[12].id}
      backSta: 210
      led: ${wcs-slave.led[27].id}
    # 拣料入库口1
    pickSta[0]:
      staNo: 203
      barcode: ${wcs-slave.barcode[9].id}
      led: ${wcs-slave.led[22].id}
      backSta: 202
    # 拣料入库口1
    pickSta[1]:
      staNo: 205
      barcode: ${wcs-slave.barcode[10].id}
      led: ${wcs-slave.led[23].id}
      backSta: 204
    # 拣料入库口1
    pickSta[2]:
      staNo: 208
      barcode: ${wcs-slave.barcode[11].id}
      led: ${wcs-slave.led[25].id}
      backSta: 207
    # 拣料入库口1
    pickSta[3]:
      staNo: 211
      barcode: ${wcs-slave.barcode[12].id}
      led: ${wcs-slave.led[27].id}
      backSta: 210
    # 拣料入库口1
    pickSta[4]:
      staNo: 401
      barcode: ${wcs-slave.barcode[12].id}
      led: ${wcs-slave.led[28].id}
      backSta: 401
    # 拣料入库口1
    pickSta[5]:
      staNo: 402
      barcode: ${wcs-slave.barcode[12].id}
      led: ${wcs-slave.led[29].id}
      backSta: 402
    # 拣料入库口1
    pickSta[6]:
      staNo: 403
      barcode: ${wcs-slave.barcode[12].id}
      led: ${wcs-slave.led[30].id}
      backSta: 403
    # 拣料入库口1
    pickSta[7]:
      staNo: 404
      barcode: ${wcs-slave.barcode[12].id}
      led: ${wcs-slave.led[31].id}
      backSta: 404
    # 空板入库口1
    emptyInSta[0]:
      staNo: 102
      barcode: ${wcs-slave.barcode[5].id}
      backSta: 101
      led: ${wcs-slave.led[16].id}
    # 空板入库口2
    emptyInSta[1]:
      staNo: 105
      barcode: ${wcs-slave.barcode[6].id}
      backSta: 104
      led: ${wcs-slave.led[18].id}
    # 空板入库口2
    emptyInSta[2]:
      staNo: 107
      barcode: ${wcs-slave.barcode[7].id}
      backSta: 106
      led: ${wcs-slave.led[19].id}
    # 空板入库口2
    emptyInSta[3]:
      staNo: 109
      barcode: ${wcs-slave.barcode[8].id}
      backSta: 108
      led: ${wcs-slave.led[20].id}
    # 空板入库口2
    emptyInSta[4]:
      staNo: 203
      barcode: ${wcs-slave.barcode[9].id}
      backSta: 202
      led: ${wcs-slave.led[22].id}
    # 空板入库口2
    emptyInSta[5]:
      staNo: 205
      barcode: ${wcs-slave.barcode[10].id}
      backSta: 204
      led: ${wcs-slave.led[23].id}
    # 空板入库口2
    emptyInSta[6]:
      staNo: 208
      barcode: ${wcs-slave.barcode[11].id}
      backSta: 207
      led: ${wcs-slave.led[25].id}
    # 空板入库口2
    emptyInSta[7]:
      staNo: 211
      barcode: ${wcs-slave.barcode[12].id}
      backSta: 210
      led: ${wcs-slave.led[27].id}
    # 出库口1
    outSta[0]:
      staNo: 103
    outSta[1]:
      staNo: 201
    outSta[2]:
      staNo: 203
    outSta[3]:
      staNo: 205
    outSta[4]:
      staNo: 206
    outSta[5]:
      staNo: 208
    outSta[6]:
      staNo: 209
    outSta[7]:
      staNo: 211
    outSta[8]:
      staNo: 401
    outSta[9]:
      staNo: 402
    outSta[10]:
      staNo: 403
    outSta[11]:
      staNo: 404
  # 条码扫描仪1
  barcode[0]:
    id: 1
    ip: 10.10.10.151
    port: 51236
  # 条码扫描仪2
  barcode[1]:
    id: 2
    ip: 10.10.10.152
    port: 51236
  # 条码扫描仪3
  barcode[2]:
    id: 3
    ip: 10.10.10.153
    port: 51236
  # 条码扫描仪4
  barcode[3]:
    id: 4
    ip: 10.10.10.154
    port: 51236
  # 条码扫描仪5
  barcode[4]:
    id: 5
    ip: 10.10.10.155
    port: 51236
  # 条码扫描仪6
  barcode[5]:
    id: 6
    ip: 10.10.10.187
    port: 51236
  # 条码扫描仪7
  barcode[6]:
    id: 7
    ip: 10.10.10.188
    port: 51236
  # 条码扫描仪8
  barcode[7]:
    id: 8
    ip: 10.10.10.189
    port: 51236
  # 条码扫描仪9
  barcode[8]:
    id: 9
    ip: 10.10.10.190
    port: 51236
  # 条码扫描仪10
  barcode[9]:
    id: 10
    ip: 10.10.10.191
    port: 51236
  # 条码扫描仪11
  barcode[10]:
    id: 11
    ip: 10.10.10.192
    port: 51236
  # 条码扫描仪12
  barcode[11]:
    id: 12
    ip: 10.10.10.193
    port: 51236
  # 条码扫描仪13
  barcode[12]:
    id: 13
    ip: 10.10.10.194
    port: 51236
  # LED1
  led[0]:
@@ -855,184 +146,4 @@
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 123
  led[2]:
    id: 124
    ip: 10.10.10.53
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 124
  led[3]:
    id: 125
    ip: 10.10.10.54
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 125
  led[4]:
    id: 126
    ip: 10.10.10.55
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 126
  led[5]:
    id: 221
    ip: 10.10.10.56
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 221
  led[6]:
    id: 223
    ip: 10.10.10.57
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 223
  led[7]:
    id: 224
    ip: 10.10.10.58
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 224
  led[8]:
    id: 226
    ip: 10.10.10.59
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 226
  led[9]:
    id: 228
    ip: 10.10.10.60
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 228
  led[10]:
    id: 229
    ip: 10.10.10.61
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 229
  led[11]:
    id: 231
    ip: 10.10.10.62
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 231
  led[12]:
    id: 411
    ip: 10.10.10.63
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 411
  led[13]:
    id: 412
    ip: 10.10.10.64
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 412
  led[14]:
    id: 413
    ip: 10.10.10.65
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 413
  led[15]:
    id: 414
    ip: 10.10.10.66
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    staArr: 414
  led[16]:
    id: 102
    ip: 10.10.10.67
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 102
  led[17]:
    id: 103
    ip: 10.10.10.68
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 103
  led[18]:
    id: 105
    ip: 10.10.10.69
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 105
  led[19]:
    id: 107
    ip: 10.10.10.70
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 107
  led[20]:
    id: 109
    ip: 10.10.10.71
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 109
  led[21]:
    id: 201
    ip: 10.10.10.72
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 201
  led[22]:
    id: 203
    ip: 10.10.10.73
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 203
  led[23]:
    id: 204
    ip: 10.10.10.74
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 204
  led[24]:
    id: 206
    ip: 10.10.10.75
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 206
  led[25]:
    id: 208
    ip: 10.10.10.76
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 208
  led[26]:
    id: 209
    ip: 10.10.10.77
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 209
  led[27]:
    id: 211
    ip: 10.10.10.78
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 211
  led[28]:
    id: 401
    ip: 10.10.10.79
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 401
  led[29]:
    id: 402
    ip: 10.10.10.80
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 402
  led[30]:
    id: 403
    ip: 10.10.10.81
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 403
  led[31]:
    id: 404
    ip: 10.10.10.82
    port: 5005
    devpPlcId: ${wcs-slave.devp[1].id}
    staArr: 404
src/main/webapp/static/js/common.js
@@ -1,4 +1,4 @@
var baseUrl = "/tzglwcs";
var baseUrl = "/rqdzwcs";
// 赋值
function setVal(el, val) {
src/main/webapp/static/js/console.js
@@ -66,7 +66,7 @@
        }
        bayWidth = rackss[i].width / bLen
        // hpPosition 0 表示货架序号 左->右 1 表示货架序号 左<-右
        if (mapInfo.hpPosition == 1) {
        if (mapInfo.hpPosition == 0) {
            bNum = maxBayNo
            for (let j = bLen; j > 0; j--) {
                bay = "<button class='item' style='width: "+ bayWidth +"px'>" + bNum + "</button>"
src/main/webapp/static/js/console.map.js
@@ -1,5 +1,5 @@
mapInfo ={
    "mapName": "tzglwcs",
    "mapName": "rqdzwcs",
    "rackCount": 8,
    "crnCount": 4,
    "stbCount": 120,
@@ -9,82 +9,42 @@
        {
            "type": "rack",
            "id": "rack1",
            "top": 80,
            "left": 140,
            "width": 1600,
            "top": 130,
            "left": 500,
            "width": 800,
            "height": 23,
            "minBayNo": 2,
            "maxBayNo": 120
            "maxBayNo": 19
        },
        {
            "type": "rack",
            "id": "rack2",
            "top": 130,
            "left": 140,
            "width": 1600,
            "top": 160,
            "left": 500,
            "width": 800,
            "height": 23,
            "minBayNo": 2,
            "maxBayNo": 120
            "maxBayNo": 19
        },
        {
            "type": "rack",
            "id": "rack3",
            "top": 160,
            "left": 140,
            "width": 1600,
            "top": 210,
            "left": 500,
            "width": 800,
            "height": 23,
            "minBayNo": 2,
            "maxBayNo": 120
            "maxBayNo": 19
        },
        {
            "type": "rack",
            "id": "rack4",
            "top": 210,
            "left": 140,
            "width": 1600,
            "height": 23,
            "minBayNo": 2,
            "maxBayNo": 120
        },
        {
            "type": "rack",
            "id": "rack5",
            "top": 240,
            "left": 140,
            "width": 1600,
            "left": 500,
            "width": 800,
            "height": 23,
            "minBayNo": 2,
            "maxBayNo": 120
        },
        {
            "type": "rack",
            "id": "rack6",
            "top": 290,
            "left": 140,
            "width": 1600,
            "height": 23,
            "minBayNo": 2,
            "maxBayNo": 120
        },
        {
            "type": "rack",
            "id": "rack7",
            "top": 320,
            "left": 140,
            "width": 1600,
            "height": 23,
            "minBayNo": 2,
            "maxBayNo": 120
        },
        {
            "type": "rack",
            "id": "rack8",
            "top": 370,
            "left": 140,
            "width": 1600,
            "height": 23,
            "minBayNo": 2,
            "maxBayNo": 120
            "maxBayNo": 19
        }
    ],
    "rackDescs": [
@@ -92,8 +52,8 @@
            "type": "rackDescs",
            "id": "lb_desc1",
            "text": "#1",
            "top": 80,
            "left": 1860,
            "top": 130,
            "left": 460,
            "width": 30,
            "height": 23
        },
@@ -101,8 +61,8 @@
            "type": "rackDescs",
            "id": "lb_desc2",
            "text": "#2",
            "top": 130,
            "left": 1860,
            "top": 160,
            "left": 460,
            "width": 30,
            "height": 23
        },
@@ -110,8 +70,8 @@
            "type": "rackDescs",
            "id": "lb_desc3",
            "text": "#3",
            "top": 160,
            "left": 1860,
            "top": 210,
            "left": 460,
            "width": 30,
            "height": 23
        },
@@ -119,82 +79,19 @@
            "type": "rackDescs",
            "id": "lb_desc4",
            "text": "#4",
            "top": 210,
            "left": 1860,
            "width": 30,
            "height": 23
        },
        {
            "type": "rackDescs",
            "id": "lb_desc5",
            "text": "#5",
            "top": 240,
            "left": 1860,
            "left": 460,
            "width": 30,
            "height": 23
        },
        {
            "type": "rackDescs",
            "id": "lb_desc6",
            "text": "#6",
            "top": 290,
            "left": 1860,
            "width": 30,
            "height": 23
        },
        {
            "type": "rackDescs",
            "id": "lb_desc7",
            "text": "#7",
            "top": 320,
            "left": 1860,
            "width": 30,
            "height": 23
        },
        {
            "type": "rackDescs",
            "id": "lb_desc8",
            "text": "#8",
            "top": 370,
            "left": 1860,
            "width": 30,
            "height": 23
        },
        }
    ],
    "crns": [
        {
            "type": "crane",
            "id": "crn-1",
            "text": "1",
            "top": 110,
            "left": 1550,
            "width": 100,
            "height": 22
        },
        {
            "type": "crane",
            "id": "crn-2",
            "text": "2",
            "top": 190,
            "left": 1550,
            "width": 100,
            "height": 22
        },
        {
            "type": "crane",
            "id": "crn-3",
            "text": "3",
            "top": 270,
            "left": 1550,
            "width": 100,
            "height": 22
        },
        {
            "type": "crane",
            "id": "crn-4",
            "text": "4",
            "top": 350,
            "left": 1550,
            "top": 187,
            "left": 1250,
            "width": 100,
            "height": 22
        },
@@ -202,36 +99,9 @@
            "type": "track",
            "id": "lb_track1",
            "text": "",
            "top": 117,
            "left": 140,
            "width": 1600,
            "height": 2
        },
        {
            "type": "track",
            "id": "lb_track2",
            "text": "",
            "top": 197,
            "left": 140,
            "width": 1600,
            "height": 2
        },
        {
            "type": "track",
            "id": "lb_track3",
            "text": "",
            "top": 277,
            "left": 140,
            "width": 1600,
            "height": 2
        },
        {
            "type": "track",
            "id": "lb_track4",
            "text": "",
            "top": 357,
            "left": 140,
            "width": 1600,
            "left": 500,
            "width": 800,
            "height": 2
        }
    ],
@@ -255,16 +125,9 @@
                    "height": 600,
                    "stns": [
                        // { "type": "stn", "id": "site-100", "text": "100", "top": 80, "left": 94, "width": 40, "height": 23 },
                        { "type": "stn", "id": "site-101", "text": "101", "top": 80, "left": 10, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-102", "text": "102", "top": 80, "left": 72, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-103", "text": "103", "top": 130, "left": 10, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-104", "text": "104", "top": 160, "left": 10, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-105", "text": "105", "top": 160, "left": 72, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-106", "text": "106", "top": 240, "left": 10, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-107", "text": "107", "top": 240, "left": 72, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-108", "text": "108", "top": 320, "left": 10, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-109", "text": "109", "top": 320, "left": 72, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-101", "text": "101", "top": 160, "left": 1430, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-102", "text": "102", "top": 160, "left": 1365, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-103", "text": "103", "top": 160, "left": 1301, "width": 60, "height": 23 },
                        // { "type": "stn", "id": "site-110", "text": "110", "top": 130, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-111", "text": "111", "top": 130, "left": 1826, "width": 40, "height": 23 },
                        //
@@ -278,158 +141,16 @@
                        // { "type": "stn", "id": "site-118", "text": "118", "top": 240, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-119", "text": "119", "top": 240, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-120", "text": "120", "top": 240, "left": 10, "width": 40, "height": 23 },
                        { "type": "stn", "id": "site-121", "text": "121", "top": 80, "left": 1742, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-122", "text": "122", "top": 130, "left": 1804, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-123", "text": "123", "top": 130, "left": 1742, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-121", "text": "121", "top": 210, "left": 1430, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-122", "text": "122", "top": 210, "left": 1365, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-123", "text": "123", "top": 210, "left": 1301, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-124", "text": "124", "top": 160, "left": 1742, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-125", "text": "125", "top": 240, "left": 1742, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-126", "text": "126", "top": 320, "left": 1742, "width": 120, "height": 23 },
                        // { "type": "stn", "id": "site-124", "text": "124", "top": 160, "left": 1742, "width": 120, "height": 23 },
                        // { "type": "stn", "id": "site-125", "text": "125", "top": 240, "left": 1742, "width": 120, "height": 23 },
                        // { "type": "stn", "id": "site-126", "text": "126", "top": 320, "left": 1742, "width": 120, "height": 23 },
                        // { "type": "stn", "id": "site-127", "text": "127", "top": 320, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-128", "text": "128", "top": 320, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-129", "text": "129", "top": 320, "left": 1826, "width": 40, "height": 23 }
                    ],
                    "barcode": []
                },
                {
                    "type": "floor",
                    "id": "page_floor2",
                    "text": "2F",
                    "top": 0,
                    "left": 0,
                    "width": 2900,
                    "height": 600,
                    "stns": [
                        // { "type": "stn", "id": "site-200", "text": "200", "top": 80, "left": 94, "width": 40, "height": 23 },
                        { "type": "stn", "id": "site-201", "text": "201", "top": 80, "left": 10, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-202", "text": "202", "top": 130, "left": 10, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-203", "text": "203", "top": 130, "left": 72, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-204", "text": "204", "top": 160, "left": 10, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-205", "text": "205", "top": 160, "left": 72, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-206", "text": "206", "top": 240, "left": 10, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-207", "text": "207", "top": 290, "left": 10, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-208", "text": "208", "top": 290, "left": 72, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-209", "text": "209", "top": 320, "left": 10, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-210", "text": "210", "top": 370, "left": 10, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-211", "text": "211", "top": 370, "left": 72, "width": 60, "height": 23 },
                        // { "type": "stn", "id": "site-212", "text": "212", "top": 160, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-213", "text": "213", "top": 160, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-214", "text": "214", "top": 160, "left": 10, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-215", "text": "215", "top": 160, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-216", "text": "216", "top": 160, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-217", "text": "217", "top": 160, "left": 1826, "width": 40, "height": 23 },
                        //
                        // { "type": "stn", "id": "site-218", "text": "218", "top": 240, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-219", "text": "219", "top": 240, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-220", "text": "220", "top": 240, "left": 10, "width": 40, "height": 23 },
                        { "type": "stn", "id": "site-221", "text": "221", "top": 80, "left": 1742, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-222", "text": "222", "top": 130, "left": 1806, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-223", "text": "223", "top": 130, "left": 1742, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-224", "text": "224", "top": 160, "left": 1806, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-225", "text": "225", "top": 160, "left": 1742, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-226", "text": "226", "top": 240, "left": 1742, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-227", "text": "227", "top": 290, "left": 1806, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-228", "text": "228", "top": 290, "left": 1742, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-229", "text": "229", "top": 320, "left": 1742, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-230", "text": "230", "top": 370, "left": 1806, "width": 60, "height": 23 },
                        { "type": "stn", "id": "site-231", "text": "231", "top": 370, "left": 1742, "width": 60, "height": 23 }
                    ],
                    "barcode": []
                },
                {
                    "type": "floor",
                    "id": "page_floor3",
                    "text": "3F",
                    "top": 0,
                    "left": 0,
                    "width": 2900,
                    "height": 600,
                    "stns": [
                        // { "type": "stn", "id": "site-300", "text": "300", "top": 80, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-301", "text": "301", "top": 80, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-302", "text": "302", "top": 80, "left": 10, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-303", "text": "303", "top": 80, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-304", "text": "304", "top": 80, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-305", "text": "305", "top": 80, "left": 1826, "width": 40, "height": 23 },
                        //
                        // { "type": "stn", "id": "site-306", "text": "306", "top": 130, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-307", "text": "307", "top": 130, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-308", "text": "308", "top": 130, "left": 10, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-309", "text": "309", "top": 130, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-310", "text": "310", "top": 130, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-311", "text": "311", "top": 130, "left": 1826, "width": 40, "height": 23 },
                        //
                        // { "type": "stn", "id": "site-312", "text": "312", "top": 160, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-313", "text": "313", "top": 160, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-314", "text": "314", "top": 160, "left": 10, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-315", "text": "315", "top": 160, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-316", "text": "316", "top": 160, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-317", "text": "317", "top": 160, "left": 1826, "width": 40, "height": 23 },
                        //
                        // { "type": "stn", "id": "site-318", "text": "318", "top": 240, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-319", "text": "319", "top": 240, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-320", "text": "320", "top": 240, "left": 10, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-321", "text": "321", "top": 240, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-322", "text": "322", "top": 240, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-323", "text": "323", "top": 240, "left": 1826, "width": 40, "height": 23 },
                        //
                        // { "type": "stn", "id": "site-324", "text": "324", "top": 320, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-325", "text": "325", "top": 320, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-326", "text": "326", "top": 320, "left": 10, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-327", "text": "327", "top": 320, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-328", "text": "328", "top": 320, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-329", "text": "329", "top": 320, "left": 1826, "width": 40, "height": 23 }
                    ],
                    "barcode": []
                },
                {
                    "type": "floor",
                    "id": "page_floor4",
                    "text": "4F",
                    "top": 0,
                    "left": 0,
                    "width": 2900,
                    "height": 600,
                    "stns": [
                        // { "type": "stn", "id": "site-400", "text": "400", "top": 80, "left": 94, "width": 40, "height": 23 },
                        { "type": "stn", "id": "site-401", "text": "401", "top": 80, "left": 10, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-402", "text": "402", "top": 160, "left": 10, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-403", "text": "403", "top": 240, "left": 10, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-404", "text": "404", "top": 320, "left": 10, "width": 120, "height": 23 },
                        // { "type": "stn", "id": "site-405", "text": "405", "top": 80, "left": 1826, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-406", "text": "406", "top": 130, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-407", "text": "407", "top": 130, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-408", "text": "408", "top": 130, "left": 10, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-409", "text": "409", "top": 130, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-410", "text": "410", "top": 130, "left": 1784, "width": 40, "height": 23 },
                        { "type": "stn", "id": "site-411", "text": "411", "top": 80, "left": 1742, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-412", "text": "412", "top": 160, "left": 1742, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-413", "text": "413", "top": 240, "left": 1742, "width": 120, "height": 23 },
                        { "type": "stn", "id": "site-414", "text": "414", "top": 320, "left": 1742, "width": 120, "height": 23 }
                        // { "type": "stn", "id": "site-415", "text": "415", "top": 160, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-416", "text": "416", "top": 160, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-417", "text": "417", "top": 160, "left": 1826, "width": 40, "height": 23 },
                        //
                        // { "type": "stn", "id": "site-418", "text": "418", "top": 240, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-419", "text": "419", "top": 240, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-420", "text": "420", "top": 240, "left": 10, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-421", "text": "421", "top": 240, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-422", "text": "422", "top": 240, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-423", "text": "423", "top": 240, "left": 1826, "width": 40, "height": 23 },
                        //
                        // { "type": "stn", "id": "site-424", "text": "424", "top": 320, "left": 94, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-425", "text": "425", "top": 320, "left": 52, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-426", "text": "426", "top": 320, "left": 10, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-427", "text": "427", "top": 320, "left": 1742, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-428", "text": "428", "top": 320, "left": 1784, "width": 40, "height": 23 },
                        // { "type": "stn", "id": "site-429", "text": "429", "top": 320, "left": 1826, "width": 40, "height": 23 }
                    ],
                    "barcode": []
                }
src/main/webapp/views/console.html
@@ -47,11 +47,11 @@
                <span>堆垛机 1</span>
                <span class="state-ss machine-put-flag    ">入库</span>
            </div>
            <div class="state">
                <span>堆垛机 2</span>
                <span class="state-ss machine-auto-flag    ">自动</span>
<!--            <div class="state">-->
<!--                <span>堆垛机 2</span>-->
<!--                <span class="state-ss machine-auto-flag    ">自动</span>-->
            </div>
<!--            </div>-->
            <div class="button"><span>所有状态</span></div>
            <div class="button item-group">
                <span class="machine-put-flag">入库</span>
@@ -595,12 +595,12 @@
                        // crns[i].bay = 15;
                        var offSet = 0;
                        unit = 13;
                        offSet = 140;
                        unit = 9;
                        offSet = 1250;
                        if(crns[i].bay === 1){
                            crnEl.animate({left: offSet + 'px'}, 1000);
                            crnEl.animate({left: offSet - 'px'}, 1000);
                        } else {
                            crnEl.animate({left: (offSet - unit + (crns[i].bay * unit)) + 'px'}, 1000);
                        }
src/main/webapp/views/crn.html
@@ -59,24 +59,24 @@
                    <!--            <span>&nbsp;</span>-->
                    <input id="crn1" disabled="disabled">
                </div>
                <div class="crn-command-item">
                    <label>2#</label>
                    <button id="demoBtn-2" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
                    <!--            <span>&nbsp;</span>-->
                    <input id="crn2" disabled="disabled">
                </div>
                <div class="crn-command-item">
                    <label>3#</label>
                    <button id="demoBtn-3" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
                    <!--            <span>&nbsp;</span>-->
                    <input id="crn3" disabled="disabled">
                </div>
                <div class="crn-command-item">
                    <label>4#</label>
                    <button id="demoBtn-4" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
                    <!--            <span>&nbsp;</span>-->
                    <input id="crn4" disabled="disabled">
                </div>
<!--                <div class="crn-command-item">-->
<!--                    <label>2#</label>-->
<!--                    <button id="demoBtn-2" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>-->
<!--                    &lt;!&ndash;            <span>&nbsp;</span>&ndash;&gt;-->
<!--                    <input id="crn2" disabled="disabled">-->
<!--                </div>-->
<!--                <div class="crn-command-item">-->
<!--                    <label>3#</label>-->
<!--                    <button id="demoBtn-3" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>-->
<!--                    &lt;!&ndash;            <span>&nbsp;</span>&ndash;&gt;-->
<!--                    <input id="crn3" disabled="disabled">-->
<!--                </div>-->
<!--                <div class="crn-command-item">-->
<!--                    <label>4#</label>-->
<!--                    <button id="demoBtn-4" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>-->
<!--                    &lt;!&ndash;            <span>&nbsp;</span>&ndash;&gt;-->
<!--                    <input id="crn4" disabled="disabled">-->
<!--                </div>-->
                <!--                <div class="crn-command-item">-->
                <!--                    <label>5#</label>-->
                <!--                    <button id="demoBtn-5" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>-->
@@ -155,9 +155,9 @@
                    <span class="select-title">堆垛机号</span>
                    <div class="select-container" style="padding: 20px 0;">
                        <label><input type="radio" name="crnSelect" value="1" checked>&nbsp;1号堆垛机</label>
                        <label><input type="radio" name="crnSelect" value="2">&nbsp;2号堆垛机</label>
                        <label><input type="radio" name="crnSelect" value="3">&nbsp;3号堆垛机</label>
                        <label><input type="radio" name="crnSelect" value="4">&nbsp;4号堆垛机</label>
<!--                        <label><input type="radio" name="crnSelect" value="2">&nbsp;2号堆垛机</label>-->
<!--                        <label><input type="radio" name="crnSelect" value="3">&nbsp;3号堆垛机</label>-->
<!--                        <label><input type="radio" name="crnSelect" value="4">&nbsp;4号堆垛机</label>-->
                        <!--                        <label><input type="radio" name="crnSelect" value="5">&nbsp;5号堆垛机</label>-->
                        <!--                        <label><input type="radio" name="crnSelect" value="6">&nbsp;6号堆垛机</label>-->
                    </div>