#
LSH
2023-03-14 c745f2b1e51b3f4054d338d4b79f1b7ec2478380
src/main/webapp/views/ste.html
@@ -24,27 +24,7 @@
                    <div data-steNo="1" class="ste-command-item">
                        <label>1#</label>
                        <button class="demoBtn pos-btn">数据维护</button>
                        <button id="mode-1" class="demoBtn mode-btn" > - </button>
                    </div>
                    <div data-steNo="2" class="ste-command-item">
                        <label>2#</label>
                        <button class="demoBtn pos-btn">数据维护</button>
                        <button id="mode-2" class="demoBtn mode-btn" > - </button>
                    </div>
                    <div data-steNo="3" class="ste-command-item">
                        <label>3#</label>
                        <button class="demoBtn pos-btn">数据维护</button>
                        <button id="mode-3" class="demoBtn mode-btn" > - </button>
                    </div>
                    <div data-steNo="4" class="ste-command-item">
                        <label>4#</label>
                        <button class="demoBtn pos-btn">数据维护</button>
                        <button id="mode-4" class="demoBtn mode-btn" > - </button>
                    </div>
                    <div data-steNo="5" class="ste-command-item">
                        <label>5#</label>
                        <button class="demoBtn pos-btn">数据维护</button>
                        <button id="mode-5" class="demoBtn mode-btn" > - </button>
                        <button id="mode-1" class="demoBtn mode-btn" >设备信息</button>
                    </div>
                </div>
                <!-- 堆垛机状态位信息 -->
@@ -109,10 +89,6 @@
                        <span class="select-title">穿梭车号</span>
                        <div class="select-container">
                            <label><input type="radio" name="steSelect" value="1" checked>&nbsp;1号穿梭车</label>
                            <label><input type="radio" name="steSelect" value="2">&nbsp;2号穿梭车</label>
                            <label><input type="radio" name="steSelect" value="3">&nbsp;3号穿梭车</label>
                            <label><input type="radio" name="steSelect" value="4">&nbsp;4号穿梭车</label>
                            <label><input type="radio" name="steSelect" value="5">&nbsp;5号穿梭车</label>
                        </div>
                    </div>
                </div>
@@ -123,21 +99,21 @@
                        <div class="button-group">
                            <button class="item" onclick="steOperator(99)">联机</button>
                            <button class="item" onclick="steOperator(100)">脱机</button>
                            <button class="item" onclick="steOperator(2)">向左出库</button>
                            <button class="item" onclick="steOperator(1)">向右出库</button>
                            <button class="item" onclick="steOperator(4)">从左入库</button>
                            <button class="item" onclick="steOperator(2)">向左出库</button>
                            <button class="item" onclick="steOperator(3)">从右入库</button>
                            <button class="item" onclick="steOperator(4)">从左入库</button>
                            <button class="item" onclick="steOperator(5)">左移库</button>
                            <button class="item" onclick="steOperator(6)">右移库</button>
                            <button class="item" onclick="steOperator(8)">去左端</button>
                            <button class="item" onclick="steOperator(7)">去右端</button>
                            <button class="item" onclick="steOperator(10)">左待机</button>
                            <button class="item" onclick="steOperator(8)">去左端</button>
                            <button class="item" onclick="steOperator(9)">右待机</button>
                            <button class="item" onclick="steOperator(10)">左待机</button>
<!--                            <button class="item" onclick="steOperator(11)">左搬移</button>-->
<!--                            <button class="item" onclick="steOperator(12)">右搬移</button>-->
                            <button class="item" onclick="steOperator(13)">左充电</button>
                            <button class="item" onclick="steOperator(14)">右充电</button>
                            <button class="item" onclick="steOperator(17)">断开充电</button>
<!--                            <button class="item" onclick="steOperator(13)">左充电</button>-->
<!--                            <button class="item" onclick="steOperator(14)">右充电</button>-->
<!--                            <button class="item" onclick="steOperator(17)">断开充电</button>-->
<!--                            <button class="item" onclick="steOperator(14)">左盘点</button>-->
<!--                            <button class="item" onclick="steOperator(15)">右盘点</button>-->
                            <button class="item" onclick="steOperator(16)">任务完成</button>
