From c350b737713fe518c22036dfc9a2574bcafcb15c Mon Sep 17 00:00:00 2001
From: vincent <1341870251@qq.com>
Date: 星期二, 02 六月 2020 15:18:08 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/crn.html |  337 +++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 287 insertions(+), 50 deletions(-)

diff --git a/src/main/webapp/views/crn.html b/src/main/webapp/views/crn.html
index 02f6e9d..6eb1082 100644
--- a/src/main/webapp/views/crn.html
+++ b/src/main/webapp/views/crn.html
@@ -10,6 +10,7 @@
     <link rel="stylesheet" type="text/css" href="../static/css/common.css">
     <link rel="stylesheet" type="text/css" href="../static/css/crn.css">
     <script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script>
+    <script type="text/javascript" src="../static/js/common.js"></script>
     <style>
 
     </style>
@@ -80,63 +81,299 @@
 <!-- 鎵嬪姩鎿嶄綔 -->
 <div class="crn-operation">
 
+    <!-- 璁惧浠诲姟閫夋嫨 -->
+    <div class="task-select">
+        <!-- 鍫嗗灈鏈洪�夋嫨 -->
+        <div id="crn-select" class="operator-item">
+            <span class="select-title">鍫嗗灈鏈哄彿</span>
+            <div class="select-container">
+                <label><input type="radio" name="crn" value="1" checked>&nbsp;1鍙峰爢鍨涙満</label>
+                <label><input type="radio" name="crn" value="2">&nbsp;2鍙峰爢鍨涙満</label>
+            </div>
+        </div>
+        <!-- 婧愮珯/婧愬簱浣� 閫夋嫨 -->
+        <div id="source-select" class="operator-item">
+            <span class="select-title">婧愮珯/婧愬簱浣�</span>
+            <div class="select-container">
+                <div class="select-container-item">
+                    <span>绔�</span>
+                    <label><input type="number" name="points" min="0" /></label>
+                </div>
+                <div class="select-container-item">
+                    <span>鎺�</span>
+                    <label><input type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
+                </div>
+                <div class="select-container-item">
+                    <span>鍒�</span>
+                    <label><input type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
+                </div>
+                <div class="select-container-item">
+                    <span>灞�</span>
+                    <label><input type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
+                </div>
+            </div>
+        </div>
+        <!-- 鐩爣绔�/鐩爣搴撲綅 閫夋嫨 -->
+        <div id="target-select" class="operator-item">
+            <span class="select-title">鐩爣绔�/鐩爣搴撲綅</span>
+            <div class="select-container">
+                <div class="select-container-item">
+                    <span>绔�</span>
+                    <label><input type="number" name="points" min="0" /></label>
+                </div>
+                <div class="select-container-item">
+                    <span>鎺�</span>
+                    <label><input type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
+                </div>
+                <div class="select-container-item">
+                    <span>鍒�</span>
+                    <label><input type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
+                </div>
+                <div class="select-container-item">
+                    <span>灞�</span>
+                    <label><input type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
+                </div>
+            </div>
+        </div>
+    </div>
+
+    <!-- 璁惧浠诲姟鎿嶄綔 -->
+    <div class="task-operator">
+        <fieldset>
+            <legend>鎵嬪姩鎿嶄綔</legend>
+            <div class="button-group">
+                <button class="item">鍏ュ簱</button>
+                <button class="item">鍑哄簱</button>
+                <button class="item">搴撲綅杞Щ</button>
+                <button class="item">绔欏埌绔�</button>
+                <button class="item">鍧愭爣绉诲姩</button>
+                <button class="item">鍥炲師鐐�</button>
+                <button class="item">浠诲姟瀹屾垚</button>
+                <button class="item">鏆傚仠</button>
+                <button class="item">鍚姩</button>
+                <button class="item">娓呴櫎鍛戒护</button>
+            </div>
+        </fieldset>
+    </div>
+
 </div>
 <!-- 鍫嗗灈鏈烘棩蹇楄緭鍑� -->
