| | |
| | | <link rel="stylesheet" type="text/css" href="../static/css/common.css"> |
| | | <link rel="stylesheet" type="text/css" href="../static/css/console.css"> |
| | | <script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../static/js/common.js"></script> |
| | | <script type="text/javascript" src="../static/js/layer/layer.js"></script> |
| | | <script type="text/javascript" src="../static/js/common.js"></script> |
| | | <style> |
| | | /* layer 深蓝色按钮修改 */ |
| | | /*.layui-layer-lan .layui-layer-btn {*/ |
| | | /*border-top: none;*/ |
| | | /*border-top: none;*/ |
| | | /*}*/ |
| | | .layui-layer-lan .layui-layer-btn a { |
| | | background: #4476A7; |
| | |
| | | <div class="tips-item"> |
| | | <label>堆垛机状态颜色: </label> |
| | | <div class="item-group"> |
| | | <span class="machine-put">入库</span> |
| | | <span class="machine-take">出库</span> |
| | | <span class="machine-stock-move">库到库</span> |
| | | <span class="machine-site-move">站到站</span> |
| | | <span class="machine-p-move">PToP</span> |
| | | <span class="machine-error">异常</span> |
| | | <span class="machine-auto">自动</span> |
| | | <span class="machine-unauto">非自动/手动</span> |
| | | <span class="machine-put-flag">入库</span> |
| | | <span class="machine-take-flag">出库</span> |
| | | <span class="machine-stock-move-flag">库到库</span> |
| | | <span class="machine-site-move-flag">站到站</span> |
| | | <span class="machine-p-move-flag">PToP</span> |
| | | <span class="machine-error-flag">异常</span> |
| | | <span class="machine-auto-flag">自动</span> |
| | | <span class="machine-unauto-flag">非自动/手动</span> |
| | | </div> |
| | | </div> |
| | | <div class="tips-item"> |
| | |
| | | <div id="code-decoder-1" class="code-decoder"> |
| | | <span id="code-decoder-data-1" class="code-decoder-data">0</span> |
| | | </div> |
| | | <!-- 扫码器 --> |
| | | <div id="code-decoder-2" class="code-decoder"> |
| | | <span id="code-decoder-data-2" class="code-decoder-data">0</span> |
| | | </div> |
| | | |
| | | |
| | | <!-- 左输送线 --> |
| | | <!----------- 左输送线 ----------> |
| | | |
| | | <!-- 台车轨道 --> |
| | | <div id="car-track-1" class="car-track"> |
| | | <div></div> |
| | | </div> |
| | | |
| | | <!-- 台车实例 --> |
| | | <div id="site-8" class="site car">8</div> |
| | | |
| | | <!-- 第一列(宽度 100px) --> |
| | | <div class="site-row site-row-1"> |
| | | <div id="site-7" class="site" style="height: 40px;line-height: 40px">7</div> |
| | | <div id="site-4" class="site" style="height: 40px;line-height: 40px">4</div> |
| | | <div id="site-3" class="site" style="height: 40px;line-height: 40px;">3</div> |
| | | <div id="site-2" class="site" style="height: 40px;line-height: 40px">2</div> |
| | | <div id="site-1" class="site" style="height: 40px;line-height: 40px">1</div> |
| | | <div id="site-7" class="site" style="height: 20px;line-height: 20px;margin-bottom: 20px">7</div> |
| | | <div id="site-4" class="site" style="height: 20px;line-height: 20px;margin-bottom: 20px">4</div> |
| | | <div id="site-3" class="site" style="height: 20px;line-height: 20px;margin-bottom: 40px">3</div> |
| | | <div id="site-2" class="site" style="height: 20px;line-height: 20px;margin-bottom: 0px">2</div> |
| | | <div id="site-1" class="site" style="height: 20px;line-height: 20px;margin-bottom: 20px">1</div> |
| | | </div> |
| | | |
| | | <!-- 第二列(宽度 100px) --> |
| | | <div class="site-row site-row-2"> |
| | | <div id="site-103" class="site" style="height: 20px;line-height: 20px">103</div> |
| | | <div id="site-104" class="site" style="height: 20px;line-height: 20px">104</div> |
| | | <div id="site-105" class="site" style="height: 20px;line-height: 20px">105</div> |
| | | </div> |
| | | |
| | | <!-- 第二列(宽度 100px) --> |
| | | <div class="site-row site-row-3"> |
| | | <div id="site-102" class="site" style="height: 20px;line-height: 20px;margin-bottom: 20px">102</div> |
| | | <div id="site-106" class="site" style="height: 20px;line-height: 20px;margin-bottom: 20px">106</div> |
| | | </div> |
| | | |
| | | <!-- 货架 + 堆垛机 + 入库站点 + 出库站点 --> |
| | | <div class="main-part"> |
| | | <!--第一排--> |
| | | <!--第一组--> |
| | | <div class="lane"> |
| | | <span class="row-no">1#</span> |
| | | <!-- 货架 --> |
| | |
| | | <button class="item">34</button> |
| | | <div class="site site-none"> </div> |
| | | </div> |
| | | <span class="row-no">2#</span> |
| | | </div> |
| | | <!--第二组--> |
| | | <div class="lane" style="margin-left: 300px"> |
| | | <span class="row-no">3#</span> |
| | | <!-- 货架 --> |
| | | <div class="stock-group"> |
| | | <div id="site-101" class="site" style="">101</div> |
| | | <button class="item">2</button> |
| | | <button class="item">4</button> |
| | | <button class="item">6</button> |
| | | <button class="item">8</button> |
| | | <button class="item">10</button> |
| | | <button class="item">12</button> |
| | | <button class="item">14</button> |
| | | <button class="item">16</button> |
| | | <button class="item">18</button> |
| | | <button class="item">20</button> |
| | | <button class="item">22</button> |
| | | <button class="item">24</button> |
| | | <button class="item">26</button> |
| | | <button class="item">28</button> |
| | | <button class="item">30</button> |
| | | <button class="item">32</button> |
| | | <button class="item">34</button> |
| | | <button class="item">36</button> |
| | | <button class="item">38</button> |
| | | <button class="item">40</button> |
| | | <button class="item">42</button> |
| | | <button class="item">44</button> |
| | | <button class="item">46</button> |
| | | <button class="item">48</button> |
| | | <div class="site site-none"> </div> |
| | | </div> |
| | | <!-- 堆垛机 --> |
| | | <div class="crn"> |
| | | <hr class="pathway" style="width: 67.5%"> |
| | | <div id="crn-2" class="machine"></div> |
| | | </div> |
| | | <!-- 货架 --> |
| | | <div class="stock-group"> |
| | | <div id="site-107" class="site" style="">107</div> |
| | | <button class="item">2</button> |
| | | <button class="item">4</button> |
| | | <button class="item">6</button> |
| | | <button class="item">8</button> |
| | | <button class="item">10</button> |
| | | <button class="item">12</button> |
| | | <button class="item">14</button> |
| | | <button class="item">16</button> |
| | | <button class="item">18</button> |
| | | <button class="item">20</button> |
| | | <button class="item">22</button> |
| | | <button class="item">24</button> |
| | | <button class="item">26</button> |
| | | <button class="item">28</button> |
| | | <button class="item">30</button> |
| | | <button class="item">32</button> |
| | | <button class="item">34</button> |
| | | <button class="item">36</button> |
| | | <button class="item">38</button> |
| | | <button class="item">40</button> |
| | | <button class="item">42</button> |
| | | <button class="item">44</button> |
| | | <button class="item">46</button> |
| | | <button class="item">48</button> |
| | | <div class="site site-none"> </div> |
| | | </div> |
| | | <span class="row-no">4#</span> |
| | | </div> |
| | | </div> |
| | | </main> |
| | |
| | | <span>设备号</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="text" name="devpNo" value="" disabled="disabled" style="width: 4rem"> |
| | | <input type="text" name="siteId" value="" disabled="disabled" style="width: 4rem"> |
| | | </div> |
| | | </div> |
| | | <div class="form-item" style="width: 25%"> |
| | |
| | | <span>工作状态</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="text" name="workStatus" value="" disabled="disabled" style="width: 10rem"> |
| | | <input type="text" name="wrkSts" value="" disabled="disabled" style="width: 10rem"> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <input type="checkbox" name="loading" disabled="disabled" style="width: 1rem"> |
| | | </div> |
| | | </div> |
| | | <div class="form-item" style="width: 20%"> |
| | | <div class="form-item-label"> |
| | | <span>能入</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="checkbox" name="canining" disabled="disabled" style="width: 1rem"> |
| | | </div> |
| | | </div> |
| | | <div class="form-item" style="width: 20%"> |
| | | <div class="form-item-label"> |
| | | <span>能出</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="checkbox" name="canouting" disabled="disabled" style="width: 1rem"> |
| | | </div> |
| | | <div class="form-item" style="width: 20%"> |
| | | <div class="form-item-label"> |
| | | <span>能入</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="checkbox" name="canining" disabled="disabled" style="width: 1rem"> |
| | | </div> |
| | | </div> |
| | | <div class="form-item" style="width: 20%"> |
| | | <div class="form-item-label"> |
| | | <span>能出</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="checkbox" name="canouting" disabled="disabled" style="width: 1rem"> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 第三行 --> |
| | |
| | | <span>源库位</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="text" name="sourceStock" value="" disabled="disabled" style="width: 8rem"> |
| | | <input type="text" name="sourceLocNo" value="" disabled="disabled" style="width: 8rem"> |
| | | </div> |
| | | </div> |
| | | <div class="form-item" style="width: 40%"> |
| | |
| | | <span>目标库位</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="text" name="stock" value="" disabled="disabled" style="width: 8rem"> |
| | | <input type="text" name="locNo" value="" disabled="disabled" style="width: 8rem"> |
| | | </div> |
| | | </div> |
| | | </form> |
| | |
| | | <span>工作状态</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="text" name="workStatus" value="" disabled="disabled" style="width: 10rem"> |
| | | <input type="text" name="wrkSts" value="" disabled="disabled" style="width: 10rem"> |
| | | </div> |
| | | </div> |
| | | <div class="form-item" style="width: 45%"> |
| | |
| | | <span>源库位</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="text" name="sourceStock" value="" disabled="disabled" style="width: 10rem"> |
| | | <input type="text" name="sourceLocNo" value="" disabled="disabled" style="width: 10rem"> |
| | | </div> |
| | | </div> |
| | | <div class="form-item" style="width: 45%"> |
| | |
| | | <span>目标库位</span> |
| | | </div> |
| | | <div class="form-item-input"> |
| | | <input type="text" name="stock" value="" disabled="disabled" style="width: 10rem"> |
| | | <input type="text" name="locNo" value="" disabled="disabled" style="width: 10rem"> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | getCrnInfo(); |
| | | getSystemRunningStatus(); |
| | | getBarcodeInfo() |
| | | }, 500); |
| | | }, 1000); |
| | | setInterval(function () { |
| | | getSitesInfo(); |
| | | }, 3000); |
| | |
| | | parent.systemRunning = false; |
| | | } |
| | | } else if (res.code === 403){ |
| | | window.location.href = baseUrl+"/login"; |
| | | parent.location.href = baseUrl+"/login"; |
| | | } else { |
| | | alert(res.msg); |
| | | console.log(res.msg); |
| | | |
| | | } |
| | | } |
| | | }); |
| | |
| | | parent.systemRunning = false; |
| | | } |
| | | } else if (res.code === 403){ |
| | | window.location.href = baseUrl+"/login"; |
| | | parent.location.href = baseUrl+"/login"; |
| | | } else { |
| | | alert(res.msg); |
| | | console.log(res.msg); |
| | | } |
| | | } |
| | | }); |
| | |
| | | if (res.code === 200){ |
| | | var sites = res.data; |
| | | for (var i = 0; i < sites.length; i++){ |
| | | $("#site-"+sites[i].siteId).attr("class", "site " + sites[i].siteStatus); |
| | | var siteEl = $("#site-"+sites[i].siteId); |
| | | siteEl.attr("class", "site " + sites[i].siteStatus); |
| | | if (sites[i].workNo != null && sites[i].workNo>0) { |
| | | siteEl.html(sites[i].siteId + "[" + sites[i].workNo + "]"); |
| | | } else { |
| | | siteEl.html(sites[i].siteId); |
| | | } |
| | | if (i+1===8) { |
| | | carAnimate(i+1, Number(sites[i].nearbySta)); |
| | | } |
| | | } |
| | | } else if (res.code === 403){ |
| | | window.location.href = baseUrl+"/login"; |
| | | parent.location.href = baseUrl+"/login"; |
| | | } else { |
| | | alert(res.msg); |
| | | console.log(res.msg); |
| | | } |
| | | } |
| | | }); |
| | |
| | | if (res.code === 200){ |
| | | var crns = res.data; |
| | | for (var i = 0; i < crns.length; i++){ |
| | | crnAnimate(crns[i].crnId, crns[i].offset); |
| | | var crnEl = $("#crn-"+crns[i].crnId); |
| | | crnEl.attr("class", "machine " + crns[i].crnStatus); |
| | | |
| | | var unit = $('.item').eq(0).width()+4; |
| | | crnEl.animate({left: (crns[i].bay * unit + 50) +'px'}, 1000); |
| | | // crnEl.animate({left: (crns[i].bay * ($('.item').eq(0).width()+4)) +'px'}, 1000); |
| | | } |
| | | } else if (res.code === 403){ |
| | | window.location.href = baseUrl+"/login"; |
| | | parent.location.href = baseUrl+"/login"; |
| | | } else { |
| | | alert(res.msg); |
| | | console.log(res.msg); |
| | | } |
| | | } |
| | | }); |
| | |
| | | $("#code-decoder-data-"+barcodes[i].barcodeId).html(barcodes[i].codeValue); |
| | | } |
| | | } else if (res.code === 403){ |
| | | window.location.href = baseUrl+"/login"; |
| | | parent.location.href = baseUrl+"/login"; |
| | | } else { |
| | | alert(res.msg); |
| | | console.log(res.msg); |
| | | } |
| | | } |
| | | }); |
| | |
| | | }); |
| | | }); |
| | | |
| | | |
| | | // 小车偏移动画 |
| | | function carAnimate(id, target) { |
| | | var targetTop = 122; |
| | | if (id === 8) { |
| | | switch (target) { |
| | | case 1: |
| | | targetTop += 160; |
| | | break; |
| | | case 2: |
| | | targetTop += 140; |
| | | break; |
| | | case 3: |
| | | targetTop += 80; |
| | | break; |
| | | case 4: |
| | | targetTop += 40; |
| | | break; |
| | | case 7: |
| | | targetTop += 0; |
| | | break; |
| | | default: |
| | | return; |
| | | } |
| | | } else { |
| | | return; |
| | | } |
| | | $("#site-" + id).animate({top: targetTop+'px'}, 1000); |
| | | } |
| | | |
| | | </script> |
| | | </html> |