#
Junjie
2023-08-30 cdca466c533197157f3255b77fbdb4aac89be064
src/main/webapp/views/shuttle.html
@@ -20,36 +20,34 @@
        <div style="padding: 10px;height: 100%">
            <!-- 日志监控板 -->
            <div class="log-board">
                <div class="command-log" id="commandLogId" style="width: 5%;">
<!--                    <div data-shuttleNo="1" class="shuttle-command-item">-->
<!--                        <label>1#</label>-->
<!--                        <button class="demoBtn pos-btn">数据维护</button>-->
<!--                        <button id="mode-1" class="demoBtn mode-btn" >设备信息</button>-->
<!--                    </div>-->
                </div>
<!--                <div class="command-log" id="commandLogId" style="width: 5%;">-->
<!--&lt;!&ndash;                    <div data-shuttleNo="1" class="shuttle-command-item">&ndash;&gt;-->
<!--&lt;!&ndash;                        <label>1#</label>&ndash;&gt;-->
<!--&lt;!&ndash;                        <button class="demoBtn pos-btn">数据维护</button>&ndash;&gt;-->
<!--&lt;!&ndash;                        <button id="mode-1" class="demoBtn mode-btn" >设备信息</button>&ndash;&gt;-->
<!--&lt;!&ndash;                    </div>&ndash;&gt;-->
<!--                </div>-->
                <!-- 堆垛机状态位信息 -->
                <div class="shuttle-state" style="width: 95%;">
                <div class="shuttle-state" style="width: 100%;">
                    <table id="shuttle-state-table">
                        <thead>
                            <tr>
                                <th>四向穿梭车</th>
                                <th>任务状态</th>
                                <th>小车状态</th>
                                <th>当前二维码</th>
                                <th>工作模式</th>
                                <th>实际库位</th>
                                <th>实际坐标</th>
                                <th>电量</th>
                                <th>电池温度</th>
                                <th>错误编号</th>
                                <th>plc输出状态IO-顶升位</th>
                                <th>plc输出状态IO-换向位</th>
                                <th>plc输出状态IO-抱闸位</th>
                                <th>plc输出状态IO-充电位</th>
                                <th>错误信息码</th>
                                <th>plc输入状态(光电有物)</th>
                                <th>当前或之前二维码</th>
                                <th>x偏移量</th>
                                <th>y偏移量</th>
                                <th>电压</th>
                                <th>模拟量</th>
                                <th>当前速度</th>
                                <th>负载状态</th>
                                <th>顶升位置</th>
                                <th>运行方向</th>
                                <th>运行方向2</th>
                                <th>充电状态</th>
                                <th>故障状态</th>
                                <th>故障码</th>
                                <th>管制状态</th>
                            </tr>
                        </thead>
                        <tbody>
@@ -64,16 +62,18 @@
                        <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>
                            <th>作业标记</th>
                            <th>库位号</th>
                            <th>当前楼层</th>
                            <th>当前库位</th>
                            <th>令牌</th>
                        </tr>
                    </thead>
                    <tbody>
@@ -91,9 +91,9 @@
                <!-- 设备任务选择 -->
                <div class="task-select">
                    <!-- 选择 -->
                    <div id="shuttle-select" class="operator-item">
                    <div id="shuttle-select" class="operator-item" style="width: 100%;">
                        <span class="select-title">四向穿梭车号</span>
                        <div class="select-container" id="shuttleRadioBoxId">
                        <div class="select-container" id="shuttleRadioBoxId" style="display: flex;flex-wrap: wrap;justify-content: center;align-items: center;">
<!--                            <label><input type="radio" name="shuttleSelect" value="1" checked>&nbsp;1号穿梭车</label>-->
                        </div>
                    </div>
@@ -118,8 +118,7 @@
                                        </div>
                                        <div style="margin-top: 10px;">
                                            <button class="item" onclick="shuttleOperator(1)">入库</button>
                                            <button class="item" onclick="shuttleOperator(2)">出库</button>
                                            <button class="item" onclick="shuttleOperator(18)">搬运货物</button>
                                            <button class="item" onclick="shuttleOperator(14)">移动到目标库位</button>
                                            <button class="item" onclick="shuttleOperator(16)">移动到提升机</button>
                                        </div>