@@ -202,7 +178,331 @@
                <button class="form-button" id="save">保存</button>
                <button class="form-button" id="cancel" style="background-color: #D0D0D0">取消</button>
            </div>
        </di>
        </div>
    </div>
    <div id="ste-detl2" style="display: none">
        <div style="width: 1400px">
            <div style="float:left;margin:  10px 10px 10px 10px; padding: 10px 10px 10px 10px;border: black;border-width: 3px;border-style:dotted">
                <div class="form-item" style="text-align: center">
                    <label>穿梭车异常</label>
                </div>
                <div class="form-item">
                    <label class="form-label">穿梭车号:</label>
                    <div class="form-input">
                        <input id="steNo1" name="steNo" class="layui-input" lay-verify="required|number" autocomplete="off" disabled="disabled" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">升降超时报警:</label>
                    <div class="form-input">
                        <input id="liftErr" name="liftErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">入库取空报警:</label>
                    <div class="form-input">
                        <input id="inFetchErr" name="inFetchErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">出库取空报警:</label>
                    <div class="form-input">
                        <input id="outFetchErr" name="outFetchErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">防撞保护:</label>
                    <div class="form-input">
                        <input id="antiErr" name="antiErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">升降接近开关故障:</label>
                    <div class="form-input">
                        <input id="liftSwitchErr" name="liftSwitchErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">轨道检测报警:</label>
                    <div class="form-input">
                        <input id="trackErr" name="trackErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">设备运行超时报警:</label>
                    <div class="form-input">
                        <input id="timeoutErr" name="timeoutErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">通信错误报警:</label>
                    <div class="form-input">
                        <input id="connectErr" name="connectErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">设备急停:</label>
                    <div class="form-input">
                        <input id="emergencyErr" name="emergencyErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">任务类型缺失:</label>
                    <div class="form-input">
                        <input id="taskTypeErr" name="taskTypeErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">任务号缺失:</label>
                    <div class="form-input">
                        <input id="taskNoErr" name="taskNoErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">运行中有新任务:</label>
                    <div class="form-input">
                        <input id="newTaskErr" name="newTaskErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">故障中有任务:</label>
                    <div class="form-input">
                        <input id="errTaskErr" name="errTaskErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">运行中停止:</label>
                    <div class="form-input">
                        <input id="stopErr" name="stopErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">脱机模式下有任务:</label>
                    <div class="form-input">
                        <input id="offlineTaskErr" name="offlineTaskErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">条件未满足启动任务:</label>
                    <div class="form-input">
                        <input id="startTaskErr" name="startTaskErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">低电压时有任务:</label>
                    <div class="form-input">
                        <input id="voltageTaskErr" name="voltageTaskErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">设备故障标志位:</label>
                    <div class="form-input">
                        <input id="devpErr" name="devpErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
            </div>
            <div style="float:left;margin:  10px 10px 10px 10px; padding: 10px 10px 10px 10px;border: black;border-width: 3px;border-style:dotted">
                <div class="form-item" style="text-align: center">
                    <label>穿梭车提示信息</label>
                </div>
                <div class="form-item">
                    <label class="form-label">联机状态:</label>
                    <div class="form-input">
                        <input id="online" name="online" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">不在轨道上:</label>
                    <div class="form-input">
                        <input id="notOnTrack" name="notOnTrack" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">低电量提醒:</label>
                    <div class="form-input">
                        <input id="lowVoltage" name="lowVoltage" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">亏电中:</label>
                    <div class="form-input">
                        <input id="electricityLoss" name="electricityLoss" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">强制行走启动:</label>
                    <div class="form-input">
                        <input id="forcedTravel" name="forcedTravel" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">演示模式开启:</label>
                    <div class="form-input">
                        <input id="demoMode" name="demoMode" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">充电刷已接通:</label>
                    <div class="form-input">
                        <input id="brushConnect" name="brushConnect" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">任务中禁止手动:</label>
                    <div class="form-input">
                        <input id="taskManualForbid" name="taskManualForbid" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">联机中禁止手动:</label>
                    <div class="form-input">
                        <input id="onlineManualForbid" name="onlineManualForbid" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">设备急停中:</label>
                    <div class="form-input">
                        <input id="devpEmergency" name="devpEmergency" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">任务中断中:</label>
                    <div class="form-input">
                        <input id="taskInterrupt" name="taskInterrupt" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">任务已清除:</label>
                    <div class="form-input">
                        <input id="taskClear" name="taskClear" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">任务确认已超时:</label>
                    <div class="form-input">
                        <input id="taskConfirmTimeout" name="taskConfirmTimeout" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">充电中有任务:</label>
                    <div class="form-input">
                        <input id="taskWithCharge" name="taskWithCharge" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
            </div>
            <div style="float:left;margin:  10px 10px 10px 10px; padding: 10px 10px 10px 10px;border: black;border-width: 3px;border-style:dotted">
                <div class="form-item" style="text-align: center">
                    <label>任务信息</label>
                </div>
                <div class="form-item">
                    <label class="form-label">入库任务中:</label>
                    <div class="form-input">
                        <input id="pakInTask" name="pakInTask" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">出库任务中:</label>
                    <div class="form-input">
                        <input id="pakOutTask" name="pakOutTask" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">移库任务中:</label>
                    <div class="form-input">
                        <input id="pakMoveTask" name="pakMoveTask" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">回原点任务中:</label>
                    <div class="form-input">
                        <input id="goHpTask" name="goHpTask" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">去反原点任务中:</label>
                    <div class="form-input">
                        <input id="goOHpTask" name="goOHpTask" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">去原点避让位:</label>
                    <div class="form-input">
                        <input id="goHpAvoid" name="goHpAvoid" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">去反原点避让位:</label>
                    <div class="form-input">
                        <input id="goOHpAvoid" name="goOHpAvoid" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">入库取空结束:</label>
                    <div class="form-input">
                        <input id="pakInEmpty" name="pakInEmpty" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">入库正常结束:</label>
                    <div class="form-input">
                        <input id="pakInFinish" name="pakInFinish" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">出库取空结束:</label>
                    <div class="form-input">
                        <input id="pakOutEmpty" name="pakOutEmpty" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">出库正常结束:</label>
                    <div class="form-input">
                        <input id="pakOutFinish" name="pakOutFinish" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">去原点避让完成:</label>
                    <div class="form-input">
                        <input id="goHpAvoidFinish" name="goHpAvoidFinish" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">去反原点避让完成:</label>
                    <div class="form-input">
                        <input id="goOHpAvoidFinish" name="goOHpAvoidFinish" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">去原点避让完成:</label>
                    <div class="form-input">
                        <input id="goHpAvoidErr" name="goHpAvoidErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">去反原点避让完成:</label>
                    <div class="form-input">
                        <input id="goOHpAvoidErr" name="goOHpAvoidErr" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
            </div>
            <div style="float:left;margin:  10px 10px 10px 10px; padding: 10px 10px 10px 10px;border: black;border-width: 3px;border-style:dotted">
                <div class="form-item" style="text-align: center">
                    <label>状态信息</label>
                </div>
                <div class="form-item">
                    <label class="form-label">联机模式:</label>
                    <div class="form-input">
                        <input id="autoMode" name="autoMode" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
                <div class="form-item">
                    <label class="form-label">电压过低:</label>
                    <div class="form-input">
                        <input id="voltageLow" name="voltageLow" class="layui-input" autocomplete="off" readonly>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>
