| | |
| | | .eq("stn_no",param.getTerminalNo())); |
| | | if(Cools.isEmpty(staDesc)){ |
| | | map.put("ReturnStatus",1); |
| | | map.put("ErrorMessage","出库路劲不存在!"); |
| | | map.put("ErrorMessage","出库路径不存在!"); |
| | | return map; |
| | | } |
| | | r = openService.taskCreate(new TaskCreateParam(param,staDesc.getCrnNo())); |
| | |
| | | storageEscalationParam.setLocType(1); |
| | | }else if(staProtocol.isLow()){ |
| | | storageEscalationParam.setLocType(0); |
| | | }else if (staProtocol.isCentre()){ |
| | | storageEscalationParam.setLocType(2); |
| | | } |
| | | |
| | | storageEscalationParam.setTerminalNo(staProtocol.getSiteId()); |
| | |
| | | staProtocol.setStaNo(inSta.getBackSta().shortValue()); |
| | | devpThread.setPakMk(staProtocol.getSiteId(), false); |
| | | MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | log.error("已有入库任务,wms--->任务号:{}",result.getTaskNo()); |
| | | } |
| | | |
| | | } else { |
| | |
| | | staProtocol.setStaNo(inSta.getBackSta().shortValue()); |
| | | devpThread.setPakMk(staProtocol.getSiteId(), false); |
| | | MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | log.error("入库异常,wms返回值不符合条件,wms--->{}",response); |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | |
| | | staProtocol.setStaNo(inSta.getBackSta().shortValue()); |
| | | devpThread.setPakMk(staProtocol.getSiteId(), false); |
| | | MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | log.error("任务已存在,wms--->任务号:{}",result.getTaskNo()); |
| | | } |
| | | |
| | | } else { |
| | |
| | | staProtocol.setStaNo(inSta.getBackSta().shortValue()); |
| | | devpThread.setPakMk(staProtocol.getSiteId(), false); |
| | | MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | log.error("请求接口异常,wms--->{}",response); |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | |
| | | if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) { |
| | | break; |
| | | } |
| | | // int storeCount = basDevpService.getStoreCount(); |
| | | // if (storeCount >= maxCount) { |
| | | // log.error("输送线暂存数达到上限{}", storeCount); |
| | | // break; |
| | | // } |
| | | |
| | | //输送线只允许存在一个托盘 |
| | | int storeCount = basDevpService.getStoreCount(); |
| | | if (storeCount >= maxCount) { |
| | | log.error("输送线暂存数达到上限,当前输送线托盘数量:{},最大暂存数量:{}", storeCount,maxCount); |
| | | break; |
| | | } |
| | | |
| | | |
| | | // 已经存在吊车执行任务时,则过滤 |
| | |
| | | // crnProtocol.setTemp2(siemensNet.getByteTransform().TransInt16(result.Content, 22)); |
| | | // crnProtocol.setTemp3(siemensNet.getByteTransform().TransInt16(result.Content, 24)); |
| | | // crnProtocol.setTemp4(siemensNet.getByteTransform().TransInt16(result.Content, 26)); |
| | | if(slave.getId()==3){ |
| | | // if(slave.getId()==3){ |
| | | // crnProtocol.setXSpeed((float) siemensNet.getByteTransform().TransInt16(result.Content, 28)); |
| | | // crnProtocol.setYSpeed((float) siemensNet.getByteTransform().TransInt16(result.Content, 30)); |
| | | // crnProtocol.setZSpeed((float) siemensNet.getByteTransform().TransInt16(result.Content, 32)); |
| | |
| | | // crnProtocol.setYDistance((float) siemensNet.getByteTransform().TransInt16(result.Content, 36)); |
| | | // crnProtocol.setXDuration((float) siemensNet.getByteTransform().TransInt16(result.Content, 38)); |
| | | // crnProtocol.setYDuration((float) siemensNet.getByteTransform().TransInt16(result.Content, 40)); |
| | | // crnProtocol.setXSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 28)); |
| | | // crnProtocol.setYSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 32)); |
| | | // crnProtocol.setZSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 36)); |
| | | // crnProtocol.setXDistance(siemensNet.getByteTransform().TransSingle(result.Content, 40)); |
| | | // crnProtocol.setYDistance(siemensNet.getByteTransform().TransSingle(result.Content, 44)); |
| | | // crnProtocol.setXDuration(siemensNet.getByteTransform().TransSingle(result.Content, 48)); |
| | | // crnProtocol.setYDuration(siemensNet.getByteTransform().TransSingle(result.Content, 52)); |
| | | |
| | | // }else{ |
| | | crnProtocol.setXSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 28)); |
| | | crnProtocol.setYSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 32)); |
| | | crnProtocol.setZSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 36)); |
| | |
| | | crnProtocol.setXDuration(siemensNet.getByteTransform().TransSingle(result.Content, 48)); |
| | | crnProtocol.setYDuration(siemensNet.getByteTransform().TransSingle(result.Content, 52)); |
| | | |
| | | }else{ |
| | | crnProtocol.setXSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 28)); |
| | | crnProtocol.setYSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 32)); |
| | | crnProtocol.setZSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 36)); |
| | | crnProtocol.setXDistance(siemensNet.getByteTransform().TransSingle(result.Content, 40)); |
| | | crnProtocol.setYDistance(siemensNet.getByteTransform().TransSingle(result.Content, 44)); |
| | | crnProtocol.setXDuration(siemensNet.getByteTransform().TransSingle(result.Content, 48)); |
| | | crnProtocol.setYDuration(siemensNet.getByteTransform().TransSingle(result.Content, 52)); |
| | | |
| | | } |
| | | // } |
| | | |
| | | |
| | | |
| | |
| | | add(1001); |
| | | add(1002); |
| | | add(1003); |
| | | add(1004); |
| | | add(1005); |
| | | add(1006); |
| | | add(1007); |
| | | add(1008); |
| | | add(1009); |
| | | add(1010); |
| | | add(1011); |
| | | add(1012); |
| | | add(1013); |
| | | add(1014); |
| | | add(1015); |
| | | add(1016); |
| | | add(1017); |
| | | add(1018); |
| | | add(1019); |
| | | add(1020); |
| | | |
| | | |
| | | }}; |
| | | public static final ArrayList<Integer> staNos2 = new ArrayList<Integer>() {{ |
| | | add(2001); |
| | | add(2002); |
| | | add(2003); |
| | | add(2004); |
| | | add(2005); |
| | | add(2006); |
| | | add(2007); |
| | | add(2008); |
| | | add(2009); |
| | | add(2010); |
| | | add(2011); |
| | | add(2012); |
| | | add(2013); |
| | | add(2014); |
| | | add(2015); |
| | | add(2016); |
| | | add(2017); |
| | | add(2018); |
| | | add(2019); |
| | | |
| | | }}; |
| | | public static final ArrayList<Integer> staNos3 = new ArrayList<Integer>() {{ |
| | | add(1051); |
| | | add(1052); |
| | | add(1053); |
| | | add(1054); |
| | | add(1055); |
| | | add(1056); |
| | | add(1057); |
| | | add(1058); |
| | | }}; |
| | | public static final ArrayList<Integer> staNos4 = new ArrayList<Integer>() {{ |
| | | add(2051); |
| | | add(2052); |
| | | add(2053); |
| | | add(2054); |
| | | add(2055); |
| | | add(2056); |
| | | add(2057); |
| | | add(2058); |
| | | |
| | | }}; |
| | | |
| | | /** |
| | |
| | | switch (slave.getId()) { |
| | | case 1: |
| | | return staNos1; |
| | | case 2: |
| | | return staNos2; |
| | | case 3: |
| | | return staNos3; |
| | | case 4: |
| | | return staNos4; |
| | | default: |
| | | throw new CoolException("服务器异常"); |
| | | } |
| | |
| | | staProtocol.setStaNo(siemensS7Net.getByteTransform().TransInt16(result.Content, i * 8 + 4)); // 目标站 |
| | | |
| | | boolean[] status = siemensS7Net.getByteTransform().TransBool(result.Content, i * 8 + 6, 2); |
| | | staProtocol.setAutoing(status[0]); // |
| | | staProtocol.setAutoing(status[0]); // 自动 |
| | | staProtocol.setLoading(status[1]); // 有物 |
| | | staProtocol.setInEnable(status[2]); // 可入 |
| | | staProtocol.setOutEnable(status[3]);// 可出 |
| | |
| | | staProtocol.setFullPlt(status[5]); // 满托盘 |
| | | staProtocol.setHigh(status[6]); // 高库位 |
| | | staProtocol.setLow(status[7]); // 低库位 |
| | | staProtocol.setCentre(status[8]); // 中库位 |
| | | // staProtocol.setCentre(status[8]); // 中库位 |
| | | |
| | | if (!staProtocol.isPakMk() && !staProtocol.isLoading()) { |
| | | staProtocol.setPakMk(true); |
| | |
| | | int sta = 0; |
| | | switch (slave.getId()) { |
| | | case 1: |
| | | sta = 1014; |
| | | break; |
| | | case 2: |
| | | sta = 2007; |
| | | break; |
| | | case 3: |
| | | sta = 1052; |
| | | break; |
| | | case 4: |
| | | sta = 2056; |
| | | sta = 1002; |
| | | break; |
| | | } |
| | | StaProtocol staProtocol1 = station.get(sta); |
| | | boolean[] status1 = siemensS7Net.getByteTransform().TransBool(resultErr1.Content, 0, 1); |
| | | staProtocol1.setFrontErr(status1[0]); |
| | | staProtocol1.setBackErr(status1[1]); |
| | | staProtocol1.setHighErr(status1[2]); |
| | | staProtocol1.setLeftErr(status1[3]); |
| | | staProtocol1.setRightErr(status1[4]); |
| | | staProtocol1.setWeightErr(status1[5]); |
| | | staProtocol1.setBarcodeErr(status1[6]); |
| | | staProtocol1.setFrontErr(status1[0]); // 前超 |
| | | staProtocol1.setBackErr(status1[1]); // 后超 |
| | | staProtocol1.setHighErr(status1[2]); // 高超 |
| | | staProtocol1.setLeftErr(status1[3]); // 左超 |
| | | staProtocol1.setRightErr(status1[4]); // 右超 |
| | | staProtocol1.setWeightErr(status1[5]); // 超重 |
| | | staProtocol1.setBarcodeErr(status1[6]); // 扫码失败 |
| | | } |
| | | |
| | | |
| | |
| | | wcs-slave: |
| | | doubleDeep: true #双深 |
| | | doubleDeep: false #双深 |
| | | doubleLocs: 1,4 #双深库位排号 1,4 |
| | | groupCount: 4 #一个堆垛机负责的货架排数 |
| | | groupCount: 2 #一个堆垛机负责的货架排数 |
| | | crn[0]: #堆垛机1 |
| | | id: 1 |
| | | ip: 192.168.110.100 |
| | |
| | | offset: 2 #偏移量,当堆垛机站点列号=1时,偏移量=2 |
| | | port: 102 |
| | | crnOutStn[0]: #堆垛机出库站点--1F输送线 放货口 |
| | | staNo: 1002 |
| | | staNo: 1001 |
| | | row: 1 |
| | | bay: 1 |
| | | lev: 1 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnInStn[0]: #堆垛机入库站点1--1F输送线 取货口 |
| | | staNo: 1004 |
| | | row: 2 |
| | | staNo: 1001 |
| | | row: 1 |
| | | bay: 1 |
| | | lev: 1 |
| | | backSta: 102 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnOutStn[1]: #堆垛机出库站点--2F输送线 放货口 |
| | | staNo: 2002 |
| | | row: 1 |
| | | bay: 59 |
| | | lev: 11 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnInStn[1]: #堆垛机入库站点--2F输送线 取货口 |
| | | staNo: 2003 |
| | | row: 2 |
| | | bay: 59 |
| | | lev: 11 |
| | | backSta: 102 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | devp[0]: #输送线--半成品1F |
| | |
| | | port: 102 |
| | | slot: 0 |
| | | emptyInSta[0]: #空板入库口0 |
| | | staNo: 1014 |
| | | staNo: 1002 |
| | | inSta[0]: #入库口1 |
| | | staNo: 1014 |
| | | backSta: 1015 |
| | | staNo: 1002 |
| | | backSta: 1003 |
| | | barcode: ${wcs-slave.barcode[0].id} |
| | | led: ${wcs-slave.led[0].id} |
| | | # led: ${wcs-slave.led[0].id} |
| | | # scale: ${wcs-slave.scale[0].id} |
| | | outSta[0]: #出库口1 |
| | | staNo: 1019 |
| | | outSta[1]: #出库口2 |
| | | staNo: 1010 |
| | | outSta[2]: #出库口2 |
| | | staNo: 1020 |
| | | staNo: 1003 |
| | | barcode[0]: #条码扫描仪 |
| | | port: 51236 |
| | | ip: 172.17.91.39 |
| | | id: 1 |
| | | # LED1 |
| | | led[0]: |
| | | id: 1 |
| | | ip: 192.168.110.210 |
| | | port: 5005 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | staArr: 1052 |
| | | # LED2 |
| | | led[1]: |
| | | id: 2 |
| | | ip: 192.168.110.211 |
| | | port: 5005 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | staArr: 1051 |
| | | # led[0]: |
| | | # id: 1 |
| | | # ip: 192.168.110.210 |
| | | # port: 5005 |
| | | # devpPlcId: ${wcs-slave.devp[0].id} |
| | | # staArr: 1052 |
| | | # 磅秤 半成品一楼 192.168.110.24 |
| | | # scale[0]: |
| | | # id: 1 |
| | |
| | | |
| | | wms: |
| | | #输送线暂存数 |
| | | count: 8 |
| | | count: 1 |
| | | maxCirle: 3 |
| | | # 是否开启上报 |
| | | start: true |
| | |
| | | mapInfo = { |
| | | "mapName": "wcs", |
| | | "rackCount": 13, |
| | | "rackCount": 2, |
| | | "crnCount": 4, |
| | | "stbCount": 4, |
| | | "hpPosition": 0, |
| | | "minBayNo": 1, |
| | | "floors": 1, |
| | | "racks": [ |
| | | // { |
| | | // "type": "rack", |
| | | // "id": "rack7", |
| | | // "top": 326, |
| | | // "left": 800, |
| | | // "width": 795, |
| | | // "height": 23, |
| | | // "minBayNo": 1, |
| | | // "maxBayNo": 50, |
| | | // "hiddenArr": [1,22] |
| | | // }, |
| | | { |
| | | "type": "rack", |
| | | "id": "rack6", |
| | | "id": "rack1", |
| | | "top": 303, |
| | | "left": 820, |
| | | "width": 1050, |
| | | "height": 23, |
| | | "minBayNo": 1, |
| | | "maxBayNo": 59, |
| | | "hiddenArr": [1,59] |
| | | "maxBayNo": 30, |
| | | "hiddenArr": [1,30] |
| | | }, |
| | | // { |
| | | // "type": "rack", |
| | | // "id": "rack5", |
| | | // "top": 209, |
| | | // "left": 820, |
| | | // "width": 1050, |
| | | // "height": 23, |
| | | // "minBayNo": 1, |
| | | // "maxBayNo": 59, |
| | | // "hiddenArr": [1,59] |
| | | // }, |
| | | { |
| | | "type": "rack", |
| | | "id": "rack4", |
| | | "id": "rack2", |
| | | "top": 232, |
| | | "left": 820, |
| | | "width": 1050, |
| | | "height": 23, |
| | | "minBayNo": 1, |
| | | "maxBayNo": 59, |
| | | "hiddenArr": [1,59] |
| | | "maxBayNo": 30, |
| | | "hiddenArr": [1,30] |
| | | }, |
| | | // { |
| | | // "type": "rack", |
| | | // "id": "rack3", |
| | | // "top": 182, |
| | | // "left": 820, |
| | | // "width": 1050, |
| | | // "height": 23, |
| | | // "minBayNo": 1, |
| | | // "maxBayNo": 59, |
| | | // "hiddenArr": [1,59] |
| | | // }, |
| | | { |
| | | "type": "rack", |
| | | "id": "rack2", |
| | | "top": 159, |
| | | "left": 820, |
| | | "width": 1050, |
| | | "height": 23, |
| | | "minBayNo": 1, |
| | | "maxBayNo": 59, |
| | | "hiddenArr": [1,59] |
| | | }, |
| | | { |
| | | "type": "rack", |
| | | "id": "rack1", |
| | | "top": 98, |
| | | "left": 820, |
| | | "width": 1050, |
| | | "height": 23, |
| | | "minBayNo": 1, |
| | | "maxBayNo": 59, |
| | | "hiddenArr": [1,59] |
| | | }, |
| | | // { |
| | | // "type": "rack", |
| | | // "id": "rack0", |
| | | // "top": 75, |
| | | // "left": 820, |
| | | // "width": 1050, |
| | | // "height": 23, |
| | | // "minBayNo": 1, |
| | | // "maxBayNo": 59, |
| | | // "hiddenArr": [1,59] |
| | | // } |
| | | ], |
| | | "crns": [{ |
| | | "type": "crane", |
| | |
| | | "width": 93, |
| | | "height": 22 |
| | | }, { |
| | | "type": "crane", |
| | | "id": "crn-2", |
| | | "text": "2", |
| | | "top": 132, |
| | | "left": 855, |
| | | "width": 93, |
| | | "height": 22 |
| | | }, { |
| | | "type": "track", |
| | | "id": "lb_track2", |
| | | "text": "", |
| | | "top": 278, |
| | | "left": 769, |
| | | "width": 850, |
| | | "height": 2 |
| | | }, { |
| | | "type": "track", |
| | | "id": "lb_track1", |
| | | "text": "", |
| | | "top": 143, |
| | | "left": 769, |
| | | "width": 850, |
| | | "width": 1100, |
| | | "height": 2 |
| | | }], |
| | | "areas": [{ |
| | |
| | | "left": 422, |
| | | "width": 308, |
| | | "height": 706, |
| | | "stns": [{ |
| | | "type": "stn", |
| | | "id": "site-1008", |
| | | "text": "1008", |
| | | "top": 99, |
| | | "left": 771, |
| | | "width": 62, |
| | | "height": 23 |
| | | },{ |
| | | "type": "stn", |
| | | "id": "site-1007", |
| | | "text": "1007", |
| | | "top": 99, |
| | | "left": 707, |
| | | "width": 62, |
| | | "height": 23 |
| | | },{ |
| | | "type": "stn", |
| | | "id": "site-102", |
| | | "text": "RGV小车", |
| | | "top": 99, |
| | | "left": 643, |
| | | "width": 62, |
| | | "height": 23 |
| | | },{ |
| | | "type": "stn", |
| | | "id": "site-1011", |
| | | "text": "1011", |
| | | "top": 99, |
| | | "left": 579, |
| | | "width": 62, |
| | | "height": 23 |
| | | }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-1020", |
| | | "text": "1020", |
| | | "top": 70, |
| | | "left": 579, |
| | | "width": 62, |
| | | "height": 23 |
| | | }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-103", |
| | | "text": "", |
| | | "top": 70, |
| | | "left": 515, |
| | | "width": 62, |
| | | "height": 23 |
| | | }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-103", |
| | | "text": "", |
| | | "top": 70, |
| | | "left": 450, |
| | | "width": 62, |
| | | "height": 23 |
| | | }, |
| | | // { |
| | | // "type": "stn", |
| | | // "id": "site-104", |
| | | // "text": "104", |
| | | // "top": 124, |
| | | // "left": 579, |
| | | // "width": 62, |
| | | // "height": 34 |
| | | // }, |
| | | "stns": [ |
| | | { |
| | | "type": "stn", |
| | | "id": "site-1006", |
| | | "text": "1006", |
| | | "top": 160, |
| | | "left": 771, |
| | | "width": 62, |
| | | "height": 23 |
| | | },{ |
| | | "type": "stn", |
| | | "id": "site-1005", |
| | | "text": "1005", |
| | | "top": 160, |
| | | "left": 707, |
| | | "width": 62, |
| | | "height": 23 |
| | | },/*{ |
| | | "type": "stn", |
| | | "id": "site-123", |
| | | "text": "RGV小车", |
| | | "top": 160, |
| | | "left": 643, |
| | | "width": 62, |
| | | "height": 23 |
| | | },*/ |
| | | // { |
| | | // "type": "stn", |
| | | // "id": "site-122", |
| | | // "text": "122", |
| | | // "top": 160, |
| | | // "left": 579, |
| | | // "width": 62, |
| | | // "height": 23 |
| | | // }, |
| | | // { |
| | | // "type": "stn", |
| | | // "id": "site-121", |
| | | // "text": "121", |
| | | // "top": 186, |
| | | // "left": 579, |
| | | // "width": 62, |
| | | // "height": 42 |
| | | // }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-1004", |
| | | "text": "1004", |
| | | "id": "site-1001", |
| | | "text": "1001", |
| | | "top": 231, |
| | | "left": 771, |
| | | "left": 790, |
| | | "width": 62, |
| | | "height": 23 |
| | | },{ |
| | | "type": "stn", |
| | | "id": "site-1002", |
| | | "text": "1002", |
| | | "top": 231, |
| | | "left": 720, |
| | | "width": 62, |
| | | "height": 23 |
| | | },{ |
| | |
| | | "id": "site-1003", |
| | | "text": "1003", |
| | | "top": 231, |
| | | "left": 707, |
| | | "left": 650, |
| | | "width": 62, |
| | | "height": 23 |
| | | },/*{ |
| | | "type": "stn", |
| | | "id": "site-118", |
| | | "text": "RGV小车", |
| | | "top": 231, |
| | | "left": 643, |
| | | "width": 62, |
| | | "height": 23 |
| | | },*/ |
| | | // { |
| | | // "type": "stn", |
| | | // "id": "site-117", |
| | | // "text": "117", |
| | | // "top": 231, |
| | | // "left": 579, |
| | | // "width": 62, |
| | | // "height": 23 |
| | | // },{ |
| | | // "type": "stn", |
| | | // "id": "site-116", |
| | | // "text": "116", |
| | | // "top": 256, |
| | | // "left": 579, |
| | | // "width": 62, |
| | | // "height": 46 |
| | | // }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-1002", |
| | | "text": "1002", |
| | | "top": 304, |
| | | "left": 771, |
| | | "width": 62, |
| | | "height": 23 |
| | | },{ |
| | | "type": "stn", |
| | | "id": "site-1001", |
| | | "text": "1001", |
| | | "top": 304, |
| | | "left": 707, |
| | | "width": 62, |
| | | "height": 23 |
| | | "height": 40 |
| | | }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-1016", |
| | | "text": "1016", |
| | | "top": 330, |
| | | "left": 707, |
| | | "width": 62, |
| | | "height": 23 |
| | | }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-1018", |
| | | "text": "1018", |
| | | "top": 356, |
| | | "left": 707, |
| | | "width": 62, |
| | | "height": 23 |
| | | }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-1019", |
| | | "text": "1019", |
| | | "top": 356, |
| | | "left": 772, |
| | | "width": 62, |
| | | "height": 23 |
| | | }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-114", |
| | | "text": "", |
| | | "top": 356, |
| | | "left": 837, |
| | | "width": 62, |
| | | "height": 23 |
| | | }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-114", |
| | | "text": "", |
| | | "top": 356, |
| | | "left": 902, |
| | | "width": 62, |
| | | "height": 23 |
| | | }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-1017", |
| | | "text": "1017", |
| | | "top": 383, |
| | | "left": 707, |
| | | "width": 62, |
| | | "height": 23 |
| | | },/*{ |
| | | "type": "stn", |
| | | "id": "site-113", |
| | | "text": "RGV小车", |
| | | "top": 304, |
| | | "left": 643, |
| | | "width": 62, |
| | | "height": 23 |
| | | },*/ |
| | | // { |
| | | // "type": "stn", |
| | | // "id": "site-112", |
| | | // "text": "112", |
| | | // "top": 304, |
| | | // "left": 579, |
| | | // "width": 62, |
| | | // "height": 23 |
| | | // }, |
| | | { |
| | | "type": "stn", |
| | | "id": "site-1012", |
| | | "text": "1012", |
| | | "top": 99, |
| | | "left": 515, |
| | | "width": 62, |
| | | "height": 23 |
| | | },{ |
| | | "type": "stn", |
| | | "id": "site-1013", |
| | | "text": "1013", |
| | | "top": 124, |
| | | "left": 515, |
| | | "width": 62, |
| | | "height": 177 |
| | | },{ |
| | | "type": "stn", |
| | | "id": "site-1014", |
| | | "text": "1014", |
| | | "top": 304, |
| | | "left": 515, |
| | | "width": 62, |
| | | "height": 23 |
| | | },{ |
| | | "type": "stn", |
| | | "id": "site-1015", |
| | | "text": "1015", |
| | | "top": 329, |
| | | "left": 515, |
| | | "width": 62, |
| | | "height": 23 |
| | | }, |
| | | // { |
| | | // "type": "stn", |
| | | // "id": "site-1001", |
| | | // "text": "1001", |
| | | // "top": 99, |
| | | // "left": 451, |
| | | // "width": 62, |
| | | // "height": 23 |
| | | // }, |
| | | // { |
| | | // "type": "stn", |
| | | // "id": "site-1002", |
| | | // "text": "1002", |
| | | // "top": 160, |
| | | // "left": 451, |
| | | // "width": 62, |
| | | // "height": 23 |
| | | // },{ |
| | | // "type": "stn", |
| | | // "id": "site-1003", |
| | | // "text": "1003", |
| | | // "top": 231, |
| | | // "left": 451, |
| | | // "width": 62, |
| | | // "height": 23 |
| | | // },{ |
| | | // "type": "stn", |
| | | // "id": "site-1004", |
| | | // "text": "1004", |
| | | // "top": 304, |
| | | // "left": 451, |
| | | // "width": 62, |
| | | // "height": 23 |
| | | // } |
| | | ] |
| | | }] |
| | | }] |
| | |
| | | var baseUrl = "/scwcs"; |
| | | var baseUrl = "/wcs"; |
| | | |
| | | // 详情窗口-高度 |
| | | var detailHeight = '80%'; |
| | |
| | | <html lang="en"> |
| | | <head> |
| | | <meta charset="utf-8"> |
| | | <title>中扬 - 自动化立体仓库 - AS / RS</title> |
| | | <title>自动化立体仓库 - wcs</title> |
| | | <meta name="renderer" content="webkit"> |
| | | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"> |
| | | <link rel="icon" type="image/x-icon" href="../static/image/favicon.ico" /> |
| | | <link rel="stylesheet" href="../static/layui/css/layui.css" media="all"> |
| | | <link rel="stylesheet" href="../static/css/admin.css?v=318" media="all"> |
| | | <link rel="stylesheet" href="../static/css/loader.css" media="all"> |
| | | <link rel="stylesheet" href="../static/wms/layui/css/layui.css" media="all"> |
| | | <link rel="stylesheet" href="../static/wms/css/admin.css?v=318" media="all"> |
| | | <link rel="stylesheet" href="../static/wms/css/loader.css" media="all"> |
| | | <link rel="stylesheet" href="../static/wcs/css/layx.min.css" type="text/css" /> |
| | | <script src="../static/wcs/js/tools/layx.min.js"></script> |
| | | <style> |
| | | .layui-logo img { |
| | | width: 25px; |
| | |
| | | font-weight: 400; |
| | | /*margin-left: 5px;*/ |
| | | } |
| | | /* 弹窗样式 */ |
| | | .popup { |
| | | position: fixed; |
| | | top: 0; |
| | | left: 0; |
| | | width: 100%; |
| | | height: 100%; |
| | | background-color: rgba(0,0,0,0.5); |
| | | display: none; |
| | | justify-content: center; |
| | | align-items: center; |
| | | z-index: 9999; |
| | | } |
| | | |
| | | .popup-content { |
| | | background-color: #fff; |
| | | padding: 20px; |
| | | border-radius: 5px; |
| | | box-shadow: 0px 0px 20px rgba(0,0,0,0.3); |
| | | text-align: center; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body class="layui-layout-body"> |
| | |
| | | <!-- 头部 --> |
| | | <div class="layui-header"> |
| | | <div class="layui-logo"> |
| | | <img src="../static/image/zy_logo_dark_color.png" style="display: inline-block; width: 40%;height: auto"> |
| | | <!-- <span style="margin-top: 0; letter-spacing: 10px">中扬立库</span>--> |
| | | <!-- <img src="../static/image/logo.svg"/>--> |
| | | <!-- <cite>中扬 - Zoneyung</cite>--> |
| | | <img class="loginLogo" src="../static/wms/image/logo.png" style="display: inline-block; width: 60%;height: auto"> |
| | | <!-- <span style="margin-top: 0; letter-spacing: 10px">wcs</span>--> |
| | | <!-- <img src="../static/wms/image/logo.svg"/>--> |
| | | <!-- <cite>wcs - 自动化立体仓库</cite>--> |
| | | </div> |
| | | |
| | | <ul class="layui-nav layui-layout-left"> |
| | |
| | | </li> |
| | | </ul> |
| | | <ul class="layui-nav layui-layout-right"> |
| | | <!-- <li class="layui-nav-item" lay-unselect>--> |
| | | <!-- <a ew-event="note" title="便签"><i class="layui-icon layui-icon-note"></i></a>--> |
| | | <!-- </li>--> |
| | | <li class="layui-nav-item" lay-unselect id="licenseShow" style="display: none;user-select: none;"> |
| | | <div style="color: red;">临时许可证有效期:<span id="licenseDays">29</span>天</div> |
| | | <div style="color: red;">仓储系统许可有效期:<span id="licenseDays">29</span>天</div> |
| | | </li> |
| | | <li class="layui-nav-item layui-hide-xs" lay-unselect> |
| | | <a ew-event="fullScreen" title="全屏"><i class="layui-icon layui-icon-screen-full"></i></a> |
| | |
| | | <div class="layui-body"></div> |
| | | <!-- 底部 --> |
| | | <div class="layui-footer layui-text"> |
| | | copyright © 2022 <a href="https://www.superton.cn/" target="_blank">浙江中扬立库有限公司</a> all rights reserved. |
| | | <!-- <span class="copyright-text">copyright © 2023 wcs all rights reserved.</span>--> |
| | | <span class="pull-right">Version 1.0.0</span> |
| | | </div> |
| | | |
| | |
| | | <div class="layuimini-loader"> |
| | | <div class="layuimini-loader-inner"></div> |
| | | </div> |
| | | |
| | | <script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../static/layui/layui.js"></script> |
| | | <script type="text/javascript" src="../static/js/handlebars/handlebars-v4.5.3.js"></script> |
| | | <script type="text/javascript" src="../static/js/common.js"></script> |
| | | <!-- 弹窗内容 --> |
| | | <div class="popup" id="popup"> |
| | | <div class="popup-content"> |
| | | <h2 style="font-size: 28px;margin-bottom: 10px;">许可证即将过期</h2> |
| | | <div id="popup-text" style="font-size: 28px;color: red"></div> |
| | | <button style="background-color: #007bff;color: #fff;border: none;padding: 10px 20px;border-radius: 5px;cursor: pointer;font-size: 16px;" onclick="hidePopup()">关闭</button> |
| | | </div> |
| | | </div> |
| | | <script> |
| | | console.log('%c 中扬立库平台 %c 1.0.0','background-color:rgb(53,73,94);color: #fff;border-radius:2px 0 0 2px;padding:2px 4px;','background-color:rgb(25,190,107);color: #fff;border-radius:0 2px 2px 0;padding:2px 4px;font: 9pt "Apercu Regular", Georgia, "Times New Roman", Times, serif;'); |
| | | // 显示弹窗 |
| | | function showPopup(res) { |
| | | document.getElementById('popup').style.display = 'block'; |
| | | // 获取弹出窗口内容的容器元素 |
| | | var popupText = document.getElementById('popup-text'); |
| | | // 假设后台返回的字符串为 responseString |
| | | if (res!==""){ |
| | | // 获取当前日期 |
| | | const currentDate = new Date(); |
| | | // 创建新日期对象并添加天数 |
| | | const newDate = new Date(); |
| | | newDate.setDate(currentDate.getDate() + res + 1); |
| | | // 将字符串设置为弹窗内容的文本 |
| | | popupText.textContent = "许可证将于" + new Intl.DateTimeFormat('zh-CN').format(newDate) + "过期,剩余有效期:" + res + "天!"; |
| | | }else { |
| | | document.getElementById('popup').style.display = 'none'; |
| | | } |
| | | } |
| | | |
| | | // 隐藏弹窗 |
| | | function hidePopup() { |
| | | document.getElementById('popup').style.display = 'none'; |
| | | } |
| | | </script> |
| | | <script type="text/javascript" src="../static/wms/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../static/wms/layui/layui.js"></script> |
| | | <script type="text/javascript" src="../static/wms/js/handlebars/handlebars-v4.5.3.js"></script> |
| | | <script type="text/javascript" src="../static/wms/js/common.js"></script> |
| | | <script> |
| | | f() |
| | | function f() { |
| | | $.ajax({ |
| | | url: baseUrl + "/license/getLicenseDays", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'POST', |
| | | success: function (res) { |
| | | if (res.code == 200) { |
| | | let days = res.data |
| | | if (days <= 15) { |
| | | showPopup(res.data) |
| | | } else { |
| | | showPopup(""); |
| | | } |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | </script> |
| | | <script> |
| | | console.log('%c wcs %c 1.0.0','background-color:rgb(53,73,94);color: #fff;border-radius:2px 0 0 2px;padding:2px 4px;','background-color:rgb(25,190,107);color: #fff;border-radius:0 2px 2px 0;padding:2px 4px;font: 9pt "Apercu Regular", Georgia, "Times New Roman", Times, serif;'); |
| | | $(function () { |
| | | if ("" === localStorage.getItem('token')) { |
| | | top.location.href = baseUrl + "/login"; |
| | |
| | | }); |
| | | |
| | | layui.config({ |
| | | base: baseUrl + "/static/layui/lay/modules/" |
| | | base: baseUrl + "/static/wms/layui/lay/modules/" |
| | | }).extend({ |
| | | notice: 'notice/notice', |
| | | }).use(['index', 'element', 'layer', 'admin', 'notice'], function () { |
| | |
| | | var html = template(res); |
| | | $("#menu-main").html(html); |
| | | element.init(); |
| | | |
| | | $("#a-30519").attr({"href":$("#a-30519").attr("lay-href"),"target":"_blank"}) |
| | | $("#a-30519").attr({"lay-href":""}) |
| | | $("#a-30520").attr({"href":$("#a-30520").attr("lay-href"),"target":"_blank"}) |
| | | $("#a-30520").attr({"lay-href":""}) |
| | | $("#a-30522").attr({"href":$("#a-30522").attr("lay-href"),"target":"_blank"}) |
| | | $("#a-30522").attr({"lay-href":""}) |
| | | } else if (res.code === 403) { |
| | | top.location.href = baseUrl + "/login"; |
| | | } else { |
| | | layer.msg(res.msg, {icon: 2}); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | $.ajax({ |
| | | url: baseUrl+"/loginInformation", |
| | | data: {}, |
| | | method: 'GET', |
| | | success: function (res) { |
| | | var data = res.data |
| | | $(".copyright-text").text(data.loginCopyrightText); |
| | | $(".loginLogo").attr("src", data.loginLogo); |
| | | } |
| | | }); |
| | | |
| | |
| | | if (res.code == 200) { |
| | | let days = res.data |
| | | if (days <= 30) { |
| | | // 弹出一个简单的提示框 |
| | | layer.alert(` |
| | | <div style="font-size: 100px; text-align: center; line-height: 1.8; color: red"> |
| | | 许可证有效期为:${days} |
| | | </div> |
| | | `, { |
| | | area: ['1000px', '800px'], |
| | | btn: '确定', |
| | | btnAlign: 'c', // 按钮居中(默认是右对齐) |
| | | yes: function(index) { |
| | | layer.msg('请联系立库公司商务续约'); |
| | | layer.close(index); |
| | | } |
| | | }); |
| | | $("#licenseShow").show() |
| | | $("#licenseDays").html(days) |
| | | alert("临时许可有效期:" + days + "天") |
| | | } |
| | | }else { |
| | | top.location.href = baseUrl + "/login"; |
| | |
| | | |
| | | // 默认加载主页 |
| | | index.loadHome({ |
| | | menuPath: baseUrl+'/views/home/navigation.html', |
| | | menuPath: baseUrl+'/views/home/console.html', |
| | | menuName: '<i class="layui-icon layui-icon-home"></i>' |
| | | }); |
| | | |
| | |
| | | <a><i class="layui-icon {{this.menuIcon}}"></i> <cite>{{this.menu}}</cite></a> |
| | | <dl class="layui-nav-child"> |
| | | {{#each this.subMenu}} |
| | | <dd><a lay-href="{{this.code}}?resourceId={{this.id}}">{{this.name}}</a></dd> |
| | | <dd><a lay-href="{{this.code}}?resourceId={{this.id}}" id="a-{{this.id}}">{{this.name}}</a></dd> |
| | | {{/each}} |
| | | </dl> |
| | | </li> |
| | |
| | | <div class="lane"> |
| | | <!-- 货架 --> |
| | | <div class="stock-group"> |
| | | <button class="item" style="margin-left: 82px">60</button> |
| | | <button class="item">58</button> |
| | | <button class="item">56</button> |
| | | <button class="item">54</button> |
| | | <button class="item">52</button> |
| | | <button class="item">50</button> |
| | | <button class="item">48</button> |
| | | <button class="item">46</button> |
| | | <button class="item">44</button> |
| | | <button class="item">42</button> |
| | | <button class="item">40</button> |
| | | <button class="item">38</button> |
| | | <button class="item">36</button> |
| | | <button class="item">34</button> |
| | | <button class="item">32</button> |
| | | <!-- <button class="item" style="margin-left: 82px">60</button>--> |
| | | <!-- <button class="item">58</button>--> |
| | | <!-- <button class="item">56</button>--> |
| | | <!-- <button class="item">54</button>--> |
| | | <!-- <button class="item">52</button>--> |
| | | <!-- <button class="item">50</button>--> |
| | | <!-- <button class="item">48</button>--> |
| | | <!-- <button class="item">46</button>--> |
| | | <!-- <button class="item">44</button>--> |
| | | <!-- <button class="item">42</button>--> |
| | | <!-- <button class="item">40</button>--> |
| | | <!-- <button class="item">38</button>--> |
| | | <!-- <button class="item">36</button>--> |
| | | <!-- <button class="item">34</button>--> |
| | | <!-- <button class="item">32</button>--> |
| | | <button class="item">30</button> |
| | | <button class="item">28</button> |
| | | <button class="item">26</button> |
| | |
| | | </div> |
| | | <div class="stock-group"> |
| | | |
| | | <button class="item" style="margin-left: 82px">60</button> |
| | | <button class="item">58</button> |
| | | <button class="item">56</button> |
| | | <button class="item">54</button> |
| | | <button class="item">52</button> |
| | | <button class="item">50</button> |
| | | <button class="item">48</button> |
| | | <button class="item">46</button> |
| | | <button class="item">44</button> |
| | | <button class="item">42</button> |
| | | <button class="item">40</button> |
| | | <button class="item">38</button> |
| | | <button class="item">36</button> |
| | | <button class="item">34</button> |
| | | <button class="item">32</button> |
| | | <!-- <button class="item" style="margin-left: 82px">60</button>--> |
| | | <!-- <button class="item">58</button>--> |
| | | <!-- <button class="item">56</button>--> |
| | | <!-- <button class="item">54</button>--> |
| | | <!-- <button class="item">52</button>--> |
| | | <!-- <button class="item">50</button>--> |
| | | <!-- <button class="item">48</button>--> |
| | | <!-- <button class="item">46</button>--> |
| | | <!-- <button class="item">44</button>--> |
| | | <!-- <button class="item">42</button>--> |
| | | <!-- <button class="item">40</button>--> |
| | | <!-- <button class="item">38</button>--> |
| | | <!-- <button class="item">36</button>--> |
| | | <!-- <button class="item">34</button>--> |
| | | <!-- <button class="item">32</button>--> |
| | | <button class="item">30</button> |
| | | <button class="item">28</button> |
| | | <button class="item">26</button> |
| | |
| | | <!-- 货架 --> |
| | | <div class="stock-group"> |
| | | |
| | | <button class="item" style="margin-left: 82px">60</button> |
| | | <button class="item">58</button> |
| | | <button class="item">56</button> |
| | | <button class="item">54</button> |
| | | <button class="item">52</button> |
| | | <button class="item">50</button> |
| | | <button class="item">48</button> |
| | | <button class="item">46</button> |
| | | <button class="item">44</button> |
| | | <button class="item">42</button> |
| | | <button class="item">40</button> |
| | | <button class="item">38</button> |
| | | <button class="item">36</button> |
| | | <button class="item">34</button> |
| | | <button class="item">32</button> |
| | | <!-- <button class="item" style="margin-left: 82px">60</button>--> |
| | | <!-- <button class="item">58</button>--> |
| | | <!-- <button class="item">56</button>--> |
| | | <!-- <button class="item">54</button>--> |
| | | <!-- <button class="item">52</button>--> |
| | | <!-- <button class="item">50</button>--> |
| | | <!-- <button class="item">48</button>--> |
| | | <!-- <button class="item">46</button>--> |
| | | <!-- <button class="item">44</button>--> |
| | | <!-- <button class="item">42</button>--> |
| | | <!-- <button class="item">40</button>--> |
| | | <!-- <button class="item">38</button>--> |
| | | <!-- <button class="item">36</button>--> |
| | | <!-- <button class="item">34</button>--> |
| | | <!-- <button class="item">32</button>--> |
| | | <button class="item">30</button> |
| | | <button class="item">28</button> |
| | | <button class="item">26</button> |
| | |
| | | <div id="site-106" class="site" style="">106</div> |
| | | </div> |
| | | <div class="stock-group"> |
| | | <button class="item" style="margin-left: 82px">60</button> |
| | | <button class="item">58</button> |
| | | <button class="item">56</button> |
| | | <button class="item">54</button> |
| | | <button class="item">52</button> |
| | | <button class="item">50</button> |
| | | <button class="item">48</button> |
| | | <button class="item">46</button> |
| | | <button class="item">44</button> |
| | | <button class="item">42</button> |
| | | <button class="item">40</button> |
| | | <button class="item">38</button> |
| | | <button class="item">36</button> |
| | | <button class="item">34</button> |
| | | <button class="item">32</button> |
| | | <!-- <button class="item" style="margin-left: 82px">60</button>--> |
| | | <!-- <button class="item">58</button>--> |
| | | <!-- <button class="item">56</button>--> |
| | | <!-- <button class="item">54</button>--> |
| | | <!-- <button class="item">52</button>--> |
| | | <!-- <button class="item">50</button>--> |
| | | <!-- <button class="item">48</button>--> |
| | | <!-- <button class="item">46</button>--> |
| | | <!-- <button class="item">44</button>--> |
| | | <!-- <button class="item">42</button>--> |
| | | <!-- <button class="item">40</button>--> |
| | | <!-- <button class="item">38</button>--> |
| | | <!-- <button class="item">36</button>--> |
| | | <!-- <button class="item">34</button>--> |
| | | <!-- <button class="item">32</button>--> |
| | | <button class="item">30</button> |
| | | <button class="item">28</button> |
| | | <button class="item">26</button> |
| | |
| | | <span class="row-no"></span> |
| | | <!-- 货架 --> |
| | | <div class="stock-group"> |
| | | <button class="item" style="margin-left: 193px">52</button> |
| | | <button class="item">50</button> |
| | | <button class="item">48</button> |
| | | <button class="item">46</button> |
| | | <button class="item">44</button> |
| | | <button class="item">42</button> |
| | | <button class="item">40</button> |
| | | <button class="item">38</button> |
| | | <button class="item">36</button> |
| | | <button class="item">34</button> |
| | | <button class="item">32</button> |
| | | <!-- <button class="item" style="margin-left: 193px">52</button>--> |
| | | <!-- <button class="item">50</button>--> |
| | | <!-- <button class="item">48</button>--> |
| | | <!-- <button class="item">46</button>--> |
| | | <!-- <button class="item">44</button>--> |
| | | <!-- <button class="item">42</button>--> |
| | | <!-- <button class="item">40</button>--> |
| | | <!-- <button class="item">38</button>--> |
| | | <!-- <button class="item">36</button>--> |
| | | <!-- <button class="item">34</button>--> |
| | | <!-- <button class="item">32</button>--> |
| | | <button class="item">30</button> |
| | | <button class="item">28</button> |
| | | <button class="item">26</button> |
| | |
| | | </div> |
| | | <div class="stock-group"> |
| | | |
| | | <button class="item" style="margin-left: 193px">52</button> |
| | | <button class="item">50</button> |
| | | <button class="item">48</button> |
| | | <button class="item">46</button> |
| | | <button class="item">44</button> |
| | | <button class="item">42</button> |
| | | <button class="item">40</button> |
| | | <button class="item">38</button> |
| | | <button class="item">36</button> |
| | | <button class="item">34</button> |
| | | <button class="item">32</button> |
| | | <!-- <button class="item" style="margin-left: 193px">52</button>--> |
| | | <!-- <button class="item">50</button>--> |
| | | <!-- <button class="item">48</button>--> |
| | | <!-- <button class="item">46</button>--> |
| | | <!-- <button class="item">44</button>--> |
| | | <!-- <button class="item">42</button>--> |
| | | <!-- <button class="item">40</button>--> |
| | | <!-- <button class="item">38</button>--> |
| | | <!-- <button class="item">36</button>--> |
| | | <!-- <button class="item">34</button>--> |
| | | <!-- <button class="item">32</button>--> |
| | | <button class="item">30</button> |
| | | <button class="item">28</button> |
| | | <button class="item">26</button> |
| | |
| | | </div> |
| | | <!-- 货架 --> |
| | | <div class="stock-group"> |
| | | <button class="item" style="margin-left: 193px">52</button> |
| | | <button class="item">50</button> |
| | | <button class="item">48</button> |
| | | <button class="item">46</button> |
| | | <button class="item">44</button> |
| | | <button class="item">42</button> |
| | | <button class="item">40</button> |
| | | <button class="item">38</button> |
| | | <button class="item">36</button> |
| | | <button class="item">34</button> |
| | | <button class="item">32</button> |
| | | <!-- <button class="item" style="margin-left: 193px">52</button>--> |
| | | <!-- <button class="item">50</button>--> |
| | | <!-- <button class="item">48</button>--> |
| | | <!-- <button class="item">46</button>--> |
| | | <!-- <button class="item">44</button>--> |
| | | <!-- <button class="item">42</button>--> |
| | | <!-- <button class="item">40</button>--> |
| | | <!-- <button class="item">38</button>--> |
| | | <!-- <button class="item">36</button>--> |
| | | <!-- <button class="item">34</button>--> |
| | | <!-- <button class="item">32</button>--> |
| | | <button class="item">30</button> |
| | | <button class="item">28</button> |
| | | <button class="item">26</button> |
| | |
| | | </div> |
| | | <div class="stock-group"> |
| | | |
| | | <button class="item" style="margin-left: 193px">52</button> |
| | | <button class="item">50</button> |
| | | <button class="item">48</button> |
| | | <button class="item">46</button> |
| | | <button class="item">44</button> |
| | | <button class="item">42</button> |
| | | <button class="item">40</button> |
| | | <button class="item">38</button> |
| | | <button class="item">36</button> |
| | | <button class="item">34</button> |
| | | <button class="item">32</button> |
| | | <!-- <button class="item" style="margin-left: 193px">52</button>--> |
| | | <!-- <button class="item">50</button>--> |
| | | <!-- <button class="item">48</button>--> |
| | | <!-- <button class="item">46</button>--> |
| | | <!-- <button class="item">44</button>--> |
| | | <!-- <button class="item">42</button>--> |
| | | <!-- <button class="item">40</button>--> |
| | | <!-- <button class="item">38</button>--> |
| | | <!-- <button class="item">36</button>--> |
| | | <!-- <button class="item">34</button>--> |
| | | <!-- <button class="item">32</button>--> |
| | | <button class="item">30</button> |
| | | <button class="item">28</button> |
| | | <button class="item">26</button> |
| | |
| | | <span class="row-no"></span> |
| | | <!-- 货架 --> |
| | | <div class="stock-group"> |
| | | <button class="item" style="margin-left: 193px">52</button> |
| | | <button class="item">50</button> |
| | | <button class="item">48</button> |
| | | <button class="item">46</button> |
| | | <button class="item">44</button> |
| | | <button class="item">42</button> |
| | | <button class="item">40</button> |
| | | <button class="item">38</button> |
| | | <button class="item">36</button> |
| | | <button class="item">34</button> |
| | | <button class="item">32</button> |
| | | <!-- <button class="item" style="margin-left: 193px">52</button>--> |
| | | <!-- <button class="item">50</button>--> |
| | | <!-- <button class="item">48</button>--> |
| | | <!-- <button class="item">46</button>--> |
| | | <!-- <button class="item">44</button>--> |
| | | <!-- <button class="item">42</button>--> |
| | | <!-- <button class="item">40</button>--> |
| | | <!-- <button class="item">38</button>--> |
| | | <!-- <button class="item">36</button>--> |
| | | <!-- <button class="item">34</button>--> |
| | | <!-- <button class="item">32</button>--> |
| | | <button class="item">30</button> |
| | | <button class="item">28</button> |
| | | <button class="item">26</button> |
| | |
| | | <h6>AUTOMATIC WAREHOUSE WCS MONITORING DIAGRAM</h6> |
| | | </div> |
| | | </div> |
| | | <select onchange="window.open(this.value)"> |
| | | <option value = "console1.html">--成品一楼--</option> |
| | | <option value="console2.html" >-半成品二楼-</option> |
| | | <option value="console3.html">-成品二楼-</option> |
| | | <option value="console.html"selected ="selected">-半成品一楼-</option> |
| | | </select> |
| | | <!-- 货架 + 堆垛机 + 入库站点 --> |
| | | <div class="main-part"> |
| | | |
| | |
| | | <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> |