@@ -134,50 +133,15 @@
                                        <div class="button-group">
                                            <button class="item" onclick="shuttleOperator(3)">托盘顶升</button>
                                            <button class="item" onclick="shuttleOperator(4)">托盘下降</button>
                                            <button class="item" onclick="shuttleOperator(5)">左移</button>
                                            <button class="item" onclick="shuttleOperator(6)">右移</button>
                                            <button class="item" onclick="shuttleOperator(7)">后移</button>
                                            <button class="item" onclick="shuttleOperator(8)">前移</button>
                                            <button class="item" onclick="shuttleOperator(9)">复位</button>
                                            <button class="item" onclick="shuttleOperator(10)">正方向(右)寻库位</button>
                                            <button class="item" onclick="shuttleOperator(11)">负方向(左)寻库位</button>
                                            <button class="item" onclick="shuttleOperator(12)">正方向(前)寻库位</button>
                                            <button class="item" onclick="shuttleOperator(13)">负方向(后)寻库位</button>
                                            <button class="item" onclick="shuttleOperator(15)">充电开关</button>
                                            <button class="item" onclick="shuttleOperator(9)">复位</button>
                                            <button class="item" onclick="shuttleOperator(21)">管制</button>
                                            <button class="item" onclick="shuttleOperator(22)">取消管制</button>
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div style="width: 20%;">
                                <div class="operator-item" style="height: auto;width: 100%;">
                                    <span class="select-title">设置配置参数</span>
                                    <div class="select-container" style="height: auto;padding: 30px 10px 10px 10px;">
                                        <div class="select-container-item">
                                            <span>运行速度</span>
                                            <label><input id="runSpeed" type="text" name="runSpeed" /></label>
                                        </div>
                                        <div class="select-container-item">
                                            <span>充电阈值</span>
                                            <label><input id="chargeLine" type="text" name="runSpeed" /></label>
                                        </div>
                                        <div>
                                            <button class="item" onclick="shuttleParamSave()">保存</button>
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div style="width: 15%;">
                                <div class="operator-item" style="height: auto;width: 100%;">
                                    <span class="select-title">配置参数</span>
                                    <div class="select-container" style="height: auto;padding: 30px 10px 10px 10px;">
                                        <div>运行速度:<span id="runSpeedText"></span></div>
                                        <div>充电阈值:<span id="chargeLineText"></span></div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </fieldset>
                </div>
@@ -208,6 +172,12 @@
                <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">
@@ -272,9 +242,10 @@
            shuttleNo: $('#shuttleNo').val(),
            workNo: $('#workNo').val(),
            pakMk: $('#pakMk').val(),
            token: $('#token').val(),
        }, function (res) {
            layer.msg("修改成功", {icon: 1,});
            layer.close(layerIdx);
            layer.close(layerDetl);
        })
    })
