src/main/webapp/static/css/console.css | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/static/css/crn.css | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/static/css/index.css | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/static/css/pipeline.css | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/console.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/crn.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/pipeline.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/webapp/static/css/console.css
@@ -28,7 +28,7 @@ width: 100%; height: 23% ; position: absolute; bottom: 1%; bottom: 2.5%; } /* 控制开关 */ .system-state { src/main/webapp/static/css/crn.css
@@ -1,11 +1,14 @@ body { padding: 10px; background-color: #f1f1f1; } .button-window { float: left; width: 5%; width: 100%; height: 100%; padding: 10px; background-color: #6CA7A8; border-radius: 5px; box-shadow: 0 0 3px rgba(0 0 0 .3); } /* -------------------- 第一模块 -------------------- */ .log-board { @@ -19,7 +22,7 @@ .command-log { float: left; height: 100%; width: 19%; width: 20%; text-align: center; } .command-log h2 { @@ -51,7 +54,7 @@ .crn-state { float: left; height: 100%; width: 76%; width: 80%; overflow: auto; } /* 堆垛机状态表 */ src/main/webapp/static/css/index.css
@@ -41,7 +41,7 @@ } .sidebar ul { font-size: 20px; font-weight: 700; font-weight: 5c00; padding-left: 15%; } @@ -51,16 +51,17 @@ } .sidebar a:hover { color: rgb(87,214,201); color: rgb(255, 148, 111); } .nav-unselect { color: #5D7677; color: #FFFFFF; } .nav-select { color: rgb(87,214,201); font-weight: 900; color: rgb(255, 148, 111); } src/main/webapp/static/css/pipeline.css
@@ -1,5 +1,5 @@ body { padding: 10px; /*padding: 10px;*/ background-color: #f1f1f1; } main { @@ -11,13 +11,17 @@ } .button-window { float: left; width: 5%; width: 100%; height: 100%; padding: 10px; background-color: #6CA7A8; border-radius: 5px; box-shadow: 0 0 3px rgba(0 0 0 .3); } .main-board { padding-left: 1%; float: left; width: 47.5%; width: 50%; height: 100%; overflow: auto; } src/main/webapp/views/console.html
@@ -1219,53 +1219,67 @@ </body> </html> <script> var tData = [] var tData = [ {"time":"2022-02-22 14:24:53","barcode":"80000009"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, {"time":"2022-02-22 14:24:53","barcode":"80000019"}, ] var tDate1 = [] var tDate2 = [] var tDate3 = [] function getCodeData(){ $.ajax({ url:baseUrl +'/console/barcode/output/site', method:'GET', success:function (res) { if(res.code === 200){ tData = eval(res.data); console.log(tData) if(tData.length<=5){ tData1 = tData } else if (tData.length<=10){ tDate1 = tData.slice(0,5) tData.splice(0,5) tDate2 = tData console.log(tDate2) } else if(tData.length<=15){ tDate1 = tData.slice(0,5) tDate2 = tData.slice(6,10) tData.splice(0,10) tDate3 = tData console.log(tDate3) } else { tData = tData.slice(-15) tDate1 = tData.slice(-15) tDate2 = tData.slice(-10) tDate3 = tData.slice(-5) } } } }) // function getCodeData(){ // $.ajax({ // url:baseUrl +'/xgmwcs/console/barcode/output/site', // method:'GET', // success:function (res) { // if(res.code === 200){ // tData = res.data // } // } // }) // } // setInterval(getCodeData(),1000) if(tData.length<=5){ tData1 = tData } else if (tData.length<=10){ tDate1 = tData.slice(0,5) tData.splice(0,5) tDate2 = tData } else if(tData.length<=15){ tDate1 = tData.slice(0,5) tDate2 = tData.slice(6,10) tData.splice(0,10) tDate3 = tData } else { tData = tData.slice(-15) tDate1 = tData.slice(-15) tDate2 = tData.slice(-10) tDate3 = tData.slice(-5) } setInterval(function () { getCodeData(); renderBarCode(); }, 1000) function renderBarCode() { for (var i = 0;i<tDate1.length;i++){ console.log(tDate1[i]) var str1 = '<li><span>' + tDate1[i].barcode + '</span><span class="right">' + tDate1[i].time + '</span></li>' $('#barcode1').append(str1) } @@ -1278,6 +1292,7 @@ $('#barcode3').append(str3) } } setInterval(renderBarCode(),1000) </script> <script type="text/javascript"> // 弹窗站点信息 @@ -1399,7 +1414,6 @@ }, method: 'POST', success: function (res) { console.log(res) layer.close(index); if (res.code === 200){ if (res.data.status) { src/main/webapp/views/crn.html
@@ -41,187 +41,193 @@ </style> </head> <body> <div class="button-window"></div> <!-- 日志监控板 --> <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 class="crn-command-item"> <label>3#</label> <button id="demoBtn-3" class="demoBtn" onclick="demoSwitch(this.id)"> - </button> <!-- <span> </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> </span>--> <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> <!-- <span> </span>--> <input id="crn5" 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>故障代码</th> <th>故障描述</th> </tr> </thead> <tbody> </tbody> </table> </div> <div style="padding: 10px;height: 100%;float: left;width: 6%"> <div class="button-window"></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>走行速度(m/min)</th> <th>升降速度(m/min)</th> <th>叉牙速度(m/min)</th> <th>走行距离(m)</th> <th>升降距离(m)</th> <th>走行时长(s)</th> <th>升降时长(s)</th> </tr> </thead> <tbody> </tbody> </table> </div> <!-- 手动操作 --> <div class="crn-operation"> <div style="height: 100%;padding-left: 6%"> <div style="padding: 10px;height: 100%"> <!-- 日志监控板 --> <div class="log-board"> <!-- 执行命令 --> <!-- 遮罩层 --> <div class="crn-operation-shade"> <!-- 执行命令 --> <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 class="crn-command-item"> <label>3#</label> <button id="demoBtn-3" class="demoBtn" onclick="demoSwitch(this.id)"> - </button> <!-- <span> </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> </span>--> <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> <!-- <span> </span>--> <input id="crn5" 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>故障代码</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>走行速度(m/min)</th> <th>升降速度(m/min)</th> <th>叉牙速度(m/min)</th> <th>走行距离(m)</th> <th>升降距离(m)</th> <th>走行时长(s)</th> <th>升降时长(s)</th> </tr> </thead> <tbody> </tbody> </table> </div> <!-- 手动操作 --> <div class="crn-operation"> <!-- 遮罩层 --> <div class="crn-operation-shade"> <span class="crn-operation-shade-span"> WCS 系统运行中,请停止后操作 </span> </div> </div> <!-- 设备任务选择 --> <div class="task-select"> <!-- 堆垛机选择 --> <div id="crn-select" class="operator-item"> <span class="select-title">堆垛机号</span> <div class="select-container"> <label><input type="radio" name="crnSelect" value="1" checked> 1号堆垛机</label> <label><input type="radio" name="crnSelect" value="2"> 2号堆垛机</label> <label><input type="radio" name="crnSelect" value="3"> 3号堆垛机</label> <label><input type="radio" name="crnSelect" value="4"> 4号堆垛机</label> <label><input type="radio" name="crnSelect" value="5"> 5号堆垛机</label> <!-- 设备任务选择 --> <div class="task-select"> <!-- 堆垛机选择 --> <div id="crn-select" class="operator-item"> <span class="select-title">堆垛机号</span> <div class="select-container"> <label><input type="radio" name="crnSelect" value="1" checked> 1号堆垛机</label> <label><input type="radio" name="crnSelect" value="2"> 2号堆垛机</label> <label><input type="radio" name="crnSelect" value="3"> 3号堆垛机</label> <label><input type="radio" name="crnSelect" value="4"> 4号堆垛机</label> <label><input type="radio" name="crnSelect" value="5"> 5号堆垛机</label> </div> </div> <!-- 源站/源库位 选择 --> <div id="source-select" class="operator-item"> <span class="select-title">源站/源库位</span> <div class="select-container"> <div class="select-container-item"> <span>站</span> <label><input id="sourceStaNo" type="number" name="points" min="0" /></label> </div> <div class="select-container-item"> <span>排</span> <label><input id="sourceRow" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> <div class="select-container-item"> <span>列</span> <label><input id="sourceBay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label> </div> <div class="select-container-item"> <span>层</span> <label><input id="sourceLev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> </div> </div> <!-- 目标站/目标库位 选择 --> <div id="target-select" class="operator-item"> <span class="select-title">目标站/目标库位</span> <div class="select-container"> <div class="select-container-item"> <span>站</span> <label><input id="staNo" type="number" name="points" min="0" /></label> </div> <div class="select-container-item"> <span>排</span> <label><input id="row" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> <div class="select-container-item"> <span>列</span> <label><input id="bay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label> </div> <div class="select-container-item"> <span>层</span> <label><input id="lev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> </div> </div> </div> <!-- 设备任务操作 --> <div class="task-operator"> <fieldset> <legend>手动操作</legend> <div class="button-group"> <button class="item" onclick="put()">入库</button> <button class="item" onclick="take()">出库</button> <button class="item" onclick="stockMove()">库位转移</button> <button class="item" onclick="siteMove()">站到站</button> <!-- <button class="item" onclick="bacOrigin()">回原点</button>--> <!-- <button class="item" onclick="reverseOrigin()">反原点</button>--> <!-- <button class="item" onclick="coorMove()">坐标移行</button>--> <button class="item" onclick="taskComplete()">任务完成</button> <!-- <button class="item" onclick="pause()">暂停</button>--> <!-- <button class="item" onclick="boot()">启动</button>--> <button class="item" onclick="clearCommand()">清除命令</button> <button class="item" onclick="handleReset()">复位</button> </div> </fieldset> </div> </div> <!-- 源站/源库位 选择 --> <div id="source-select" class="operator-item"> <span class="select-title">源站/源库位</span> <div class="select-container"> <div class="select-container-item"> <span>站</span> <label><input id="sourceStaNo" type="number" name="points" min="0" /></label> </div> <div class="select-container-item"> <span>排</span> <label><input id="sourceRow" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> <div class="select-container-item"> <span>列</span> <label><input id="sourceBay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label> </div> <div class="select-container-item"> <span>层</span> <label><input id="sourceLev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> </div> </div> <!-- 目标站/目标库位 选择 --> <div id="target-select" class="operator-item"> <span class="select-title">目标站/目标库位</span> <div class="select-container"> <div class="select-container-item"> <span>站</span> <label><input id="staNo" type="number" name="points" min="0" /></label> </div> <div class="select-container-item"> <span>排</span> <label><input id="row" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> <div class="select-container-item"> <span>列</span> <label><input id="bay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label> </div> <div class="select-container-item"> <span>层</span> <label><input id="lev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> </div> <!-- 堆垛机日志输出 --> <div class="crn-output-board"> <textarea id="crn-output"></textarea> </div> </div> <!-- 设备任务操作 --> <div class="task-operator"> <fieldset> <legend>手动操作</legend> <div class="button-group"> <button class="item" onclick="put()">入库</button> <button class="item" onclick="take()">出库</button> <button class="item" onclick="stockMove()">库位转移</button> <button class="item" onclick="siteMove()">站到站</button> <!-- <button class="item" onclick="bacOrigin()">回原点</button>--> <!-- <button class="item" onclick="reverseOrigin()">反原点</button>--> <!-- <button class="item" onclick="coorMove()">坐标移行</button>--> <button class="item" onclick="taskComplete()">任务完成</button> <!-- <button class="item" onclick="pause()">暂停</button>--> <!-- <button class="item" onclick="boot()">启动</button>--> <button class="item" onclick="clearCommand()">清除命令</button> <button class="item" onclick="handleReset()">复位</button> </div> </fieldset> </div> </div> <!-- 堆垛机日志输出 --> <div class="crn-output-board"> <textarea id="crn-output"></textarea> </div> </body> <script> src/main/webapp/views/pipeline.html
@@ -17,98 +17,109 @@ </style> </head> <body> <main> <div style="padding: 10px;height: 100%;float: left;width: 6%"> <div class="button-window"></div> <!-- plc异常日志监控版 --> <div id="plc-error" class="main-board" style="padding-left: 10px"> <!-- 头部 --> <div class="plc-log-header"> <!-- <div style="height: 40%">--> <!-- <span>东侧PLC执行指令</span>--> <!-- </div>--> <!-- <div style="height: 40%">--> <!-- <span>西侧PLC执行指令</span>--> <!-- </div>--> <div> <span style="color: #1E9FFF">PLC异常信息表:</span> </div> </div> <!-- 主体 --> <div class="plc-log-body"> <table id="plc-error-table"> <thead> <tr> <th style="width: 200px">序号</th> <th style="width: 400px">PLC错误描述</th> <th style="width: 400px">异常</th> </tr> </thead> <tbody> </tbody> </table> </div> </div> <!-- 站点状态数据监控版 --> <div id="site-monitor" class="main-board"> <!-- 表格 --> <table id="site-table"> <!-- 表头 --> <thead> <tr> <th>站号</th> <th>工作号</th> <th>自动</th> <th>有物</th> <th>可入</th> <th>可出</th> <th>入库标记</th> <th>空板信号</th> <th>目标站</th> </tr> </thead> <!-- 表格内容 --> <tbody></tbody> </table> </div> </main> <footer> <textarea id="output"></textarea> </footer> <div id="site-detl" style="display: none"> <form> <div class="form-item"> <label class="form-label">站号:</label> <div class="form-input"> <input id="siteId" name="siteId" class="layui-input" lay-verify="required|number" autocomplete="off" disabled="disabled"> </div> </div> <div class="form-item"> <label class="form-label">工作号:</label> <div class="form-input"> <input id="workNo" name="workNo" type="number" class="layui-input" lay-verify="number" autocomplete="off"> </div> </div> <div class="form-item"> <label class="form-label">目标站:</label> <div class="form-input"> <input id="staNo" name="staNo" type="number" class="layui-input" lay-verify="number" autocomplete="off"> </div> </div> <div class="form-item"> <label class="form-label">入库标记:</label> <div class="form-input"> <input id="pakMk" name="pakMk" type="text" class="layui-input" autocomplete="off"> </div> </div> <div class="form-item form-button-container"> <button class="form-button" id="save">保存</button> <button class="form-button" id="cancel" style="background-color: #D0D0D0">取消</button> </div> </form> </div> <div style="height: 100%;padding-left: 6%"> <div style="padding: 10px;height: 100%"> <main> <!-- plc异常日志监控版 --> <div id="plc-error" class="main-board" style="padding-left: 10px"> <!-- 头部 --> <div class="plc-log-header"> <!-- <div style="height: 40%">--> <!-- <span>东侧PLC执行指令</span>--> <!-- </div>--> <!-- <div style="height: 40%">--> <!-- <span>西侧PLC执行指令</span>--> <!-- </div>--> <div> <span style="color: #1E9FFF">PLC异常信息表:</span> </div> </div> <!-- 主体 --> <div class="plc-log-body"> <table id="plc-error-table"> <thead> <tr> <th style="width: 200px">序号</th> <th style="width: 400px">PLC错误描述</th> <th style="width: 400px">异常</th> </tr> </thead> <tbody> </tbody> </table> </div> </div> <!-- 站点状态数据监控版 --> <div id="site-monitor" class="main-board"> <!-- 表格 --> <table id="site-table"> <!-- 表头 --> <thead> <tr> <th>站号</th> <th>工作号</th> <th>自动</th> <th>有物</th> <th>可入</th> <th>可出</th> <th>入库标记</th> <th>空板信号</th> <th>目标站</th> </tr> </thead> <!-- 表格内容 --> <tbody></tbody> </table> </div> </main> <footer> <textarea id="output"></textarea> </footer> <div id="site-detl" style="display: none"> <form> <div class="form-item"> <label class="form-label">站号:</label> <div class="form-input"> <input id="siteId" name="siteId" class="layui-input" lay-verify="required|number" autocomplete="off" disabled="disabled"> </div> </div> <div class="form-item"> <label class="form-label">工作号:</label> <div class="form-input"> <input id="workNo" name="workNo" type="number" class="layui-input" lay-verify="number" autocomplete="off"> </div> </div> <div class="form-item"> <label class="form-label">目标站:</label> <div class="form-input"> <input id="staNo" name="staNo" type="number" class="layui-input" lay-verify="number" autocomplete="off"> </div> </div> <div class="form-item"> <label class="form-label">入库标记:</label> <div class="form-input"> <input id="pakMk" name="pakMk" type="text" class="layui-input" autocomplete="off"> </div> </div> <div class="form-item form-button-container"> <button class="form-button" id="save">保存</button> <button class="form-button" id="cancel" style="background-color: #D0D0D0">取消</button> </div> </form> </div> </div> </div> </body> <script> // 初始化