| | |
| | | <th>提升机</th> |
| | | <th>工作号</th> |
| | | <th>任务状态</th> |
| | | <th>提升机锁定</th> |
| | | <th>位置到达反馈</th> |
| | | <th>准备就绪</th> |
| | | <th>运行中</th> |
| | | <th>联机/单机</th> |
| | | <th>平台位置偏差报警</th> |
| | | <th>平台扭矩偏差报警</th> |
| | | <th>平台四向车检测</th> |
| | | <th>未就绪状态</th> |
| | | <th>伺服1错误</th> |
| | | <th>伺服2错误</th> |
| | | <th>伺服3错误</th> |
| | | <th>伺服4错误</th> |
| | | <th>提升机实际速度反馈</th> |
| | | <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> |
| | |
| | | <tr> |
| | | <th>提升机</th> |
| | | <th>工作号</th> |
| | | <th>输送线前端光电有货</th> |
| | | <th>输送线正转反馈</th> |
| | | <th>输送线反转反馈</th> |
| | | <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> |
| | |
| | | <div class="button-group"> |
| | | <select id="liftLev"> |
| | | <option value="1" selected>1F</option> |
| | | <option value="3">2F</option> |
| | | <option value="4">3F</option> |
| | | <option value="5">4F</option> |
| | | <option value="2">输送线位置</option> |
| | | <option value="2">2F</option> |
| | | <option value="3">3F</option> |
| | | <option value="4">4F</option> |
| | | <option value="5">5F</option> |
| | | <option value="6">6F</option> |
| | | <option value="7">7F</option> |
| | | <option value="8">8F</option> |
| | | <option value="9">9F</option> |
| | | <option value="10">10F</option> |
| | | </select> |
| | | <button class="item" onclick="liftOperator(1)">移动提升机</button> |
| | | <button class="item" onclick="liftOperator(3)">无货正转</button> |
| | | <button class="item" onclick="liftOperator(4)">无货反转</button> |
| | | <button class="item" onclick="liftOperator(5)">有货正转</button> |
| | | <button class="item" onclick="liftOperator(6)">有货反转</button> |
| | | <button class="item" onclick="liftOperator(7)">链条停止</button> |
| | | |
| | | <div class="select-container-item"> |
| | | <span>源站</span> |
| | | <label><input id="sourceStaNo" type="text" name="sourceStaNo" /></label> |
| | | </div> |
| | | <div class="select-container-item"> |
| | | <span>目标站</span> |
| | | <label><input id="staNo" type="text" name="staNo" /></label> |
| | | </div> |
| | | <button class="item" onclick="liftOperator(2)">移动托盘</button> |
| | | <button class="item" onclick="liftOperator(0)">复位</button> |
| | | </div> |
| | | </fieldset> |
| | |
| | | <!-- 提升机日志输出 --> |
| | | <div class="lift-output-board"> |
| | | <textarea id="lift-output"></textarea> |
| | | </div> |
| | | |
| | | <div id="lift-detl" style="display: none"> |
| | | <div> |
| | | <div class="form-item"> |
| | | <label class="form-label">站号:</label> |
| | | <div class="form-input"> |
| | | <input id="liftNo" name="liftNo" 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="pakMk" name="pakMk" type="text" class="layui-input" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="form-item"> |
| | | <label class="form-label">令牌:</label> |
| | | <div class="form-input"> |
| | | <input id="token" name="token" 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> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | } |
| | | } |
| | | |
| | | var layerIdx; |
| | | $(document).on('click ','.pos-btn', function () { |
| | | let liftNo = Number($(this).parent().attr("data-liftNo")); |
| | | layerIdx = layer.open({ |
| | | type: 1, |
| | | title: false, |
| | | shadeClose: true, |
| | | offset: [$(this).offset().top + 30 + 'px', $(this).offset().left + 'px'], |
| | | anim: 5, |
| | | shade: [0], |
| | | area: ['310px', '370px'], |
| | | closeBtn: 0, |
| | | content: $("#lift-detl"), |
| | | success: function(layero, index){ |
| | | http.get(baseUrl+ "/lift/detl/"+liftNo, null, function (res) { |
| | | $('#liftNo').val(liftNo); |
| | | $('#workNo').val(res.data.workNo); |
| | | $('#row').val(res.data.row); |
| | | $('#bay').val(res.data.bay); |
| | | $('#lev').val(res.data.lev); |
| | | $('#crnNo').val(res.data.crnNo); |
| | | $('#pakMk').val(res.data.pakMk); |
| | | }) |
| | | }, |
| | | end: function () { |
| | | $('#liftNo').val(""); |
| | | $('#workNo').val(""); |
| | | $('#row').val(""); |
| | | $('#bay').val(""); |
| | | $('#lev').val(""); |
| | | $('#crnNo').val(""); |
| | | $('#pakMk').val(""); |
| | | } |
| | | }) |
| | | }) |
| | | |
| | | var layerIdx0; |
| | | $(document).on('click ','.mode-btn', function () { |
| | | let liftNo = Number($(this).parent().attr("data-liftNo")); |
| | | layerIdx0 = layer.open({ |
| | | type: 1, |
| | | title: false, |
| | | shadeClose: true, |
| | | offset: [$(this).offset().top + 30 + 'px', $(this).offset().left + 'px'], |
| | | anim: 5, |
| | | shade: [0], |
| | | area: ['70%', '85%'], |
| | | closeBtn: 0, |
| | | content: $("#lift-detl2"), |
| | | success: function(layero, index){ |
| | | console.log(liftNo) |
| | | http.get(baseUrl+ "/lift/sensor/detl/"+liftNo, null, function (res) { |
| | | $('#liftNo1').val(res.data.liftNo); |
| | | getColor(res.data.pakInTask,'#pakInTask'); |
| | | getColor(res.data.pakOutTask,'#pakOutTask'); |
| | | getColor(res.data.pakMoveTask,'#pakMoveTask'); |
| | | getColor(res.data.goHpTask,'#goHpTask'); |
| | | getColor(res.data.goOHpTask,'#goOHpTask'); |
| | | getColor(res.data.goHpAvoid,'#goHpAvoid'); |
| | | getColor(res.data.goOHpAvoid,'#goOHpAvoid'); |
| | | getColor(res.data.pakInEmpty,'#pakInEmpty'); |
| | | getColor(res.data.pakInFinish,'#pakInFinish'); |
| | | getColor(res.data.pakOutEmpty,'#pakOutEmpty'); |
| | | getColor(res.data.pakOutFinish,'#pakOutFinish'); |
| | | getColor(res.data.goHpAvoidFinish,'#goHpAvoidFinish'); |
| | | getColor(res.data.goOHpAvoidFinish,'#goOHpAvoidFinish'); |
| | | getColor(res.data.goHpAvoidErr,'#goHpAvoidErr'); |
| | | getColor(res.data.goOHpAvoidErr,'#goOHpAvoidErr'); |
| | | }) |
| | | }, |
| | | end: function () { |
| | | $('#liftNo').val(""); |
| | | } |
| | | }) |
| | | }) |
| | | |
| | | function getColor(res,e){ |
| | | $(e).val(res?"✔":"—"); |
| | | if (res){ |
| | |
| | | http.post(baseUrl+ "/lift/detl/update", { |
| | | liftNo: $('#liftNo').val(), |
| | | workNo: $('#workNo').val(), |
| | | row: $('#row').val(), |
| | | bay: $('#bay').val(), |
| | | lev: $('#lev').val(), |
| | | crnNo: $('#crnNo').val(), |
| | | pakMk: $('#pakMk').val(), |
| | | token: $('#token').val(), |
| | | }, function (res) { |
| | | layer.msg("修改成功", {icon: 1,}); |
| | | layer.close(layerIdx); |
| | | layer.close(layerDetl); |
| | | }) |
| | | }) |
| | | |
| | | $(document).on('click ','#cancel', function () { |
| | | layer.close(layerIdx); |
| | | }) |
| | | |
| | | function setliftRadio() { |
| | |
| | | setVal(tr.children("td").eq(0), table[i-1].liftNo); |
| | | setVal(tr.children("td").eq(1), table[i-1].taskNo); |
| | | setVal(tr.children("td").eq(2), table[i-1].protocolStatus$); |
| | | setVal(tr.children("td").eq(3), table[i-1].liftLock$); |
| | | setVal(tr.children("td").eq(4), table[i-1].positionArrivalFeedback); |
| | | setVal(tr.children("td").eq(5), table[i-1].ready$); |
| | | setVal(tr.children("td").eq(6), table[i-1].running$); |
| | | setVal(tr.children("td").eq(7), table[i-1].mode$); |
| | | setVal(tr.children("td").eq(8), table[i-1].platPositionDeviationAlarm$); |
| | | setVal(tr.children("td").eq(9), table[i-1].platTorqueDeviationAlarm$); |
| | | setVal(tr.children("td").eq(10), table[i-1].platShuttleCheck$); |
| | | setVal(tr.children("td").eq(11), table[i-1].notReady$); |
| | | setVal(tr.children("td").eq(12), table[i-1].servoError1); |
| | | setVal(tr.children("td").eq(13), table[i-1].servoError2); |
| | | setVal(tr.children("td").eq(14), table[i-1].servoError3); |
| | | setVal(tr.children("td").eq(15), table[i-1].servoError4); |
| | | setVal(tr.children("td").eq(16), table[i-1].liftActualSpeed); |
| | | setVal(tr.children("td").eq(3), table[i-1].model$); |
| | | setVal(tr.children("td").eq(4), table[i-1].busy$); |
| | | setVal(tr.children("td").eq(5), table[i-1].hasTray$); |
| | | setVal(tr.children("td").eq(6), table[i-1].hasCar$); |
| | | setVal(tr.children("td").eq(7), table[i-1].deviceError$); |
| | | setVal(tr.children("td").eq(8), table[i-1].frontOverrun$); |
| | | setVal(tr.children("td").eq(9), table[i-1].backOverrun$); |
| | | setVal(tr.children("td").eq(10), table[i-1].leftOverrun$); |
| | | setVal(tr.children("td").eq(11), table[i-1].rightOverrun$); |
| | | setVal(tr.children("td").eq(12), table[i-1].overHeight$); |
| | | setVal(tr.children("td").eq(13), table[i-1].overWeight$); |
| | | } |
| | | } else if (res.code === 403){ |
| | | window.location.href = baseUrl+"/login"; |
| | |
| | | var tr = tableEl.find("tr").eq(i); |
| | | setVal(tr.children("td").eq(0), table[i-1].liftNo); |
| | | setVal(tr.children("td").eq(1), table[i-1].workNo); |
| | | setVal(tr.children("td").eq(2), table[i-1].lineFrontHasStock$); |
| | | setVal(tr.children("td").eq(3), table[i-1].forwardRotationFeedback$); |
| | | setVal(tr.children("td").eq(4), table[i-1].reverseFeedback$); |
| | | setVal(tr.children("td").eq(5), table[i-1].motorOverload$); |
| | | setVal(tr.children("td").eq(6), table[i-1].lineEndHasStock$); |
| | | setVal(tr.children("td").eq(7), table[i-1].inConveyLineCardTrayAlarm$); |
| | | setVal(tr.children("td").eq(8), table[i-1].outConveyLineCardTrayAlarm$); |
| | | setVal(tr.children("td").eq(9), table[i-1].pakMk); |
| | | setVal(tr.children("td").eq(2), table[i-1].taskAddress); |
| | | setVal(tr.children("td").eq(3), table[i-1].distAddress); |
| | | setVal(tr.children("td").eq(4), table[i-1].completeTaskNo); |
| | | setVal(tr.children("td").eq(5), table[i-1].lev); |
| | | setVal(tr.children("td").eq(6), table[i-1].pakMk); |
| | | setVal(tr.children("td").eq(7), table[i-1].shuttleNo); |
| | | setVal(tr.children("td").eq(8), table[i-1].token); |
| | | } |
| | | } else if (res.code === 403){ |
| | | window.location.href = baseUrl+"/login"; |
| | |
| | | http.post(baseUrl+"/lift/operator/lift", { |
| | | liftNo: $('input[name="liftSelect"]:checked').val(), |
| | | liftTaskMode: liftTaskMode, |
| | | lev: $("#liftLev").val() |
| | | lev: $("#liftLev").val(), |
| | | sourceStaNo: $("#sourceStaNo").val(), |
| | | staNo: $("#staNo").val() |
| | | }, function (res) { |
| | | layer.msg(res.msg, {icon: 1}); |
| | | }); |
| | |
| | | liftOutputDom.scrollTop = liftOutputDom.scrollHeight; |
| | | } |
| | | |
| | | // 详情操作 ------------------------------------------------------------------------- |
| | | var layerDetl; |
| | | $(document).on('dblclick ','#lift-msg-table tr', function () { |
| | | var liftNo = $(this).children("td").eq(0).html(); |
| | | if (liftNo !== null && liftNo !== "") { |
| | | layerDetl = layer.open({ |
| | | type: 1, |
| | | title: false, |
| | | shadeClose: true, |
| | | offset: 'rt', |
| | | anim: 5, |
| | | shade: [0], |
| | | area: ['340px', '255px'], |
| | | closeBtn: 0, |
| | | content: $("#lift-detl"), |
| | | success: function(layero, index){ |
| | | $.ajax({ |
| | | url: baseUrl+ "/lift/table/lift/msg", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'POST', |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | var table = res.data; |
| | | for (var i=1;i<=table.length;i++){ |
| | | if (liftNo == table[i-1].liftNo) { |
| | | $('#liftNo').val(liftNo); |
| | | $('#workNo').val(table[i-1].workNo); |
| | | $('#pakMk').val(table[i-1].pakMk); |
| | | $('#token').val(table[i-1].token); |
| | | } |
| | | } |
| | | } else if (res.code === 403){ |
| | | window.location.href = baseUrl+"/login"; |
| | | } else { |
| | | console.log(res.msg); |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | end: function () { |
| | | $('#liftNo').val(""); |
| | | $('#workNo').val(""); |
| | | $('#pakMk').val(""); |
| | | $('#token').val(""); |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | |
| | | $(document).on('click ','#cancel', function () { |
| | | $('#liftNo').val(""); |
| | | $('#workNo').val(""); |
| | | $('#pakMk').val(""); |
| | | $('#token').val(""); |
| | | layer.close(layerDetl); |
| | | }) |
| | | |
| | | </script> |