-<div class="crn-output">
-
+<div class="crn-output-board">
+    <textarea id="crn-output"></textarea>
 </div>
 </body>
 <script>
-
-    // 绌虹櫧琛ㄦ牸娓叉煋
+    // 绌虹櫧琛屾暟
+    var crnStateTableBlankRows = 0;
+    var crnMsgTableBlankRows = 0;
+    // 瀹為檯琛屾暟
+    var crnStateTableFullRows = 0;
+    var crnMsgTableFullRows = 0;
+    // 鍒濆鍖�
+    var crnOutputDom = document.getElementById("crn-output");
     $(document).ready(function() {
-        // 琛ㄤ竴
-        var one1 = $('#crn-state-table thead').height();
-        var total1 = $('.crn-state').height();
-        var count1 = total1 / one1;
-        count1 = parseInt(count1);
-        var html1 = "";
-        for (var i = 0; i < count1; i ++){
-            html1 += " <tr>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "     </tr>\n";
-        }
-        $('#crn-state-table tbody').after(html1);
-
-        // 琛ㄤ簩
-        var one2 = $('#crn-msg-table thead').height();
-        var total2 = $('.crn-msg').height();
-        var count2 = total2 / one2;
-        count2 = parseInt(count2);
-        var html2 = "";
-        for (var i = 0; i < count2; i ++){
-            html2 += " <tr>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "     </tr>\n";
-        }
-        $('#crn-msg-table tbody').after(html2);
+        initCrnStateTable();
+        getCrnStateInfo();
+        initCrnMsgTable();
+        getCrnMsgInfo();
     });
