// 库位图 let total = [], rack = '', racks = '', rackDesc = '', rackDescs = '', crn = '', crns = '', track = '', tracks = '', stn = '', stns = '', stnArr = [], floorBtn = '', floorBtns = '', floorBtnss = '', floorInfo=''; // 库区信息 let rackss = mapInfo.racks, rackDescss = mapInfo.rackDescs, crnss = mapInfo.crns, areas = mapInfo.areas[0].floors, floorId; function getMap() { // 货架 for (let i = 0;i < rackss.length;i++) { let bay ='' // 单个库位 let bays = '' // 库位集合 let bayWidth = rackss[i].width / (rackss[i].maxBayNo / rackss[i].minBayNo) let maxBayNo = rackss[i].maxBayNo // 最大库位号 let minBayNo = rackss[i].minBayNo // 最小库位号 let bLen = maxBayNo / minBayNo // 库位个数 let bNum // 库位号码 // hpPosition 0 表示货架序号 左->右 1 表示货架序号 右->左 if (mapInfo.hpPosition == 1) { bNum = maxBayNo for (let j = bLen; j > 0; j--) { bay = "" bays = bays + bay bNum = bNum - minBayNo; } }else { bNum = minBayNo let hiddenArr = []; if (rackss[i].hiddenArr != undefined) { hiddenArr = rackss[i].hiddenArr } for (let j = 0; j < bLen; j++) { bay = ""; if (hiddenArr.indexOf(bNum) != -1) { bay = ""; } bays = bays + bay; bNum = bNum + minBayNo; } } rack = "
" + bays + "
" racks = racks + rack // getCrnInfo(minBayNo); } // // 货架描述 // for (let i = 0;i < rackDescss.length;i++) { // rackDesc = "
" + rackDescss[i].text + "
" // rackDescs = rackDescs + rackDesc // } // 堆垛机和地轨 for (let i = 0;i < crnss.length;i++) { if (crnss[i].type == "crane") { crn = "
" crns = crns + crn } else { track = "
" + crnss[i].text + "
" tracks = tracks + track } } // 楼层 for (let i = 0; i < areas.length;i++) { let stnss = areas[i].stns let floor = areas[i].text console.log(areas[i].top) floorId = areas[i].id var position = (i+1)*100 floorBtn = "" console.log(mapInfo.areas[0].floors.length) if (mapInfo.areas[0].floors.length == 1) { floorBtnss = '' } else { floorBtnss = floorBtnss + floorBtn } // 每层的 输送线站点 var index = i var n = 1 stnArr[index] = '' total[index] = '' for (let j = 0; j < stnss.length; j++) { if (stnss[j].type == "stn") { stn = "
" + stnss[j].text + "
" stnArr[i] = stnArr[i] + stn total[i] = n++ } else if(stnss[j].type == "track"){ stn = "
" + stnss[j].text + "
" stnArr[i] = stnArr[i] + stn } } } floorInfo = racks + rackDescs + tracks + crns + stnArr[0] + floorBtnss $(".main-part").append(floorInfo) $("#line-total").html(total[0]) // listenChange(); } function changFloor(e) { $(".main-part").empty() // 清空节点 floorInfo = racks + stnArr[e] +rackDescs + crns + tracks + floorBtnss $(".main-part").append(floorInfo) $("#line-total").empty() $("#line-total").html(total[e]) // listenChange(); } layui.config({ base: baseUrl + "/static/wms/layui/lay/modules/" }).use(['table', 'form'], function () { var table = layui.table; var $ = layui.jquery; var cache; // 数据渲染 tableIns = table.render({ elem: '#deviceInfo', headers: {token: localStorage.getItem('token')}, url: baseUrl + '/console/deviceInfo', page: false, limit: 16, limits: [16, 30, 50, 100, 200, 500], even: true, cellMinWidth: 50, cols: [[ {field: 'device', align: 'center', title: '设备'} , {field: 'deviceId', align: 'center', title: '编号'} , {field: 'battery', align: 'center', title: '电量'} , {field: 'error', align: 'center', title: '异常', templet: '#errorTpl'} , {field: 'status', align: 'center', title: '状态', width: 150} ]], request: { pageName: 'curr', pageSize: 'limit' }, parseData: function (res) { return { 'code': res.code, 'msg': res.msg, 'count': res.data.total, 'data': res.data.records } }, response: { statusCode: 200 }, done: function (res, curr, count) { $(".layui-table-tool").hide() $(".layui-table-view").css({"margin":"0px"}) $(".layui-table-box").css({"padding-bottom":"0px"}) cache = table.cache['deviceInfo']; } }); setInterval(() => { tableReload() },10000) function tableReload() { $.ajax({ url: baseUrl + "/console/deviceInfo", headers: {'token': localStorage.getItem('token')}, contentType: 'application/json;charset=UTF-8', method: 'GET', traditional: true, success: function (res) { cache = res.data.records table.reload('deviceInfo',{ data: cache }) } }) } });