| | |
| | | <button class="floorBtn btn-16" onclick="changFloor(1)" style="margin-top: 150px">1F</button> |
| | | <button class="floorBtn btn-16" onclick="changFloor(2)" style="margin-top: 200px">2F</button> |
| | | <button class="floorBtn btn-16" onclick="changFloor(3)" style="margin-top: 250px">3F</button> |
| | | <button class="floorBtn btn-16" onclick="testMove()" style="margin-top: 250px">测试移动小车</button> |
| | | <button class="floorBtn btn-16" onclick="changFloor(4)" style="margin-top: 300px">4F</button> |
| | | <button class="floorBtn btn-16" onclick="testMove()" style="margin-top: 350px">测试移动车</button> |
| | | |
| | | <!-- 货架 + 堆垛机 + 入库站点 --> |
| | | <div class="main-part"> |
| | | <!-- 第一组 --> |
| | | <div class="lane" id="mapDataId" style="margin-bottom: 280px"> |
| | | <div class="sxcar" id="sxcar-1"></div> |
| | | |
| | | </div> |
| | | </div> |
| | | </main> |
| | |
| | | var tData2 = [] |
| | | var tData3 = [] |
| | | var mapData = [] //地图数据 |
| | | var currentLev = 1;//当前地图楼层 |
| | | function getCodeData(){ |
| | | $.ajax({ |
| | | url:baseUrl +'/console/barcode/output/site', |
| | |
| | | |
| | | |
| | | $(function (){ |
| | | initMap() |
| | | initMap(1) |
| | | }) |
| | | |
| | | setInterval(() => { |
| | | getShuttleStateInfo() |
| | | },1000) |
| | | |
| | | // 四向穿梭车信息表获取 |
| | | function getShuttleStateInfo() { |
| | | $.ajax({ |
| | | url: baseUrl+ "/shuttle/table/shuttle/state", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'POST', |
| | | success: function (res) { |
| | | res.data.forEach((item,index) => { |
| | | if(item.locNoLev != currentLev){ |
| | | //四向穿梭车楼层和当前地图楼层不一致,删除该车辆 |
| | | $("#sxcar-" + item.shuttleNo).remove() |
| | | }else { |
| | | //移动四向穿梭车 |
| | | moveCar(item.shuttleNo,item.locNoX,item.locNoY) |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | } |
| | | |
| | | //计算四向穿梭车图标位置 |
| | | function getCarPosition(x,y) { |
| | |
| | | } |
| | | |
| | | //初始化地图 |
| | | function initMap() { |
| | | function initMap(lev) { |
| | | //母轨道第一次索引,用于定位小车 |
| | | let firstMotherIndex = [0,0]; |
| | | |
| | | $("#mapDataId").empty() |
| | | $.ajax({ |
| | | type:"get", |
| | | url: baseUrl + "/static/js/map.json", |
| | |
| | | break; |
| | | case 4: |
| | | //站点 |
| | | let data = colData.data |
| | | col = '<div id="site-' + data + '" class="site">' + data + '(9991)</div>'; |
| | | if (lev == 1) { |
| | | let data = colData.data; |
| | | col = '<div id="site-' + data + '" class="site">' + data + '(9991)</div>'; |
| | | }else { |
| | | //其他楼层只有提升机能显示 |
| | | let data = colData.data; |
| | | if (data == 109) {//其他楼层只有提升机能显示 |
| | | col = '<div id="site-' + data + '" class="site">' + data + '(9991)</div>'; |
| | | }else { |
| | | col = '<div style="visibility: hidden" id="site-' + data + '" class="site">' + data + '(9991)</div>'; |
| | | } |
| | | } |
| | | break; |
| | | default: |
| | | col = '<button class="item">' + idx + '</button>'; |
| | |
| | | } |
| | | }) |
| | | |
| | | moveCar(1, firstMotherIndex[0], firstMotherIndex[1]); |
| | | $("#mapDataId").append(content) |
| | | } |
| | | }) |
| | | |
| | | $.ajax({ |
| | | url: baseUrl+ "/shuttle/table/shuttle/state", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'POST', |
| | | success: function (res) { |
| | | res.data.forEach((item,index) => { |
| | | if(lev == item.locNoLev){ |
| | | let carBox = '<div class="sxcar" id="sxcar-' + item.shuttleNo + '"></div>' |
| | | $("#mapDataId").append(carBox) |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | } |
| | | |
| | | //将地图数据转换成int二维数组(后续用于请求计算路径时携带地图数据参数使用) |
| | |
| | | } |
| | | } |
| | | |
| | | // 页面点击事件监听 --------------------------------------------------------- |
| | | |
| | | // 输送设备点击事件 |
| | | // $('.site').on('click', function () { |
| | | // var id = this.id.split("-")[1]; |
| | | // if (id === undefined) { |
| | | // return; |
| | | // } |
| | | // layer.open({ |
| | | // title: id + " 站点信息详情", |
| | | // closeBtn: 0, |
| | | // skin: 'layui-layer-lan', |
| | | // offset: '180px', |
| | | // type: 1, |
| | | // shadeClose: true, |
| | | // content: $('#siteWindow'), |
| | | // area: ['35rem', '18rem'], |
| | | // btn: ['确定', '关闭'], |
| | | // success: function(layero, index){ |
| | | // http.post(baseUrl+"/console/site/detail", {siteId: id}, function (res) { |
| | | // for (var val in res.data) { |
| | | // var find = $("#siteWindow").find(":input[name='" + val + "']"); |
| | | // if (find[0].type==='text') { |
| | | // find.val(res.data[val]); |
| | | // } else if (find[0].type === 'checkbox') { |
| | | // find.attr("checked", res.data[val] === 'Y'); |
| | | // } |
| | | // } |
| | | // }) |
| | | // }, |
| | | // end: function () { |
| | | // $(':input', $("#siteWindow")).val('').removeAttr('checked').removeAttr('selected'); |
| | | // } |
| | | // }); |
| | | // }); |
| | | |
| | | // 堆垛机点击事件 |
| | | // $('.machine').on('click', function () { |
| | | // var id = this.id.split("-")[1]; |
| | | // layer.open({ |
| | | // title: id+"号堆垛机", |
| | | // skin: 'layui-layer-lan', |
| | | // closeBtn: 0, |
| | | // type: 1, |
| | | // offset: '150px', |
| | | // shadeClose: true, |
| | | // content: $("#crnWindow"), |
| | | // area: ['40rem', '20rem'], |
| | | // btn: ['确定', '关闭'], |
| | | // success: function(layero, index){ |
| | | // http.post(baseUrl+"/console/crn/detail", {crnNo: id}, function (res) { |
| | | // for (var val in res.data) { |
| | | // var find = $("#crnWindow").find(":input[name='" + val + "']"); |
| | | // if (find[0].type==='text') { |
| | | // find.val(res.data[val]); |
| | | // } else if (find[0].type === 'checkbox') { |
| | | // find.attr("checked", res.data[val] === 'Y'); |
| | | // } |
| | | // } |
| | | // }) |
| | | // }, |
| | | // end: function () { |
| | | // $(':input', $("#crnWindow")).val('').removeAttr('checked').removeAttr('selected'); |
| | | // } |
| | | // }); |
| | | // }); |
| | | |
| | | |
| | | // 小车偏移动画 |
| | | function carAnimate(id, target) { |
| | | var targetTop = 122; |
| | |
| | | $("#site-" + id).animate({top: targetTop+'px'}, 1000); |
| | | } |
| | | |
| | | |
| | | //楼层切换按钮 |
| | | function changFloor(x) { |
| | | switch (x) { |
| | | case 1: |
| | | $('#fool1').css("display","block") |
| | | $('#fool2').css("display","none") |
| | | $('#fool3').css("display","none") |
| | | return |
| | | case 2: |
| | | $('#fool1').css("display","none") |
| | | $('#fool2').css("display","block") |
| | | $('#fool3').css("display","none") |
| | | return |
| | | case 3: |
| | | $('#fool1').css("display","none") |
| | | $('#fool2').css("display","none") |
| | | $('#fool3').css("display","block") |
| | | return |
| | | default: |
| | | return; |
| | | |
| | | } |
| | | currentLev = x |
| | | initMap(currentLev) |
| | | } |
| | | |
| | | </script> |