+    // 鏁版嵁鏇存柊
+    setInterval(function () {
+        getCrnStateInfo();
+        getCrnMsgInfo();
+        getCommandLog();
+    },1000);
+    setInterval(function () {
+        getSiteOutput();
+    },500);
+
+    // 鑾峰彇鍫嗗灈鏈烘墽琛屼腑鐨勫懡浠�
+    function getCommandLog() {
+        $.ajax({
+            url: baseUrl + "/crn/command/ongoing",
+            headers: {'token': localStorage.getItem('token')},
+            method: 'POST',
+            success: function (res) {
+                if (res.code === 200) {
+                    var commands = res.data;
+                    for (var i=0; i<commands.length;i++){
+                        $("#crn"+commands[i].crnNo).val(commands[i].command);
+                    }
+                } else if (res.code === 403) {
+                    top.location.href = baseUrl + "/login";
+                } else {
+                    alert(res.msg);
+                }
+            }
+        })
+    }
+
+
+    // 鍫嗗灈鏈轰俊鎭〃鑾峰彇 ---- 琛ㄤ竴
+    function getCrnStateInfo() {
+        var tableEl = $('#crn-state-table');
+        $.ajax({
+            url: baseUrl+ "/crn/table/crn/state",
+            headers: {'token': localStorage.getItem('token')},
+            method: 'POST',
+            success: function (res) {
+                if (res.code === 200){
+                    var table = res.data;
+                    if (table.length > crnStateTableBlankRows && table.length !== crnStateTableFullRows) {
+                        initCrnStateTable(table.length-crnStateTableBlankRows);
+                        crnStateTableFullRows = table.length;
+                    }
+                    for (var i=1;i<=table.length;i++){
+                        var tr = tableEl.find("tr").eq(i);
+                        setVal(tr.children("td").eq(0), table[i-1].crnNo);
+                        setVal(tr.children("td").eq(1), table[i-1].type);
+                        setVal(tr.children("td").eq(2), table[i-1].warn);
+                        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].forkOffset);
+                        setVal(tr.children("td").eq(7), table[i-1].bayCoor);
+                        setVal(tr.children("td").eq(8), table[i-1].levCoor);
+                        setVal(tr.children("td").eq(9), table[i-1].complete);
+                        setVal(tr.children("td").eq(10), table[i-1].workNo);
+                        setVal(tr.children("td").eq(11), table[i-1].status);
+                        setVal(tr.children("td").eq(12), table[i-1].warnCode);
+                    }
+                } else if (res.code === 403){
+                    top.location.href = baseUrl+"/login";
+                }  else {
+                    alert(res.msg);
+                }
+            }
+        });
+    }
+
+    // 鍫嗗灈鏈烘暟鎹〃鑾峰彇 ---- 琛ㄤ簩
+    function getCrnMsgInfo() {
+        var tableEl = $('#crn-msg-table');
+        $.ajax({
+            url: baseUrl+ "/crn/table/crn/msg",
+            headers: {'token': localStorage.getItem('token')},
+            method: 'POST',
+            success: function (res) {
+                if (res.code === 200){
+                    var table = res.data;
+                    if (table.length > crnStateTableBlankRows && table.length !== crnStateTableFullRows) {
+                        initCrnStateTable(table.length-crnStateTableBlankRows);
+                        crnStateTableFullRows = table.length;
+                    }
+                    for (var i=1;i<=table.length;i++){
+                        var tr = tableEl.find("tr").eq(i);
+                        setVal(tr.children("td").eq(0), table[i-1].crnNo);
+                        setVal(tr.children("td").eq(1), table[i-1].status);
+                        setVal(tr.children("td").eq(2), table[i-1].workNo);
+                        setVal(tr.children("td").eq(3), table[i-1].sourceStaNo);
+                        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].origin);
+                        setVal(tr.children("td").eq(9), table[i-1].command);
+                    }
+                } else if (res.code === 403){
+                    top.location.href = baseUrl+"/login";
+                }  else {
+                    alert(res.msg);
+                }
+            }
+        });
+    }
+
+    // 杈撻�佽澶囨棩蹇楄緭鍑�
+    function getSiteOutput() {
+        $.ajax({
+            url: baseUrl + "/crn/output/site",
+            headers: {'token': localStorage.getItem('token')},
+            method: 'POST',
+            success: function (res) {
+                if (res.code === 200) {
+                    crnOutput(res.data);
+                } else if (res.code === 403) {
+                    top.location.href = baseUrl + "/login";
+                } else {
+                    alert(res.msg);
+                }
+            }
+        })
+    }
+
+    // ------------------------------------------------------------------------------------------------
+
+    // 鍫嗗灈鏈轰俊鎭〃鑾峰彇  ----- 琛ㄤ竴
+    function initCrnStateTable(row) {
+        var line;
+        if (row === undefined){
+            var one = $('#crn-state-table thead').height();
+            var total = $('.crn-state').height();
+            var count = total / one;
+            count = parseInt(count) - 1;
+            crnStateTableBlankRows = count;
+            line = count;
+        } else {
+            line = row;
+        }
+        var html = "";
+        for (var i = 0; i < line; i ++){
+            html += " <tr>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "     </tr>\n";
+        }
+        $('#crn-state-table tbody').after(html);
+    }
+
+    // 鍫嗗灈鏈烘暟鎹〃鑾峰彇  ----- 琛ㄤ簩
+    function initCrnMsgTable(row) {
+        var line;
+        if (row === undefined){
+            var one = $('#crn-msg-table thead').height();
+            var total = $('.crn-msg').height();
+            var count = total / one;
+            count = parseInt(count) - 1;
+            crnMsgTableBlankRows = count;
+            line = count;
+        } else {
+            line = row;
+        }
+        var html = "";
+        for (var i = 0; i < line; i ++){
+            html += " <tr>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "       <td></td>\n" +
+                "     </tr>\n";
+        }
+        $('#crn-msg-table tbody').after(html);
+    }
+
+    // 鏃ュ織杈撳嚭妗�
+    function crnOutput(content){
+        crnOutputDom.value += content;
+        crnOutputDom.scrollTop = crnOutputDom.scrollHeight;
+    }
 
 </script>
 </html>
\ No newline at end of file

--
Gitblit v1.9.1