@@ -331,23 +302,21 @@
                        // $("#mode-"+table[i-1].shuttleNo).html(table[i-1].statusVal===0?'联机':'脱机');
                        let tr = tableEl.find("tr").eq(i);
                        setVal(tr.children("td").eq(0), table[i-1].shuttleNo);
                        setVal(tr.children("td").eq(1), table[i-1].status$);
                        setVal(tr.children("td").eq(2), table[i-1].busyStatus);
                        setVal(tr.children("td").eq(3), table[i-1].currentCode);
                        setVal(tr.children("td").eq(4), table[i-1].batteryPower);
                        setVal(tr.children("td").eq(5), table[i-1].batteryTemp);
                        setVal(tr.children("td").eq(6), table[i-1].errorCode);
                        setVal(tr.children("td").eq(7), table[i-1].plcOutputLift$);//顶升位
                        setVal(tr.children("td").eq(8), table[i-1].plcOutputTransfer$);//换向位
                        setVal(tr.children("td").eq(9), table[i-1].plcOutputBrake$);//抱闸位
                        setVal(tr.children("td").eq(10), table[i-1].plcOutputCharge$);//充电位
                        setVal(tr.children("td").eq(11), table[i-1].statusErrorCode);
                        setVal(tr.children("td").eq(12), table[i-1].plcInputStatus);
                        setVal(tr.children("td").eq(13), table[i-1].currentOrBeforeCode);
                        setVal(tr.children("td").eq(14), table[i-1].codeOffsetX);
                        setVal(tr.children("td").eq(15), table[i-1].codeOffsetY);
                        setVal(tr.children("td").eq(16), table[i-1].currentVoltage$);
                        setVal(tr.children("td").eq(17), table[i-1].currentAnalogValue);
                        setVal(tr.children("td").eq(1), table[i-1].protocolStatus$);
                        setVal(tr.children("td").eq(2), table[i-1].free$);
                        setVal(tr.children("td").eq(3), table[i-1].workingMode$);
                        setVal(tr.children("td").eq(4), table[i-1].point$);
                        setVal(tr.children("td").eq(5), table[i-1].point$$);
                        setVal(tr.children("td").eq(6), table[i-1].powerPercent$);
                        setVal(tr.children("td").eq(7), table[i-1].speed);
                        setVal(tr.children("td").eq(8), table[i-1].loadState$);
                        setVal(tr.children("td").eq(9), table[i-1].liftPosition$);
                        setVal(tr.children("td").eq(10), table[i-1].runDir$);
                        setVal(tr.children("td").eq(11), table[i-1].runDir2$);
                        setVal(tr.children("td").eq(12), table[i-1].chargState$);
                        setVal(tr.children("td").eq(13), table[i-1].errState$);
                        setVal(tr.children("td").eq(14), table[i-1].errCode);
                        setVal(tr.children("td").eq(15), table[i-1].suspendState$);
                    }
                } else if (res.code === 403){
                    window.location.href = baseUrl+"/login";
@@ -362,7 +331,7 @@
    function getShuttleMsgInfo() {
        let tableEl = $('#shuttle-msg-table');
        $.ajax({
            url: baseUrl+ "/shuttle/table/shuttle/msg",
            url: baseUrl+ "/shuttle/table/shuttle/state",
            headers: {'token': localStorage.getItem('token')},
            method: 'POST',
            success: function (res) {
@@ -375,18 +344,19 @@
                    for (var i=1;i<=table.length;i++){
                        var tr = tableEl.find("tr").eq(i);
                        setVal(tr.children("td").eq(0), table[i-1].shuttleNo);
                        setVal(tr.children("td").eq(1), table[i-1].workNo);
                        setVal(tr.children("td").eq(2), table[i-1].status);
                        setVal(tr.children("td").eq(3), table[i-1].sourceLocNo);
                        setVal(tr.children("td").eq(4), table[i-1].distLocNo);
                        setVal(tr.children("td").eq(5), table[i-1].currentLiftServoSpeed);
                        setVal(tr.children("td").eq(6), table[i-1].currentMoveServoSpeed);
                        setVal(tr.children("td").eq(7), table[i-1].currentLiftServoLoad);
                        setVal(tr.children("td").eq(8), table[i-1].currentMoveServoLoad);
                        setVal(tr.children("td").eq(9), table[i-1].pakMk);
                        setVal(tr.children("td").eq(10), table[i-1].locNo);
                        setVal(tr.children("td").eq(11), table[i-1].lev);
                        setVal(tr.children("td").eq(1), table[i-1].taskNo);
                        setVal(tr.children("td").eq(2), table[i-1].sourceLocNo);
                        setVal(tr.children("td").eq(3), table[i-1].locNo);
                        setVal(tr.children("td").eq(4), table[i-1].maxCellVoltage$);
                        setVal(tr.children("td").eq(5), table[i-1].minCellVoltage$);
                        setVal(tr.children("td").eq(6), table[i-1].voltage$);
                        setVal(tr.children("td").eq(7), table[i-1].chargeCycleTimes);
                        setVal(tr.children("td").eq(8), table[i-1].surplusQuantity);
                        setVal(tr.children("td").eq(9), table[i-1].countQuantity);
                        setVal(tr.children("td").eq(10), table[i-1].statusSum.mileage);
                        setVal(tr.children("td").eq(11), table[i-1].pakMk$);
                        setVal(tr.children("td").eq(12), table[i-1].currentLocNo);
                        setVal(tr.children("td").eq(13), table[i-1].token);
                        if (table[i-1].shuttleNo == parseInt($('input[name="shuttleSelect"]:checked').val())) {
                            $("#runSpeedText").text(table[i-1].runSpeed)
                            $("#chargeLineText").text(table[i-1].chargeLine + "%")
@@ -554,7 +524,7 @@
                content: $("#shuttle-detl"),
                success: function(layero, index){
                    $.ajax({
                        url: baseUrl+ "/shuttle/table/shuttle/msg",
                        url: baseUrl+ "/shuttle/table/shuttle/state",
                        headers: {'token': localStorage.getItem('token')},
                        method: 'POST',
                        success: function (res) {
@@ -563,8 +533,9 @@
                                for (var i=1;i<=table.length;i++){
                                    if (shuttleNo == table[i-1].shuttleNo) {
                                        $('#shuttleNo').val(shuttleNo);
                                        $('#workNo').val(table[i-1].workNo);
                                        $('#pakMk').val(table[i-1].pakMk);
                                        $('#workNo').val(table[i-1].taskNo);
                                        $('#pakMk').val(table[i-1].pakMk$);
                                        $('#token').val(table[i-1].token);
                                    }
                                }
                            } else if (res.code === 403){
@@ -579,6 +550,7 @@
                    $('#shuttleNo').val("");
                    $('#workNo').val("");
                    $('#pakMk').val("");
                    $('#token').val("");
                }
            })
        }
@@ -588,6 +560,7 @@
        $('#shuttleNo').val("");
        $('#workNo').val("");
        $('#pakMk').val("");
        $('#token').val("");
        layer.close(layerDetl);
    })