#
luxiaotao1123
2021-05-28 16437fe3148e09023d64efc48b49e60c172ec107
src/main/webapp/views/crn.html
@@ -44,13 +44,21 @@
<!-- 日志监控板 -->
<div class="log-board">
    <!-- 执行命令 -->
    <!-- 执行命令 -->
    <div class="command-log">
        <h2>执行中的命令</h2>
        <div class="crn-command-item">
            <label>1#</label>
            <button id="demoBtn-1" class="demoBtn" onclick="demoSwitch(this.id)">演示</button>
            <button id="demoBtn-1" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
            <!--            <span>&nbsp;</span>-->
            <input id="crn1" disabled="disabled">
        </div>
        <div class="crn-command-item">
            <label>2#</label>
            <button id="demoBtn-2" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
            <!--            <span>&nbsp;</span>-->
            <input id="crn2" disabled="disabled">
        </div>
    </div>
    <!-- 堆垛机状态位信息 -->
@@ -64,13 +72,13 @@
                    <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>
@@ -90,14 +98,13 @@
                <th>目标站</th>
                <th>源库位</th>
                <th>目标库位</th>
                <th>异常</th>
                <th>走行速度(m/min)</th>
                <th>升降速度(m/min)</th>
                <th>叉牙速度(m/min)</th>
                <th>走行距离(Km)</th>
                <th>升降距离(Km)</th>
                <th>走行时长(H)</th>
                <th>升降时长(H)</th>
                <th>走行距离(m)</th>
                <th>升降距离(m)</th>
                <th>走行时长(s)</th>
                <th>升降时长(s)</th>
            </tr>
        </thead>
        <tbody>
@@ -179,9 +186,9 @@
                <button class="item" onclick="take()">出库</button>
                <button class="item" onclick="stockMove()">库位转移</button>
                <button class="item" onclick="siteMove()">站到站</button>
                <button class="item" onclick="bacOrigin()">回原点</button>
                <button class="item" onclick="reverseOrigin()">反原点</button>
                <button class="item" onclick="coorMove()">坐标移行</button>
<!--                <button class="item" onclick="bacOrigin()">回原点</button>-->
<!--                <button class="item" onclick="reverseOrigin()">反原点</button>-->
<!--                <button class="item" onclick="coorMove()">坐标移行</button>-->
                <button class="item" onclick="taskComplete()">任务完成</button>
<!--                <button class="item" onclick="pause()">暂停</button>-->
<!--                <button class="item" onclick="boot()">启动</button>-->
@@ -223,6 +230,7 @@
    setInterval(function () {
        getCrnOutput();
        operatorBlockShow();
        initDemo();
    },500);
    // 判断手动操作模块是否可用
@@ -281,13 +289,13 @@
                        setVal(tr.children("td").eq(3), table[i-1].loading);
                        setVal(tr.children("td").eq(4), table[i-1].bay);
                        setVal(tr.children("td").eq(5), table[i-1].lev);
                        setVal(tr.children("td").eq(6), table[i-1].xorigin);
                        setVal(tr.children("td").eq(7), table[i-1].yorigin);
                        setVal(tr.children("td").eq(6), table[i-1].liftPos);
                        setVal(tr.children("td").eq(7), table[i-1].sitePos);
                        setVal(tr.children("td").eq(8), table[i-1].forkOffset);
                        setVal(tr.children("td").eq(9), table[i-1].xlocation);
                        setVal(tr.children("td").eq(10), table[i-1].ylocation);
                        setVal(tr.children("td").eq(11), table[i-1].stop);
                        setVal(tr.children("td").eq(12), table[i-1].warnCode);
                        setVal(tr.children("td").eq(9), table[i-1].alarm1);
                        setVal(tr.children("td").eq(10), table[i-1].alarm2);
                        setVal(tr.children("td").eq(11), table[i-1].alarm3);
                        setVal(tr.children("td").eq(12), table[i-1].alarm4);
                    }
                } else if (res.code === 403){
                    window.location.href = baseUrl+"/login";
@@ -321,14 +329,13 @@
                        setVal(tr.children("td").eq(4), table[i-1].staNo);
                        setVal(tr.children("td").eq(5), table[i-1].sourceLocNo);
                        setVal(tr.children("td").eq(6), table[i-1].locNo);
                        setVal(tr.children("td").eq(7), table[i-1].error);
                        setVal(tr.children("td").eq(8), table[i-1].xspeed);
                        setVal(tr.children("td").eq(9), table[i-1].yspeed);
                        setVal(tr.children("td").eq(10), table[i-1].zspeed);
                        setVal(tr.children("td").eq(11), table[i-1].xdistance);
                        setVal(tr.children("td").eq(12), table[i-1].ydistance);
                        setVal(tr.children("td").eq(13), table[i-1].xduration);
                        setVal(tr.children("td").eq(14), table[i-1].yduration);
                        setVal(tr.children("td").eq(7), table[i-1].xspeed);
                        setVal(tr.children("td").eq(8), table[i-1].yspeed);
                        setVal(tr.children("td").eq(9), table[i-1].zspeed);
                        setVal(tr.children("td").eq(10), table[i-1].xdistance);
                        setVal(tr.children("td").eq(11), table[i-1].ydistance);
                        setVal(tr.children("td").eq(12), table[i-1].xduration);
                        setVal(tr.children("td").eq(13), table[i-1].yduration);
                    }
                } else if (res.code === 403){
                    window.location.href = baseUrl+"/login";
@@ -532,7 +539,6 @@
                "       <td></td>\n" +
                "       <td></td>\n" +
                "       <td></td>\n" +
                "       <td></td>\n" +
                "     </tr>\n";
        }
        $('#crn-msg-table tbody').after(html);
@@ -544,15 +550,45 @@
        crnOutputDom.scrollTop = crnOutputDom.scrollHeight;
    }
    var crnDemoData;
    function initDemo() {
        $.ajax({
            url: baseUrl+"/crn/demo/status",
            async: false,
            method: 'GET',
            success: function (res) {
                if (res.code === 200) {
                    crnDemoData = res.data;
                    crnDemoData.forEach(function (e) {
                        $("#demoBtn-"+e.crnNo).html(e.demo?'停止':'演示');
                    })
                } else if (res.code === 403){
                    parent.location.href = baseUrl+"/login";
                }  else {
                    layer.msg(res.msg, {icon: 2});
                }
            }
        })
    }
    function demoSwitch(el) {
        var crnId = el.split("-")[1];
        layer.prompt({title: '请输入口令,并开始'+crnId+"号堆垛机演示", formType: 1, shadeClose: true}, function (pass, idx) {
            layer.close(idx);
            doDemo(crnId, pass); // 停止wcs系统
        var opt;
        if (crnDemoData == null) {
            initDemo();
        }
        for (var i = 0; i<crnDemoData.length; i++) {
            if (Number(crnDemoData[i].crnNo) === Number(crnId)) {
                opt = !crnDemoData[i].demo;
            }
        }
        layer.confirm(crnId + ' 号堆垛机确定'+ (opt?'开始':'停止') + '演示吗?', function(){
            doDemo(crnId, 'root', opt); // 停止wcs系统
        });
    }
    function doDemo(crnId, password) {
    function doDemo(crnId, password, opt) {
        // 加载tips
        var index = layer.load(1, {
            shade: [0.1,'#fff']
@@ -563,7 +599,8 @@
            // async: false,
            data: {
                crnId: Number(crnId),
                password: password
                password: password,
                opt: opt
            },
            method: 'POST',
            success: function (res) {