@@ -281,33 +581,106 @@
        })
    })
    var layerIdx0;
    $(document).on('click ','.mode-btn', function () {
        let steNo = Number($(this).parent().attr("data-steNo"));
        layer.confirm("改变" + steNo + ' 号穿梭车在线状态吗?', function(){
            var index = layer.load(1, {
                shade: [0.1,'#fff']
            });
            $.ajax({
                url: baseUrl+ "/ste/mode/switch",
                headers: {'token': localStorage.getItem('token')},
                data: {
                    steNo: Number(steNo),
                    password: 'root'
                },
                method: 'POST',
                success: function (res) {
                    layer.close(index);
                    if (res.code === 200){
                        layer.msg(res.msg, {icon: 1});
                    } else if (res.code === 403){
                        window.location.href = baseUrl+"/login";
                    }  else {
                        layer.msg(res.msg, {icon: 2});
                    }
                }
            });
        });
        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: $("#ste-detl2"),
            success: function(layero, index){
                http.get(baseUrl+ "/ste/sensor/detl/"+steNo, null, function (res) {
                    $('#steNo1').val(res.data.steNo);
                    $('#liftErr').val(res.data.liftErr);
                    $('#inFetchErr').val(res.data.inFetchErr);
                    $('#outFetchErr').val(res.data.outFetchErr);
                    $('#antiErr').val(res.data.antiErr);
                    $('#liftSwitchErr').val(res.data.liftSwitchErr);
                    $('#trackErr').val(res.data.trackErr);
                    $('#timeoutErr').val(res.data.timeoutErr);
                    $('#connectErr').val(res.data.connectErr);
                    $('#emergencyErr').val(res.data.emergencyErr);
                    $('#taskTypeErr').val(res.data.taskTypeErr);
                    $('#taskNoErr').val(res.data.taskNoErr);
                    $('#newTaskErr').val(res.data.newTaskErr);
                    $('#errTaskErr').val(res.data.errTaskErr);
                    $('#stopErr').val(res.data.stopErr);
                    $('#offlineTaskErr').val(res.data.offlineTaskErr);
                    $('#startTaskErr').val(res.data.startTaskErr);
                    $('#voltageTaskErr').val(res.data.voltageTaskErr);
                    $('#devpErr').val(res.data.devpErr);
                    $('#online').val(res.data.online);
                    $('#notOnTrack').val(res.data.notOnTrack);
                    $('#lowVoltage').val(res.data.lowVoltage);
                    $('#electricityLoss').val(res.data.electricityLoss);
                    $('#forcedTravel').val(res.data.forcedTravel);
                    $('#demoMode').val(res.data.demoMode);
                    $('#brushConnect').val(res.data.brushConnect);
                    $('#taskManualForbid').val(res.data.taskManualForbid);
                    $('#onlineManualForbid').val(res.data.onlineManualForbid);
                    $('#devpEmergency').val(res.data.devpEmergency);
                    $('#taskInterrupt').val(res.data.taskInterrupt);
                    $('#taskClear').val(res.data.taskClear);
                    $('#taskConfirmTimeout').val(res.data.taskConfirmTimeout);
                    $('#taskWithCharge').val(res.data.taskWithCharge);
                    $('#pakInTask').val(res.data.pakInTask);
                    $('#pakOutTask').val(res.data.pakOutTask);
                    $('#pakMoveTask').val(res.data.pakMoveTask);
                    $('#goHpTask').val(res.data.goHpTask);
                    $('#goOHpTask').val(res.data.goOHpTask);
                    $('#goHpAvoid').val(res.data.goHpAvoid);
                    $('#goOHpAvoid').val(res.data.goOHpAvoid);
                    $('#pakInEmpty').val(res.data.pakInEmpty);
                    $('#pakInFinish').val(res.data.pakInFinish);
                    $('#pakOutEmpty').val(res.data.pakOutEmpty);
                    $('#pakOutFinish').val(res.data.pakOutFinish);
                    $('#goHpAvoidFinish').val(res.data.goHpAvoidFinish);
                    $('#goOHpAvoidFinish').val(res.data.goOHpAvoidFinish);
                    $('#goHpAvoidErr').val(res.data.goHpAvoidErr);
                    $('#goOHpAvoidErr').val(res.data.goOHpAvoidErr);
                    $('#autoMode').val(res.data.autoMode);
                    $('#voltageLow').val(res.data.voltageLow);
                })
            },
            end: function () {
                $('#steNo').val("");
            }
        })
    })
    // $(document).on('click ','.mode-btn', function () {
    //     let steNo = Number($(this).parent().attr("data-steNo"));
    //     layer.confirm("改变" + steNo + ' 号穿梭车在线状态吗?', function(){
    //         var index = layer.load(1, {
    //             shade: [0.1,'#fff']
    //         });
    //         $.ajax({
    //             url: baseUrl+ "/ste/mode/switch",
    //             headers: {'token': localStorage.getItem('token')},
    //             data: {
    //                 steNo: Number(steNo),
    //                 password: 'root'
    //             },
    //             method: 'POST',
    //             success: function (res) {
    //                 layer.close(index);
    //                 if (res.code === 200){
    //                     layer.msg(res.msg, {icon: 1});
    //                 } else if (res.code === 403){
    //                     window.location.href = baseUrl+"/login";
    //                 }  else {
    //                     layer.msg(res.msg, {icon: 2});
    //                 }
    //             }
    //         });
    //     });
    // })
@@ -345,7 +718,7 @@
                        steStateTableFullRows = table.length;
                    }
                    for (let i=1;i<=table.length;i++){
                        $("#mode-"+table[i-1].steNo).html(table[i-1].statusVal===0?'联机':'脱机');
                        // $("#mode-"+table[i-1].steNo).html(table[i-1].statusVal===0?'联机':'脱机');
                        let tr = tableEl.find("tr").eq(i);
                        setVal(tr.children("td").eq(0), table[i-1].steNo);
                        setVal(tr.children("td").eq(1), table[i-1].statusType);