From cb7d148bc6c0e81b4f413b6c3ff76102cbc0648a Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期四, 20 七月 2023 14:31:43 +0800 Subject: [PATCH] 堆垛机设备 --- src/main/webapp/views/realtimeWatch/crn.html | 601 ++------------------ src/main/webapp/views/realtimeWatch/crn2.html | 535 +++++++++++++++++++ src/main/webapp/static/wms/js/realtimeWatch/crn.js | 348 ++++++++++++ src/main/java/com/zy/asrs/controller/CrnController.java | 60 ++ src/main/java/com/zy/asrs/domain/vo/CrnListVo.java | 136 ++++ 5 files changed, 1,161 insertions(+), 519 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/CrnController.java b/src/main/java/com/zy/asrs/controller/CrnController.java index 86949ae..17e93cd 100644 --- a/src/main/java/com/zy/asrs/controller/CrnController.java +++ b/src/main/java/com/zy/asrs/controller/CrnController.java @@ -11,6 +11,7 @@ import com.zy.asrs.domain.param.CrnDemoParam; import com.zy.asrs.domain.param.CrnOperatorParam; import com.zy.asrs.domain.vo.CommandLogVo; +import com.zy.asrs.domain.vo.CrnListVo; import com.zy.asrs.domain.vo.CrnMsgTableVo; import com.zy.asrs.domain.vo.CrnStateTableVo; import com.zy.asrs.entity.*; @@ -247,6 +248,65 @@ return R.ok().add(vo); } + @GetMapping("/crn/list/auth") + @ManagerAuth(memo = "鍫嗗灈鏈烘暟鎹〃") + public R crnList(){ + List<CrnListVo> list = new ArrayList<>(); + List<BasCrnp> crnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>().orderBy("crn_no")); + for (BasCrnp basCrnp : crnps) { + // 琛ㄦ牸琛� + CrnListVo vo = new CrnListVo(); + vo.setCrnNo(basCrnp.getCrnNo()); // 鍫嗗灈鏈哄彿 + list.add(vo); + // 鑾峰彇鍫嗗灈鏈轰俊鎭� + CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, basCrnp.getCrnNo()); + if (crnThread == null) { + continue; + } + CrnProtocol crnProtocol = crnThread.getCrnProtocol(); + if (crnProtocol == null) { + continue; + } + + vo.setWorkNo(crnProtocol.getTaskNo()); // 浠诲姟鍙� + if (crnProtocol.getTaskNo()>0) { + WrkMast wrkMast = wrkMastService.selectById(crnProtocol.getTaskNo()); + if (wrkMast != null) { + vo.setDeviceStatus(CrnStatusType.process(wrkMast.getIoType()).getDesc()); // 妯″紡鐘舵�� + vo.setSourceStaNo(wrkMast.getSourceStaNo$()); // 婧愮珯 + vo.setStaNo(wrkMast.getStaNo$()); // 鐩爣绔� + vo.setSourceLocNo(wrkMast.getSourceLocNo()); // 婧愬簱浣� + vo.setLocNo(wrkMast.getLocNo()); // 鐩爣搴撲綅 + } + } else { + vo.setDeviceStatus(crnProtocol.modeType.equals(CrnModeType.AUTO)? CrnStatusType.MACHINE_AUTO.getDesc(): CrnStatusType.MACHINE_UN_AUTO.getDesc()); // 妯″紡鐘舵�� + } + vo.setXspeed(crnProtocol.getXSpeed()); // 璧拌閫熷害锛坢/min) + vo.setYspeed(crnProtocol.getYSpeed()); // 鍗囬檷閫熷害锛坢/min) + vo.setZspeed(crnProtocol.getZSpeed()); // 鍙夌墮閫熷害锛坢/min) + vo.setXdistance(crnProtocol.getXDistance()); // 璧拌璺濈(Km) + vo.setYdistance(crnProtocol.getYDistance()); // 鍗囬檷璺濈(Km) + vo.setXduration(crnProtocol.getXDuration()); // 璧拌鏃堕暱(H) + vo.setYduration(crnProtocol.getYDuration()); // 鍗囬檷鏃堕暱(H) + + vo.setStatusType(crnProtocol.modeType.desc); // 妯″紡鐘舵�� + vo.setWrkStatus(crnProtocol.getStatusType().desc); // 浠诲姟鐘舵�� + vo.setLoading((crnProtocol.getLoaded() != null && crnProtocol.getLoaded() == 1) ? "鏈夌墿" : "鏃犵墿"); // 鏈夌墿 + vo.setBay(crnProtocol.getBay()); // 鍒� + vo.setLev(crnProtocol.getLevel()); // 灞� + + vo.setForkOffset(crnProtocol.getForkPosType().desc); // 璐у弶浣嶇疆 + vo.setLiftPos(crnProtocol.getLiftPosType().desc); + vo.setWalkPos(crnProtocol.getWalkPos()==1?"涓嶅湪瀹氫綅":"鍦ㄥ畾浣�"); + vo.setWarnCode(String.valueOf(crnProtocol.getAlarm1())); + if (crnProtocol.getAlarm1() > 0) { + BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm1()); + vo.setAlarm(crnError==null?"鏈煡寮傚父":crnError.getErrName()); + } + } + return R.ok().add(list); + } + @PostMapping("/crn/output/site") @ManagerAuth(memo = "鍫嗗灈鏈烘姤鏂囨棩蹇楄緭鍑�") public R crnOutput(){ diff --git a/src/main/java/com/zy/asrs/domain/vo/CrnListVo.java b/src/main/java/com/zy/asrs/domain/vo/CrnListVo.java new file mode 100644 index 0000000..efbff09 --- /dev/null +++ b/src/main/java/com/zy/asrs/domain/vo/CrnListVo.java @@ -0,0 +1,136 @@ +package com.zy.asrs.domain.vo; + +import com.zy.asrs.utils.Utils; +import lombok.Data; + +@Data +public class CrnListVo { + + // 鍫嗗灈鏈哄彿 + private Integer crnNo; + + // 妯″紡 + private String statusType = "-"; + + // 鏈夌墿 + private String loading = "-"; + + // 鍒� + private Short bay; + + // 灞� + private Short lev; + + // 璧拌鍘熺偣 + private String xOrigin = "-"; + + // 鍗囬檷鍘熺偣 + private String yOrigin = "-"; + + // 璐у弶浣嶇疆 + private String forkOffset = "-"; + + // 杞借揣鍙颁綅缃� + private String liftPos = "-"; + + // 璧拌瀹氫綅 + private String walkPos = "-"; + + // 鎬ュ仠 + private String stop = "-"; + + // 鍒楀潗鏍� + private String bayCoor = "-"; + + // 灞傚潗鏍� + private String levCoor = "-"; + + // 瀹屾垚 + private String complete = "-"; + + // 浠诲姟鍙� + private Short workNo = 0; + + // 浠诲姟鐘舵�� + private String wrkStatus = "-"; + + // 寮傚父鐮� + private String warnCode = "-"; + + // 鍨傜洿鏁呴殰鐮� + private String alarm = "-"; + + // 婧愮珯 + private String sourceStaNo = "-"; + + // 鐩爣绔� + private String staNo = "-"; + + // 婧愬簱浣� + private String sourceLocNo = "-"; + + // 鐩爣搴撲綅 + private String locNo = "-"; + + // 寮傚父 + private String error = ""; + + // 鍘熺偣 + private String origin = ""; + + // 鍛戒护 + private String command = ""; + + // 璧拌閫熷害锛坢/min) + private Float xspeed = 0.0F; + + // 鍗囬檷閫熷害锛坢/min) + private Float yspeed = 0.0F; + + // 鍙夌墮閫熷害锛坢/min) + private Float zspeed = 0.0F; + + // 璧拌璺濈(Km) + private Float xdistance = 0.0F; + + // 鍗囬檷璺濈(Km) + private Float ydistance = 0.0F; + + // 璧拌鏃堕暱(H) + private Float xduration = 0.0F; + + // 鍗囬檷鏃堕暱(H) + private Float yduration = 0.0F; + + // 璁惧鐘舵�� + private String deviceStatus = "-"; + + public void setXspeed(Float xspeed) { + this.xspeed = Utils.scale(xspeed); + } + + public void setYspeed(Float yspeed) { + this.yspeed = Utils.scale(yspeed); + } + + public void setZspeed(Float zspeed) { + this.zspeed = Utils.scale(zspeed); + } + + public void setXdistance(Float xdistance) { + this.xdistance = Utils.scale(xdistance); + } + + public void setYdistance(Float ydistance) { + this.ydistance = Utils.scale(ydistance); + } + + public void setXduration(Float xduration) { + this.xduration = Utils.scale(xduration); + } + + public void setYduration(Float yduration) { + this.yduration = Utils.scale(yduration); + } + +} diff --git a/src/main/webapp/static/wms/js/realtimeWatch/crn.js b/src/main/webapp/static/wms/js/realtimeWatch/crn.js new file mode 100644 index 0000000..5662f59 --- /dev/null +++ b/src/main/webapp/static/wms/js/realtimeWatch/crn.js @@ -0,0 +1,348 @@ +var pageCurr; +var tableData; +// 瀹氫箟涓�涓彉閲忔潵淇濆瓨婊氬姩鏉$殑浣嶇疆 +var scrollLeft = 0; +layui.config({ + base: baseUrl + "/static/wms/layui/lay/modules/" +}).use(['table','laydate', 'form', 'admin'], function(){ + var table = layui.table; + var $ = layui.jquery; + var layer = layui.layer; + var layDate = layui.laydate; + var form = layui.form; + var admin = layui.admin; + + // 鏁版嵁娓叉煋 + tableIns = table.render({ + elem: '#crn', + headers: {token: localStorage.getItem('token')}, + url: baseUrl+'/crn/list/auth', + page: false, + limit: 500, + limits: [15, 30, 50, 100, 200, 500], + toolbar: '#toolbar', + cellMinWidth: 100, + height: 'full-120', + cols: [[ + {field: 'crnNo', align: 'center',title: '鍫嗗灈鏈�'} + ,{field: 'workNo', align: 'center',title: '宸ヤ綔鍙�'} + ,{field: 'statusType', align: 'center',title: '妯″紡'} + ,{field: 'wrkStatus', align: 'center',title: '浠诲姟鐘舵��',width: 120} + ,{field: 'deviceStatus', align: 'center',title: '璁惧鐘舵��'} + ,{field: 'loading', align: 'center',title: '鏈夌墿'} + ,{field: 'bay', align: 'center',title: '鍒�'} + ,{field: 'lev', align: 'center',title: '灞�'} + ,{field: 'warnCode', align: 'center',title: '鏁呴殰浠g爜'} + ,{field: 'alarm', align: 'center',title: '鏁呴殰鎻忚堪'} + ,{field: 'sourceStaNo', align: 'center',title: '婧愮珯'} + ,{field: 'staNo', align: 'center',title: '鐩爣绔�'} + ,{field: 'sourceLocNo', align: 'center',title: '婧愬簱浣�'} + ,{field: 'locNo', align: 'center',title: '鐩爣搴撲綅'} + ,{field: 'forkOffset', align: 'center',title: '璐у弶瀹氫綅'} + ,{field: 'liftPos', align: 'center',title: '杞借揣鍙板畾浣�'} + ,{field: 'walkPos', align: 'center',title: '璧拌鍦ㄥ畾浣�'} + ,{field: 'xspeed', align: 'center',title: '璧拌閫熷害锛坢/min)'} + ,{field: 'yspeed', align: 'center',title: '鍗囬檷閫熷害锛坢/min)'} + ,{field: 'zspeed', align: 'center',title: '鍙夌墮閫熷害锛坢/min)'} + ,{field: 'xdistance', align: 'center',title: '璧拌璺濈(Km)'} + ,{field: 'ydistance', align: 'center',title: '鍗囬檷璺濈(Km)'} + ,{field: 'xduration', align: 'center',title: '璧拌鏃堕暱(H)'} + ,{field: 'yduration', align: 'center',title: '鍗囬檷鏃堕暱(H)'} + + // ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:120} + ]], + request: { + pageName: 'curr', + pageSize: 'limit' + }, + parseData: function (res) { + return { + 'code': res.code, + 'msg': res.msg, + 'count': res.count, + 'data': res.data + } + }, + response: { + statusCode: 200 + }, + done: function(res, curr, count) { + if (res.code === 403) { + top.location.href = baseUrl+"/"; + } + pageCurr=curr; + limit(); + tableData = table.cache.crn; + + $(".layui-table-tool").hide() + } + }); + + // 鐩戝惉鎺掑簭浜嬩欢 + table.on('sort(crn)', function (obj) { + var searchData = {}; + $.each($('#search-box [name]').serializeArray(), function() { + searchData[this.name] = this.value; + }); + searchData['orderByField'] = obj.field; + searchData['orderByType'] = obj.type; + tableIns.reload({ + where: searchData, + page: {curr: 1} + }); + }); + + // 鐩戝惉澶村伐鍏锋爮浜嬩欢 + table.on('toolbar(crn)', function (obj) { + var checkStatus = table.checkStatus(obj.config.id).data; + switch(obj.event) { + case 'addData': + showEditModel(); + break; + case 'exportData': + admin.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){ + var titles=[]; + var fields=[]; + obj.config.cols[0].map(function (col) { + if (col.type === 'normal' && col.hide === false && col.toolbar == null) { + titles.push(col.title); + fields.push(col.field); + } + }); + var exportData = {}; + $.each($('#search-box [name]').serializeArray(), function() { + exportData[this.name] = this.value; + }); + var param = { + 'apiConfig': exportData, + 'fields': fields + }; + $.ajax({ + url: baseUrl+"/apiConfig/export/auth", + headers: {'token': localStorage.getItem('token')}, + data: JSON.stringify(param), + dataType:'json', + contentType:'application/json;charset=UTF-8', + method: 'POST', + success: function (res) { + layer.closeAll(); + if (res.code === 200) { + table.exportFile(titles,res.data,'xls'); + } else if (res.code === 403) { + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg, {icon: 2}) + } + } + }); + }); + break; + } + }); + + // 鐩戝惉琛屽伐鍏蜂簨浠� + table.on('tool(crn)', function(obj){ + var data = obj.data; + switch (obj.event) { + case 'edit': + showEditModel(data); + break; + } + }); + + /* 寮圭獥 - 鏂板銆佷慨鏀� */ + function showEditModel(mData) { + admin.open({ + type: 1, + area: '600px', + title: (mData ? '淇敼' : '娣诲姞') + '鎺ュ彛閰嶇疆', + content: $('#editDialog').html(), + success: function (layero, dIndex) { + layDateRender(mData); + form.val('detail', mData); + form.on('submit(editSubmit)', function (data) { + var loadIndex = layer.load(2); + $.ajax({ + url: baseUrl+"/apiConfig/"+(mData?'update':'add')+"/auth", + headers: {'token': localStorage.getItem('token')}, + data: data.field, + method: 'POST', + success: function (res) { + layer.close(loadIndex); + if (res.code === 200){ + layer.close(dIndex); + layer.msg(res.msg, {icon: 1}); + tableReload(); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + }else { + layer.msg(res.msg, {icon: 2}); + } + } + }) + return false; + }); + $(layero).children('.layui-layer-content').css('overflow', 'visible'); + layui.form.render('select'); + } + }); + } + + /* 鍒犻櫎 */ + function del(ids) { + layer.confirm('纭畾瑕佸垹闄ら�変腑鏁版嵁鍚楋紵', { + skin: 'layui-layer-admin', + shade: .1 + }, function (i) { + layer.close(i); + var loadIndex = layer.load(2); + $.ajax({ + url: baseUrl+"/apiConfig/delete/auth", + headers: {'token': localStorage.getItem('token')}, + data: {ids: ids}, + method: 'POST', + success: function (res) { + layer.close(loadIndex); + if (res.code === 200){ + layer.msg(res.msg, {icon: 1}); + tableReload(); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg, {icon: 2}); + } + } + }) + }); + } + + // 鎼滅储 + form.on('submit(search)', function (data) { + pageCurr = 1; + tableReload(false); + }); + + // 閲嶇疆 + form.on('submit(reset)', function (data) { + pageCurr = 1; + clearFormVal($('#search-box')); + tableReload(false); + }); + + // 鏃堕棿閫夋嫨鍣� + function layDateRender(data) { + setTimeout(function () { + layDate.render({ + elem: '#createTime\\$', + type: 'datetime', + value: data!==undefined?data['createTime\\$']:null + }); + layDate.render({ + elem: '#updateTime\\$', + type: 'datetime', + value: data!==undefined?data['updateTime\\$']:null + }); + + }, 300); + } + layDateRender(); + + setInterval(() => { + // 鑾峰彇褰撳墠婊氬姩鏉′綅缃� + scrollLeft = $("#crn").next('.layui-table-view').find('.layui-table-body').scrollLeft(); + $.ajax({ + url: baseUrl+"/crn/list/auth", + headers: {'token': localStorage.getItem('token')}, + data: {}, + dataType:'json', + contentType:'application/json;charset=UTF-8', + method: 'GET', + success: function (res) { + console.log(res) + table.render({ + elem: '#crn', + headers: {token: localStorage.getItem('token')}, + data: res.data, + page: false, + limit: 500, + limits: [15, 30, 50, 100, 200, 500], + toolbar: '#toolbar', + cellMinWidth: 100, + height: 'full-120', + cols: [[ + {field: 'crnNo', align: 'center',title: '鍫嗗灈鏈�'} + ,{field: 'workNo', align: 'center',title: '宸ヤ綔鍙�'} + ,{field: 'statusType', align: 'center',title: '妯″紡'} + ,{field: 'wrkStatus', align: 'center',title: '浠诲姟鐘舵��',width: 120} + ,{field: 'deviceStatus', align: 'center',title: '璁惧鐘舵��'} + ,{field: 'loading', align: 'center',title: '鏈夌墿'} + ,{field: 'bay', align: 'center',title: '鍒�'} + ,{field: 'lev', align: 'center',title: '灞�'} + ,{field: 'warnCode', align: 'center',title: '鏁呴殰浠g爜'} + ,{field: 'alarm', align: 'center',title: '鏁呴殰鎻忚堪'} + ,{field: 'sourceStaNo', align: 'center',title: '婧愮珯'} + ,{field: 'staNo', align: 'center',title: '鐩爣绔�'} + ,{field: 'sourceLocNo', align: 'center',title: '婧愬簱浣�'} + ,{field: 'locNo', align: 'center',title: '鐩爣搴撲綅'} + ,{field: 'forkOffset', align: 'center',title: '璐у弶瀹氫綅'} + ,{field: 'liftPos', align: 'center',title: '杞借揣鍙板畾浣�'} + ,{field: 'walkPos', align: 'center',title: '璧拌鍦ㄥ畾浣�'} + ,{field: 'xspeed', align: 'center',title: '璧拌閫熷害锛坢/min)'} + ,{field: 'yspeed', align: 'center',title: '鍗囬檷閫熷害锛坢/min)'} + ,{field: 'zspeed', align: 'center',title: '鍙夌墮閫熷害锛坢/min)'} + ,{field: 'xdistance', align: 'center',title: '璧拌璺濈(Km)'} + ,{field: 'ydistance', align: 'center',title: '鍗囬檷璺濈(Km)'} + ,{field: 'xduration', align: 'center',title: '璧拌鏃堕暱(H)'} + ,{field: 'yduration', align: 'center',title: '鍗囬檷鏃堕暱(H)'} + + // ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:120} + ]], + request: { + pageName: 'curr', + pageSize: 'limit' + }, + parseData: function (res) { + return { + 'code': res.code, + 'msg': res.msg, + 'count': res.count, + 'data': res.data + } + }, + response: { + statusCode: 200 + }, + done: function(res, curr, count) { + if (res.code === 403) { + top.location.href = baseUrl+"/"; + } + pageCurr=curr; + limit(); + tableData = table.cache.crn; + // 鎭㈠婊氬姩鏉′綅缃� + $("#crn").next('.layui-table-view').find('.layui-table-body').scrollLeft(scrollLeft); + + $(".layui-table-tool").hide() + } + }); + } + }); + }, 1000); + +}); + +// 鍏抽棴鍔ㄤ綔 +$(document).on('click','#data-detail-close', function () { + parent.layer.closeAll(); +}); + +function tableReload(child) { + var searchData = {}; + $.each($('#search-box [name]').serializeArray(), function() { + searchData[this.name] = this.value; + }); + tableIns.reload({ + where: searchData, + page: {curr: pageCurr} + }); +} diff --git a/src/main/webapp/views/realtimeWatch/crn.html b/src/main/webapp/views/realtimeWatch/crn.html index 94c3033..88192b4 100644 --- a/src/main/webapp/views/realtimeWatch/crn.html +++ b/src/main/webapp/views/realtimeWatch/crn.html @@ -1,535 +1,98 @@ <!DOCTYPE html> <html lang="en"> <head> - <meta charset="UTF-8"> + <meta charset="utf-8"> <title>鍫嗗灈鏈虹洃鎺х鐞�</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="stylesheet" type="text/css" href="../../static/wcs/css/normalize.css"> - <link rel="stylesheet" type="text/css" href="../../static/wcs/css/common.css"> - <link rel="stylesheet" type="text/css" href="../../static/wcs/css/crn.css"> - <script type="text/javascript" src="../../static/wcs/js/jquery/jquery-3.3.1.min.js"></script> - <script type="text/javascript" src="../../static/wcs/js/common.js"></script> - <script type="text/javascript" src="../../static/wcs/js/layer/layer.js"></script> - <style> - .demoBtn { - vertical-align: middle; - width: 20%; - height: 25px; - left: 0; - top: 0; - text-shadow: inherit; - font-size: 15px; - margin-left: 5px; - margin-right: 5px; - display: inline-block; - background-color: #FF5722; - border: none; - color: #FFF; - box-shadow: 1px 1px 5px #B6B6B6; - border-radius: 3px; - cursor: pointer; - } - - .demoBtn:hover { - opacity: 0.8 - } - .demoBtn:focus { - outline: 0; - } - </style> + <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> + <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/cool.css" media="all"> </head> <body> -<div style="padding: 10px;height: 100%;float: left;width: 6%"> - <div class="button-window"></div> -</div> -<div style="height: 100%;padding-left: 6%"> - <div style="padding: 10px;height: 100%"> - <!-- 鏃ュ織鐩戞帶鏉� --> - <div class="log-board"> - <!-- 鎵ц鍛戒护 --> - <!-- 鎵ц鍛戒护 --> - <div class="command-log"> - <h3>鎵ц涓殑鍛戒护</h3> - <div class="crn-command-item"> - <label>1#</label> - <button id="demoBtn-1" class="demoBtn" onclick="demoSwitch(this.id)"> - </button> - <!-- <span> </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> </span>--> - <input id="crn2" disabled="disabled"> - </div> - </div> - <!-- 鍫嗗灈鏈虹姸鎬佷綅淇℃伅 --> - <div class="crn-state"> - <table id="crn-state-table"> - <thead> - <tr> - <th>鍫嗗灈鏈�</th> - <th>妯″紡</th> - <th>鐘舵��</th> - <th>鏈夌墿</th> - <th>鍒�</th> - <th>灞�</th> - <th>璐у弶瀹氫綅</th> - <th>杞借揣鍙板畾浣�</th> - <th>璧拌鍦ㄥ畾浣�</th> - <th>鏁呴殰浠g爜</th> - <th>鏁呴殰鎻忚堪</th> - </tr> - </thead> - <tbody> - </tbody> - </table> - </div> - </div> - <!-- 鍫嗗灈鏈虹姸鎬� --> - <div class="crn-msg"> - <table id="crn-msg-table"> - <thead> - <tr> - <th>鍫嗗灈鏈�</th> - <th>宸ヤ綔鍙�</th> - <th>鐘舵��</th> - <th>婧愮珯</th> - <th>鐩爣绔�</th> - <th>婧愬簱浣�</th> - <th>鐩爣搴撲綅</th> - <th>璧拌閫熷害锛坢/min)</th> - <th>鍗囬檷閫熷害锛坢/min)</th> - <th>鍙夌墮閫熷害锛坢/min)</th> - <th>璧拌璺濈(Km)</th> - <th>鍗囬檷璺濈(Km)</th> - <th>璧拌鏃堕暱(H)</th> - <th>鍗囬檷鏃堕暱(H)</th> - </tr> - </thead> - <tbody> - </tbody> - </table> - </div> - <!-- 鍫嗗灈鏈烘棩蹇楄緭鍑� --> - <div class="crn-output-board"> - <textarea id="crn-output"></textarea> +<div class="layui-fluid"> + <div class="layui-card"> + <div class="layui-card-body"> +<!-- <div class="layui-form toolbar" id="search-box">--> +<!-- <div class="layui-form-item">--> +<!-- <div class="layui-inline">--> +<!-- <div class="layui-input-inline">--> +<!-- <input class="layui-input" type="text" name="id" placeholder="缂栧彿" autocomplete="off">--> +<!-- </div>--> +<!-- </div>--> +<!-- <div class="layui-inline"> --> +<!-- <button class="layui-btn icon-btn" lay-filter="search" lay-submit>--> +<!-- <i class="layui-icon"></i>鍒锋柊--> +<!-- </button>--> +<!-- <button class="layui-btn icon-btn" lay-filter="reset" lay-submit>--> +<!-- <i class="layui-icon"></i>閲嶇疆--> +<!-- </button>--> +<!-- </div>--> +<!-- </div>--> +<!-- </div>--> + <table class="layui-hide" id="crn" lay-filter="crn"></table> </div> </div> </div> + +<script type="text/html" id="toolbar"> + <div class="layui-btn-container"> + <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData" style="visibility: hidden">鏂板</button> + <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData" style="visibility: hidden">鍒犻櫎</button> + <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="float: right;visibility: hidden">瀵煎嚭</button> + </div> +</script> + +<script type="text/html" id="operate"> + <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a> + <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a> +</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" charset="utf-8"></script> +<script type="text/javascript" src="../../static/wms/js/common.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/wms/js/cool.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/wms/js/realtimeWatch/crn.js" charset="utf-8"></script> </body> -<script> - // 绌虹櫧琛屾暟 - var crnStateTableBlankRows = 0; - var crnMsgTableBlankRows = 0; - // 瀹為檯琛屾暟 - var crnStateTableFullRows = 0; - var crnMsgTableFullRows = 0; - // 鍒濆鍖� - var crnOutputDom = document.getElementById("crn-output"); - $(document).ready(function() { - getCommandLog(); - initCrnStateTable(); - getCrnStateInfo(); - initCrnMsgTable(); - getCrnMsgInfo(); - operatorBlockShow(); - }); - // 鏁版嵁鏇存柊 - setInterval(function () { - getCrnStateInfo(); - getCrnMsgInfo(); - getCommandLog(); - },1000); - setInterval(function () { - getCrnOutput(); - operatorBlockShow(); - initDemo(); - },500); +<!-- 琛ㄥ崟寮圭獥 --> +<script type="text/html" id="editDialog"> + <form id="detail" lay-filter="detail" class="layui-form admin-form model-form"> + <input name="id" type="hidden"> + <div class="layui-row"> + <div class="layui-col-md12"> + <div class="layui-form-item"> + <label class="layui-form-label">api鍦板潃: </label> + <div class="layui-input-block"> + <input class="layui-input" name="url" placeholder="璇疯緭鍏pi鍦板潃"> + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label">鐘舵��: </label> + <div class="layui-input-block"> + <select name="status"> + <option value="">璇烽�夋嫨鐘舵��</option> + <option value="0">姝e父</option> + <option value="1">绂佺敤</option> + </select> + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label">澶囨敞: </label> + <div class="layui-input-block"> + <input class="layui-input" name="memo" placeholder="璇疯緭鍏ュ娉�"> + </div> + </div> - // 鍒ゆ柇鎵嬪姩鎿嶄綔妯″潡鏄惁鍙敤 - function operatorBlockShow() { - if (parent.systemRunning) { - $('.crn-operation').css("opacity", "0.5"); - $('.crn-operation-shade').show(); - $('.crn-operation-shade-span').show(); - } else { - $('.crn-operation').css("opacity", "1"); - $('.crn-operation-shade').hide(); - $('.crn-operation-shade-span').hide(); - } - } - - // 鑾峰彇鍫嗗灈鏈烘墽琛屼腑鐨勫懡浠� - function getCommandLog() { - $.ajax({ - url: baseUrl + "/crn/command/ongoing", - headers: {'token': localStorage.getItem('token')}, - method: 'POST', - success: function (res) { - if (res.code === 200) { - var commands = res.data; - for (var i=0; i<commands.length;i++){ - $("#crn"+commands[i].crnNo).val(commands[i].command); - } - } else if (res.code === 403) { - window.location.href = baseUrl + "/login"; - } else { - console.log(res.msg); - } - } - }) - } - - // 鍫嗗灈鏈轰俊鎭〃鑾峰彇 ---- 琛ㄤ竴 - function getCrnStateInfo() { - var tableEl = $('#crn-state-table'); - $.ajax({ - url: baseUrl+ "/crn/table/crn/state", - headers: {'token': localStorage.getItem('token')}, - method: 'POST', - success: function (res) { - if (res.code === 200){ - var table = res.data; - if (table.length > crnStateTableBlankRows && table.length !== crnStateTableFullRows) { - initCrnStateTable(table.length-crnStateTableBlankRows); - crnStateTableFullRows = table.length; - } - for (var i=1;i<=table.length;i++){ - var tr = tableEl.find("tr").eq(i); - setVal(tr.children("td").eq(0), table[i-1].crnNo); - setVal(tr.children("td").eq(1), table[i-1].statusType); - setVal(tr.children("td").eq(2), table[i-1].status); - setVal(tr.children("td").eq(3), table[i-1].loading); - setVal(tr.children("td").eq(4), table[i-1].bay); - setVal(tr.children("td").eq(5), table[i-1].lev); - setVal(tr.children("td").eq(6), table[i-1].forkOffset); - setVal(tr.children("td").eq(7), table[i-1].liftPos); - setVal(tr.children("td").eq(8), table[i-1].walkPos); - setVal(tr.children("td").eq(9), table[i-1].warnCode); - setVal(tr.children("td").eq(10), table[i-1].alarm); - } - } else if (res.code === 403){ - window.location.href = baseUrl+"/login"; - } else { - console.log(res.msg); - } - } - }); - } - - // 鍫嗗灈鏈烘暟鎹〃鑾峰彇 ---- 琛ㄤ簩 - function getCrnMsgInfo() { - var tableEl = $('#crn-msg-table'); - $.ajax({ - url: baseUrl+ "/crn/table/crn/msg", - headers: {'token': localStorage.getItem('token')}, - method: 'POST', - success: function (res) { - if (res.code === 200){ - var table = res.data; - if (table.length > crnStateTableBlankRows && table.length !== crnMsgTableFullRows) { - initCrnStateTable(table.length-crnStateTableBlankRows); - crnMsgTableFullRows = table.length; - } - for (var i=1;i<=table.length;i++){ - var tr = tableEl.find("tr").eq(i); - setVal(tr.children("td").eq(0), table[i-1].crnNo); - setVal(tr.children("td").eq(1), table[i-1].workNo); - setVal(tr.children("td").eq(2), table[i-1].status); - setVal(tr.children("td").eq(3), table[i-1].sourceStaNo); - setVal(tr.children("td").eq(4), table[i-1].staNo); - setVal(tr.children("td").eq(5), table[i-1].sourceLocNo); - setVal(tr.children("td").eq(6), table[i-1].locNo); - setVal(tr.children("td").eq(7), table[i-1].xspeed); - setVal(tr.children("td").eq(8), table[i-1].yspeed); - setVal(tr.children("td").eq(9), table[i-1].zspeed); - setVal(tr.children("td").eq(10), table[i-1].xdistance); - setVal(tr.children("td").eq(11), table[i-1].ydistance); - setVal(tr.children("td").eq(12), table[i-1].xduration); - setVal(tr.children("td").eq(13), table[i-1].yduration); - } - } else if (res.code === 403){ - window.location.href = baseUrl+"/login"; - } else { - console.log(res.msg); - } - } - }); - } - - // 鍫嗗灈鏈烘墜鍔ㄦ搷浣滃尯 ----------------------------------------------------------------------- - - function getReqParam() { - var crnNo = $('input[name="crnSelect"]:checked').val(); - var sourceStaNo = $('#sourceStaNo').val(); - var sourceRow = $('#sourceRow').val(); - var sourceBay = $('#sourceBay').val(); - var sourceLev = $('#sourceLev').val(); - var staNo = $('#staNo').val(); - var row = $('#row').val(); - var bay = $('#bay').val(); - var lev = $('#lev').val(); - return { - crnNo: crnNo, - sourceStaNo: sourceStaNo, - sourceRow: sourceRow, - sourceBay: sourceBay, - sourceLev: sourceLev, - staNo: staNo, - row: row, - bay: bay, - lev: lev - }; - } - - // 鍏ュ簱 - function put() { - http.post(baseUrl+"/crn/operator/put", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 鍑哄簱 - function take() { - http.post(baseUrl+"/crn/operator/take", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 搴撲綅杞Щ - function stockMove() { - http.post(baseUrl+"/crn/operator/stockMove", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 绔欏埌绔� - function siteMove() { - http.post(baseUrl+"/crn/operator/siteMove", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 鍧愭爣绉诲姩 - function coorMove() { - http.post(baseUrl+"/crn/operator/coorMove", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 鍥炲師鐐� - function bacOrigin() { - http.post(baseUrl+"/crn/operator/bacOrigin", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 鍥炲師鐐� - function reverseOrigin() { - http.post(baseUrl+"/crn/operator/reverseOrigin", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 浠诲姟瀹屾垚 - function taskComplete() { - http.post(baseUrl+"/crn/operator/taskComplete", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 鏆傚仠 - function pause() { - http.post(baseUrl+"/crn/operator/pause", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 鍚姩 - function boot() { - http.post(baseUrl+"/crn/operator/boot", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 娓呴櫎鍛戒护 - function clearCommand() { - http.post(baseUrl+"/crn/operator/clearCommand", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 鎵嬪姩澶嶄綅 - function handleReset() { - http.post(baseUrl+"/crn/operator/handleReset", getReqParam(), function (res) { - layer.msg(res.msg); - }); - } - - // 杈撻�佽澶囨棩蹇楄緭鍑� ----------------------------------------------------------------------- - function getCrnOutput() { - $.ajax({ - url: baseUrl + "/crn/output/site", - headers: {'token': localStorage.getItem('token')}, - method: 'POST', - success: function (res) { - console.log(res) - if (res.code === 200) { - crnOutput(res.data); - } else if (res.code === 403) { - window.location.href = baseUrl + "/login"; - } else { - console.log(res.msg); - } - } - }) - } - - // ------------------------------------------------------------------------------------------------ - - // 鍫嗗灈鏈轰俊鎭〃鑾峰彇 ----- 琛ㄤ竴 - function initCrnStateTable(row) { - var line; - if (row === undefined){ - var one = $('#crn-state-table thead').height(); - var total = $('.crn-state').height(); - var count = total / one; - count = parseInt(count) - 1; - crnStateTableBlankRows = count; - line = count; - } else { - line = row; - } - var html = ""; - for (var i = 0; i < line; i ++){ - html += " <tr>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " </tr>\n"; - } - $('#crn-state-table tbody').after(html); - } - - // 鍫嗗灈鏈烘暟鎹〃鑾峰彇 ----- 琛ㄤ簩 - function initCrnMsgTable(row) { - var line; - if (row === undefined){ - var one = $('#crn-msg-table thead').height(); - var total = $('.crn-msg').height(); - var count = total / one; - count = parseInt(count) - 1; - crnMsgTableBlankRows = count; - line = count; - } else { - line = row; - } - var html = ""; - for (var i = 0; i < line; i ++){ - html += " <tr>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " <td></td>\n" + - " </tr>\n"; - } - $('#crn-msg-table tbody').after(html); - } - - // 鏃ュ織杈撳嚭妗� - function crnOutput(content){ - crnOutputDom.value += content; - crnOutputDom.scrollTop = crnOutputDom.scrollHeight; - } - - - var crnDemoData; - function initDemo() { - $.ajax({ - url: baseUrl+"/crn/demo/status", - async: false, - method: 'GET', - success: function (res) { - if (res.code === 200) { - crnDemoData = res.data; - crnDemoData.forEach(function (e) { - $("#demoBtn-"+e.crnNo).html(e.demo?'鍋滄':'婕旂ず'); - }) - } else if (res.code === 403){ - parent.location.href = baseUrl+"/login"; - } else { - layer.msg(res.msg, {icon: 2}); - } - } - }) - } - - function demoSwitch(el) { - var crnId = el.split("-")[1]; - var opt; - if (crnDemoData == null) { - initDemo(); - } - for (var i = 0; i<crnDemoData.length; i++) { - if (Number(crnDemoData[i].crnNo) === Number(crnId)) { - opt = !crnDemoData[i].demo; - } - } - layer.confirm(crnId + ' 鍙峰爢鍨涙満纭畾'+ (opt?'寮�濮�':'鍋滄') + '婕旂ず鍚楋紵', function(){ - doDemo(crnId, 'root', opt); // 鍋滄wcs绯荤粺 - }); - } - - function doDemo(crnId, password, opt) { - // 鍔犺浇tips - var index = layer.load(1, { - shade: [0.1,'#fff'] - }); - $.ajax({ - url: baseUrl+ "/crn/demo/switch", - headers: {'token': localStorage.getItem('token')}, - // async: false, - data: { - crnId: Number(crnId), - password: password, - opt: opt - }, - method: 'POST', - success: function (res) { - layer.close(index); - if (res.code === 200){ - layer.msg(res.msg, {icon: 1}); - } else if (res.code === 403){ - window.location.href = baseUrl+"/login"; - } else { - layer.msg(res.msg, {icon: 2}); - } - } - }); - - } - + </div> + </div> + <hr class="layui-bg-gray"> + <div class="layui-form-item text-right"> + <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button> + <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button> + </div> + </form> </script> </html> + diff --git a/src/main/webapp/views/realtimeWatch/crn2.html b/src/main/webapp/views/realtimeWatch/crn2.html new file mode 100644 index 0000000..8401eaa --- /dev/null +++ b/src/main/webapp/views/realtimeWatch/crn2.html @@ -0,0 +1,535 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="UTF-8"> + <title>鍫嗗灈鏈虹洃鎺х鐞�</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="stylesheet" type="text/css" href="../../static/wcs/css/normalize.css"> + <link rel="stylesheet" type="text/css" href="../../static/wcs/css/common.css"> + <link rel="stylesheet" type="text/css" href="../../static/wcs/css/crn.css"> + <script type="text/javascript" src="../../static/wcs/js/jquery/jquery-3.3.1.min.js"></script> + <script type="text/javascript" src="../../static/wcs/js/common.js"></script> + <script type="text/javascript" src="../../static/wcs/js/layer/layer.js"></script> + <style> + .demoBtn { + vertical-align: middle; + width: 20%; + height: 25px; + left: 0; + top: 0; + text-shadow: inherit; + font-size: 15px; + margin-left: 5px; + margin-right: 5px; + display: inline-block; + background-color: #FF5722; + border: none; + color: #FFF; + box-shadow: 1px 1px 5px #B6B6B6; + border-radius: 3px; + cursor: pointer; + } + + .demoBtn:hover { + opacity: 0.8 + } + .demoBtn:focus { + outline: 0; + } + </style> +</head> +<body> +<div style="padding: 10px;height: 100%;float: left;width: 6%"> + <div class="button-window"></div> +</div> +<div style="height: 100%;padding-left: 6%"> + <div style="padding: 10px;height: 100%"> + <!-- 鏃ュ織鐩戞帶鏉� --> + <div class="log-board"> + <!-- 鎵ц鍛戒护 --> + + <!-- 鎵ц鍛戒护 --> + <div class="command-log"> + <h3>鎵ц涓殑鍛戒护</h3> + <div class="crn-command-item"> + <label>1#</label> + <button id="demoBtn-1" class="demoBtn" onclick="demoSwitch(this.id)"> - </button> + <!-- <span> </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> </span>--> + <input id="crn2" disabled="disabled"> + </div> + </div> + <!-- 鍫嗗灈鏈虹姸鎬佷綅淇℃伅 --> + <div class="crn-state"> + <table id="crn-state-table"> + <thead> + <tr> + <th>鍫嗗灈鏈�</th> + <th>妯″紡</th> + <th>鐘舵��</th> + <th>鏈夌墿</th> + <th>鍒�</th> + <th>灞�</th> + <th>璐у弶瀹氫綅</th> + <th>杞借揣鍙板畾浣�</th> + <th>璧拌鍦ㄥ畾浣�</th> + <th>鏁呴殰浠g爜</th> + <th>鏁呴殰鎻忚堪</th> + </tr> + </thead> + <tbody> + </tbody> + </table> + </div> + </div> + <!-- 鍫嗗灈鏈虹姸鎬� --> + <div class="crn-msg"> + <table id="crn-msg-table"> + <thead> + <tr> + <th>鍫嗗灈鏈�</th> + <th>宸ヤ綔鍙�</th> + <th>鐘舵��</th> + <th>婧愮珯</th> + <th>鐩爣绔�</th> + <th>婧愬簱浣�</th> + <th>鐩爣搴撲綅</th> + <th>璧拌閫熷害锛坢/min)</th> + <th>鍗囬檷閫熷害锛坢/min)</th> + <th>鍙夌墮閫熷害锛坢/min)</th> + <th>璧拌璺濈(Km)</th> + <th>鍗囬檷璺濈(Km)</th> + <th>璧拌鏃堕暱(H)</th> + <th>鍗囬檷鏃堕暱(H)</th> + </tr> + </thead> + <tbody> + </tbody> + </table> + </div> + <!-- 鍫嗗灈鏈烘棩蹇楄緭鍑� --> + <div class="crn-output-board"> + <textarea id="crn-output"></textarea> + </div> + </div> +</div> +</body> +<script> + // 绌虹櫧琛屾暟 + var crnStateTableBlankRows = 0; + var crnMsgTableBlankRows = 0; + // 瀹為檯琛屾暟 + var crnStateTableFullRows = 0; + var crnMsgTableFullRows = 0; + // 鍒濆鍖� + var crnOutputDom = document.getElementById("crn-output"); + $(document).ready(function() { + getCommandLog(); + initCrnStateTable(); + getCrnStateInfo(); + initCrnMsgTable(); + getCrnMsgInfo(); + operatorBlockShow(); + }); + // 鏁版嵁鏇存柊 + setInterval(function () { + getCrnStateInfo(); + getCrnMsgInfo(); + getCommandLog(); + },1000); + setInterval(function () { + getCrnOutput(); + operatorBlockShow(); + initDemo(); + },500); + + // 鍒ゆ柇鎵嬪姩鎿嶄綔妯″潡鏄惁鍙敤 + function operatorBlockShow() { + if (parent.systemRunning) { + $('.crn-operation').css("opacity", "0.5"); + $('.crn-operation-shade').show(); + $('.crn-operation-shade-span').show(); + } else { + $('.crn-operation').css("opacity", "1"); + $('.crn-operation-shade').hide(); + $('.crn-operation-shade-span').hide(); + } + } + + // 鑾峰彇鍫嗗灈鏈烘墽琛屼腑鐨勫懡浠� + function getCommandLog() { + $.ajax({ + url: baseUrl + "/crn/command/ongoing", + headers: {'token': localStorage.getItem('token')}, + method: 'POST', + success: function (res) { + if (res.code === 200) { + var commands = res.data; + for (var i=0; i<commands.length;i++){ + $("#crn"+commands[i].crnNo).val(commands[i].command); + } + } else if (res.code === 403) { + window.location.href = baseUrl + "/login"; + } else { + console.log(res.msg); + } + } + }) + } + + // 鍫嗗灈鏈轰俊鎭〃鑾峰彇 ---- 琛ㄤ竴 + function getCrnStateInfo() { + var tableEl = $('#crn-state-table'); + $.ajax({ + url: baseUrl+ "/crn/table/crn/state", + headers: {'token': localStorage.getItem('token')}, + method: 'POST', + success: function (res) { + if (res.code === 200){ + var table = res.data; + if (table.length > crnStateTableBlankRows && table.length !== crnStateTableFullRows) { + initCrnStateTable(table.length-crnStateTableBlankRows); + crnStateTableFullRows = table.length; + } + for (var i=1;i<=table.length;i++){ + var tr = tableEl.find("tr").eq(i); + setVal(tr.children("td").eq(0), table[i-1].crnNo); + setVal(tr.children("td").eq(1), table[i-1].statusType); + setVal(tr.children("td").eq(2), table[i-1].status); + setVal(tr.children("td").eq(3), table[i-1].loading); + setVal(tr.children("td").eq(4), table[i-1].bay); + setVal(tr.children("td").eq(5), table[i-1].lev); + setVal(tr.children("td").eq(6), table[i-1].forkOffset); + setVal(tr.children("td").eq(7), table[i-1].liftPos); + setVal(tr.children("td").eq(8), table[i-1].walkPos); + setVal(tr.children("td").eq(9), table[i-1].warnCode); + setVal(tr.children("td").eq(10), table[i-1].alarm); + } + } else if (res.code === 403){ + window.location.href = baseUrl+"/login"; + } else { + console.log(res.msg); + } + } + }); + } + + // 鍫嗗灈鏈烘暟鎹〃鑾峰彇 ---- 琛ㄤ簩 + function getCrnMsgInfo() { + var tableEl = $('#crn-msg-table'); + $.ajax({ + url: baseUrl+ "/crn/table/crn/msg", + headers: {'token': localStorage.getItem('token')}, + method: 'POST', + success: function (res) { + if (res.code === 200){ + var table = res.data; + if (table.length > crnStateTableBlankRows && table.length !== crnMsgTableFullRows) { + initCrnStateTable(table.length-crnStateTableBlankRows); + crnMsgTableFullRows = table.length; + } + for (var i=1;i<=table.length;i++){ + var tr = tableEl.find("tr").eq(i); + setVal(tr.children("td").eq(0), table[i-1].crnNo); + setVal(tr.children("td").eq(1), table[i-1].workNo); + setVal(tr.children("td").eq(2), table[i-1].status); + setVal(tr.children("td").eq(3), table[i-1].sourceStaNo); + setVal(tr.children("td").eq(4), table[i-1].staNo); + setVal(tr.children("td").eq(5), table[i-1].sourceLocNo); + setVal(tr.children("td").eq(6), table[i-1].locNo); + setVal(tr.children("td").eq(7), table[i-1].xspeed); + setVal(tr.children("td").eq(8), table[i-1].yspeed); + setVal(tr.children("td").eq(9), table[i-1].zspeed); + setVal(tr.children("td").eq(10), table[i-1].xdistance); + setVal(tr.children("td").eq(11), table[i-1].ydistance); + setVal(tr.children("td").eq(12), table[i-1].xduration); + setVal(tr.children("td").eq(13), table[i-1].yduration); + } + } else if (res.code === 403){ + window.location.href = baseUrl+"/login"; + } else { + console.log(res.msg); + } + } + }); + } + + // 鍫嗗灈鏈烘墜鍔ㄦ搷浣滃尯 ----------------------------------------------------------------------- + + function getReqParam() { + var crnNo = $('input[name="crnSelect"]:checked').val(); + var sourceStaNo = $('#sourceStaNo').val(); + var sourceRow = $('#sourceRow').val(); + var sourceBay = $('#sourceBay').val(); + var sourceLev = $('#sourceLev').val(); + var staNo = $('#staNo').val(); + var row = $('#row').val(); + var bay = $('#bay').val(); + var lev = $('#lev').val(); + return { + crnNo: crnNo, + sourceStaNo: sourceStaNo, + sourceRow: sourceRow, + sourceBay: sourceBay, + sourceLev: sourceLev, + staNo: staNo, + row: row, + bay: bay, + lev: lev + }; + } + + // 鍏ュ簱 + function put() { + http.post(baseUrl+"/crn/operator/put", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 鍑哄簱 + function take() { + http.post(baseUrl+"/crn/operator/take", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 搴撲綅杞Щ + function stockMove() { + http.post(baseUrl+"/crn/operator/stockMove", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 绔欏埌绔� + function siteMove() { + http.post(baseUrl+"/crn/operator/siteMove", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 鍧愭爣绉诲姩 + function coorMove() { + http.post(baseUrl+"/crn/operator/coorMove", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 鍥炲師鐐� + function bacOrigin() { + http.post(baseUrl+"/crn/operator/bacOrigin", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 鍥炲師鐐� + function reverseOrigin() { + http.post(baseUrl+"/crn/operator/reverseOrigin", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 浠诲姟瀹屾垚 + function taskComplete() { + http.post(baseUrl+"/crn/operator/taskComplete", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 鏆傚仠 + function pause() { + http.post(baseUrl+"/crn/operator/pause", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 鍚姩 + function boot() { + http.post(baseUrl+"/crn/operator/boot", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 娓呴櫎鍛戒护 + function clearCommand() { + http.post(baseUrl+"/crn/operator/clearCommand", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 鎵嬪姩澶嶄綅 + function handleReset() { + http.post(baseUrl+"/crn/operator/handleReset", getReqParam(), function (res) { + layer.msg(res.msg); + }); + } + + // 杈撻�佽澶囨棩蹇楄緭鍑� ----------------------------------------------------------------------- + function getCrnOutput() { + $.ajax({ + url: baseUrl + "/crn/output/site", + headers: {'token': localStorage.getItem('token')}, + method: 'POST', + success: function (res) { + console.log(res) + if (res.code === 200) { + crnOutput(res.data); + } else if (res.code === 403) { + window.location.href = baseUrl + "/login"; + } else { + console.log(res.msg); + } + } + }) + } + + // ------------------------------------------------------------------------------------------------ + + // 鍫嗗灈鏈轰俊鎭〃鑾峰彇 ----- 琛ㄤ竴 + function initCrnStateTable(row) { + var line; + if (row === undefined){ + var one = $('#crn-state-table thead').height(); + var total = $('.crn-state').height(); + var count = total / one; + count = parseInt(count) - 1; + crnStateTableBlankRows = count; + line = count; + } else { + line = row; + } + var html = ""; + for (var i = 0; i < line; i ++){ + html += " <tr>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " </tr>\n"; + } + $('#crn-state-table tbody').after(html); + } + + // 鍫嗗灈鏈烘暟鎹〃鑾峰彇 ----- 琛ㄤ簩 + function initCrnMsgTable(row) { + var line; + if (row === undefined){ + var one = $('#crn-msg-table thead').height(); + var total = $('.crn-msg').height(); + var count = total / one; + count = parseInt(count) - 1; + crnMsgTableBlankRows = count; + line = count; + } else { + line = row; + } + var html = ""; + for (var i = 0; i < line; i ++){ + html += " <tr>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " <td></td>\n" + + " </tr>\n"; + } + $('#crn-msg-table tbody').after(html); + } + + // 鏃ュ織杈撳嚭妗� + function crnOutput(content){ + crnOutputDom.value += content; + crnOutputDom.scrollTop = crnOutputDom.scrollHeight; + } + + + var crnDemoData; + function initDemo() { + $.ajax({ + url: baseUrl+"/crn/demo/status", + async: false, + method: 'GET', + success: function (res) { + if (res.code === 200) { + crnDemoData = res.data; + crnDemoData.forEach(function (e) { + $("#demoBtn-"+e.crnNo).html(e.demo?'鍋滄':'婕旂ず'); + }) + } else if (res.code === 403){ + parent.location.href = baseUrl+"/login"; + } else { + layer.msg(res.msg, {icon: 2}); + } + } + }) + } + + function demoSwitch(el) { + var crnId = el.split("-")[1]; + var opt; + if (crnDemoData == null) { + initDemo(); + } + for (var i = 0; i<crnDemoData.length; i++) { + if (Number(crnDemoData[i].crnNo) === Number(crnId)) { + opt = !crnDemoData[i].demo; + } + } + layer.confirm(crnId + ' 鍙峰爢鍨涙満纭畾'+ (opt?'寮�濮�':'鍋滄') + '婕旂ず鍚楋紵', function(){ + doDemo(crnId, 'root', opt); // 鍋滄wcs绯荤粺 + }); + } + + function doDemo(crnId, password, opt) { + // 鍔犺浇tips + var index = layer.load(1, { + shade: [0.1,'#fff'] + }); + $.ajax({ + url: baseUrl+ "/crn/demo/switch", + headers: {'token': localStorage.getItem('token')}, + // async: false, + data: { + crnId: Number(crnId), + password: password, + opt: opt + }, + method: 'POST', + success: function (res) { + layer.close(index); + if (res.code === 200){ + layer.msg(res.msg, {icon: 1}); + } else if (res.code === 403){ + window.location.href = baseUrl+"/login"; + } else { + layer.msg(res.msg, {icon: 2}); + } + } + }); + + } + +</script> +</html> -- Gitblit v1.9.1