Junjie
2025-11-19 40d95599c1ac6ef89d465e031132d9c627a7f0bc
src/main/webapp/views/console.html
@@ -40,43 +40,14 @@
                    </div>
                </div>
            </div>
            <!-- 堆垛机状态 -->
            <div class="machine-status">
                <div class="body-head">堆垛机状态</div>
                <div class="state">
                    <span>堆垛机 1</span>
                    <span class="state-ss machine-put-flag   ">入库</span>
                </div>
                <div class="state">
                    <span>堆垛机 2</span>
                    <span class="state-ss machine-auto-flag   ">自动</span>
                </div>
                <div class="button"><span>所有状态</span></div>
                <div class="button item-group">
                    <span class="machine-put-flag">入库</span>
                    <span class="machine-take-flag">出库</span>
                    <span class="machine-stock-move-flag">库到库</span>
                    <span class="machine-site-move-flag">站到站</span>
                    <span class="machine-p-move-flag">PToP</span>
                    <span class="machine-error-flag">异常</span>
                    <span class="machine-auto-flag">自动</span>
                    <span class="machine-unauto-flag">非自动/手动</span>
                </div>
            </div>
            <div class="line-status">
                <div class="body-head">输送线状态</div>
                <div class="state states">
                    <span>运输线总数</span>
                    <span id="line-total" class="line-ss"></span>
                </div>
                <div class="button"><span>所有状态</span></div>
                <div class="button item-group">
                    <span class="site-auto-run-id">自动+有物+ID</span>
                    <span class="site-auto-run">自动+有物</span>
                    <span class="site-auto-id">自动+ID</span>
                    <span class="site-auto">自动</span>
                    <span class="site-unauto">非自动/手动</span>
                <div class="body-head">出入库模式</div>
                <div class="button" onclick="switchIoMode()"><span class="site-auto-id">点击切换模式</span></div>
                <div class="button" style="margin-top: 10px;">
                    <span>当前模式:</span>
                    <span id="ioMode-in" class="site-auto">入库模式</span>
                    <span id="ioMode-out" class="site-auto-run">出库模式</span>
                    <span id="ioMode-none" class="site-unauto">未知模式</span>
                </div>
            </div>
            <div class="bar-code">
@@ -337,6 +308,7 @@
    setInterval(function () {
        getCodeData();
        renderBarCode();
        getIoModeInfo()
    }, 1000)
    var tData = [],tData1 = [],tData2 = [],tData3 = [];
    function getCodeData() {
@@ -344,7 +316,6 @@
            url: baseUrl + '/console/barcode/output/site',
            method: 'GET',
            success: function (res) {
                console.log(res)
                if (res.code === 200) {
                    tData = eval(res.data);
                    if (tData.length <= 5) {
@@ -368,6 +339,7 @@
            }
        })
    }
    function renderBarCode() {
        for (var i = 0; i < tData1.length; i++) {
            var str1 = '<li><span>' + tData1[i].barcode + '</span><span class="right">' + tData1[i].time + '</span></li>'
@@ -381,6 +353,56 @@
            var str3 = '<li><span>' + tData3[k].barcode + '</span><span class="right">' + tData3[k].time + '</span></li>'
            $('#barcode3').append(str3)
        }
    }
    function getIoModeInfo() {
        $.ajax({
            url: baseUrl + "/console/getIoMode",
            headers: {'token': localStorage.getItem('token')},
            method: 'GET',
            success: function (res) {
                if (res.code === 200){
                    let ioModeData = res.data;
                    if (ioModeData == 1) {
                        $("#ioMode-none").hide()
                        $("#ioMode-in").show()
                        $("#ioMode-out").hide()
                    }else if(ioModeData == 2) {
                        $("#ioMode-none").hide()
                        $("#ioMode-in").hide()
                        $("#ioMode-out").show()
                    }else {
                        $("#ioMode-none").show()
                        $("#ioMode-in").hide()
                        $("#ioMode-out").hide()
                    }
                } else if (res.code === 403){
                    window.location.href = baseUrl+"/login";
                }  else {
                    console.log(res.msg);
                }
            }
        });
    }
    function switchIoMode() {
        $.ajax({
            url: baseUrl + "/console/switchIoMode",
            headers: {
                'token': localStorage.getItem('token')
            },
            data: {},
            method: 'post',
            success: function (res) {
                if (res.code === 200){
                    layer.msg(res.msg)
                } else if (res.code === 403){
                    window.location.href = baseUrl+"/login";
                }  else {
                    layer.msg(res.msg)
                }
            }
        });
    }
</script>
<script type="text/javascript">
@@ -461,12 +483,14 @@
    getSitesInfo();
    getCrnInfo();
    getSystemRunningStatus();
    getDevpTaskCount();
    getBarcodeInfo();
    getScaleInfo();
    // 实时访问
    setInterval(function () {
        getCrnInfo();
        getSystemRunningStatus();
        getDevpTaskCount();
        getBarcodeInfo();
        getScaleInfo();
    }, 1000);
@@ -550,6 +574,26 @@
        });
    }
    function getDevpTaskCount() {
        $.ajax({
            url: baseUrl + "/console/devpTaskCount",
            headers: {'token': localStorage.getItem('token')},
            method: 'POST',
            success: function (res) {
                if (res.code === 200) {
                    let devpTaskStackOver = res.data.devpTaskStackOver
                    let devpWorkingCount = res.data.devpWorkingCount
                    $("#devpTaskStackOver").html(devpTaskStackOver);
                    $("#devpWorkingCount").html(devpWorkingCount);
                } else if (res.code === 403) {
                    parent.location.href = baseUrl + "/login";
                } else {
                    console.log(res.msg);
                }
            }
        });
    }
    // 输送设备实时数据获取
    function getSitesInfo() {
        $.ajax({
@@ -595,24 +639,40 @@
                    for (var i = 0; i < crns.length; i++) {
                        var crnEl = $("#crn-" + crns[i].crnId);
                        crnEl.attr("class", "machine " + crns[i].crnStatus);
                        var unit = 0;//($('.item').eq(0).width() + 13) / 2;
                        var unit = 35;//($('.item').eq(0).width() + 13) / 2;
                        if (crns[i].bay < 0 || crns[i].bay === -2) {
                            crns[i].bay = 1
                        }
                        // crnEl.animate({left: (crns[i].bay * unit) + 'px'}, 1000);
                        // crns[i].bay = 15;
                        var offSet = 800;
                        // switch (i) {
                        //     case 0:
                        //     case 1:
                        //     case 2:
                        //     case 3:
                        //         unit = 35;
                        //         offSet = 500;
                        //         break;
                        //     case 5:
                        //         unit = 124;
                        //         offSet = 550;
                        //         break;
                        //     case 4:
                        //     case 6:
                        //         unit = 62;
                        //         offSet = 550;
                        //         break;
                        // }
                        var offSet = 0;
                        unit = 60;
                        offSet = 550;
                        crnEl.animate({left: offSet + 'px'}, 1000);
                        if(crns[i].bay === 1){
                            crnEl.animate({left: offSet + 'px'}, 1000);
                        } else {
                            crnEl.animate({left: (offSet - unit + (crns[i].bay * unit)) + 'px'}, 1000);
                        }
                        // if(crns[i].bay === 1){
                        //     crnEl.animate({left: offSet + 'px'}, 1000);
                        // } else {
                        //     crnEl.animate({left: (offSet - unit + (crns[i].bay * unit)) + 'px'}, 1000);
                        // }
                    }
                } else if (res.code === 403) {