From bf7f18b252078aa07b7df4a2b51a36e320663730 Mon Sep 17 00:00:00 2001
From: yxFwq <1>
Date: 星期四, 18 七月 2024 19:00:46 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/crn.html |  460 +++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 302 insertions(+), 158 deletions(-)

diff --git a/src/main/webapp/views/crn.html b/src/main/webapp/views/crn.html
index d93035d..e9c53c9 100644
--- a/src/main/webapp/views/crn.html
+++ b/src/main/webapp/views/crn.html
@@ -13,161 +13,228 @@
     <script type="text/javascript" src="../static/js/common.js"></script>
     <script type="text/javascript" src="../static/js/layer/layer.js"></script>
     <style>
+        .demoBtn {
+            vertical-align: middle;
+            width: 20%;
+            height: 25px;
+            left: 0;
+            top: 0;
+            text-shadow: inherit;
+            font-size: 15px;
+            margin-left: 5px;
+            margin-right: 5px;
+            display: inline-block;
+            background-color: #FF5722;
+            border: none;
+            color: #FFF;
+            box-shadow: 1px 1px 5px #B6B6B6;
+            border-radius: 3px;
+            cursor: pointer;
+        }
 
+        .demoBtn:hover {
+            opacity: 0.8
+        }
+        .demoBtn:focus {
+            outline: 0;
+        }
     </style>
 </head>
 <body>
-<!-- 鏃ュ織鐩戞帶鏉� -->
-<div class="log-board">
-    <!-- 鎵ц鍛戒护 -->
-    <div class="command-log">
-        <h2>鎵ц涓殑鍛戒护</h2>
-        <div class="crn-command-item">
-            <label>1#</label>
-            <span>&nbsp;</span>
-            <input id="crn1" disabled="disabled">
+<div style="padding: 10px;height: 100%;float: left;width: 6%">
+    <div class="button-window"></div>
+</div>
+<div style="height: 100%;padding-left: 6%">
+    <div style="padding: 10px;height: 100%">
+        <!-- 鏃ュ織鐩戞帶鏉� -->
+        <div class="log-board">
+            <!-- 鎵ц鍛戒护 -->
+
+            <!-- 鎵ц鍛戒护 -->
+            <div class="command-log">
+                <h3>鎵ц涓殑鍛戒护</h3>
+                <div class="crn-command-item">
+                    <label>1#</label>
+                    <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 class="crn-command-item">
+                    <label>3#</label>
+                    <button id="demoBtn-3" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
+                    <!--            <span>&nbsp;</span>-->
+                    <input id="crn3" disabled="disabled">
+                </div>
+                <div class="crn-command-item">
+                    <label>4#</label>
+                    <button id="demoBtn-4" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
+                    <!--            <span>&nbsp;</span>-->
+                    <input id="crn4" disabled="disabled">
+                </div>
+                <div class="crn-command-item">
+                    <label>5#</label>
+                    <button id="demoBtn-5" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
+                    <!--            <span>&nbsp;</span>-->
+                    <input id="crn5" disabled="disabled">
+                </div>
+                <div class="crn-command-item">
+                    <label>6#</label>
+                    <button id="demoBtn-6" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
+                    <!--            <span>&nbsp;</span>-->
+                    <input id="crn6" disabled="disabled">
+                </div>
+            </div>
+            <!-- 鍫嗗灈鏈虹姸鎬佷綅淇℃伅 -->
+            <div class="crn-state">
+                <table id="crn-state-table">
+                    <thead>
+                    <tr>
+                        <th>鍫嗗灈鏈�</th>
+                        <th>妯″紡</th>
+                        <th>鐘舵��</th>
+                        <th>鏈夌墿</th>
+                        <th>鍒�</th>
+                        <th>灞�</th>
+                        <th>璐у弶瀹氫綅</th>
+                        <th>杞借揣鍙板畾浣�</th>
+                        <th>璧拌鍦ㄥ畾浣�</th>
+                        <th>鏁呴殰浠g爜</th>
+                        <th>鏁呴殰鎻忚堪</th>
+                    </tr>
+                    </thead>
+                    <tbody>
+                    </tbody>
+                </table>
+            </div>
         </div>
-        <div class="crn-command-item">
-            <label>2#</label>
-            <span>&nbsp;</span>
-            <input id="crn2" disabled="disabled">
-        </div>
-    </div>
-    <!-- 鍫嗗灈鏈虹姸鎬佷綅淇℃伅 -->
-    <div class="crn-state">
-        <table id="crn-state-table">
-            <thead>
+        <!-- 鍫嗗灈鏈虹姸鎬� -->
+        <div class="crn-msg">
+            <table id="crn-msg-table">
+                <thead>
                 <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>璧拌閫熷害锛坢/min)</th>-->
+<!--                    <th>鍗囬檷閫熷害锛坢/min)</th>-->
+<!--                    <th>鍙夌墮閫熷害锛坢/min)</th>-->
+<!--                    <th>璧拌璺濈(Km)</th>-->
+<!--                    <th>鍗囬檷璺濈(Km)</th>-->
+<!--                    <th>璧拌鏃堕暱(H)</th>-->
+<!--                    <th>鍗囬檷鏃堕暱(H)</th>-->
                 </tr>
-            </thead>
-            <tbody>
-            </tbody>
-        </table>
-    </div>
-</div>
-<!-- 鍫嗗灈鏈虹姸鎬� -->
-<div class="crn-msg">
-    <table id="crn-msg-table">
-        <thead>
-            <tr>
-                <th>鍫嗗灈鏈�</th>
-                <th>宸ヤ綔鍙�</th>
-                <th>鐘舵��</th>
-                <th>婧愮珯</th>
-                <th>鐩爣绔�</th>
-                <th>婧愬簱浣�</th>
-                <th>鐩爣搴撲綅</th>
-                <th>寮傚父</th>
-            </tr>
-        </thead>
-        <tbody>
-        </tbody>
-    </table>
-</div>
-<!-- 鎵嬪姩鎿嶄綔 -->
-<div class="crn-operation">
+                </thead>
+                <tbody>
+                </tbody>
+            </table>
+        </div>
+        <!-- 鎵嬪姩鎿嶄綔 -->
+        <div class="crn-operation">
 
-    <!-- 閬僵灞� -->
-    <div class="crn-operation-shade">
+            <!-- 閬僵灞� -->
+            <div class="crn-operation-shade">
         <span class="crn-operation-shade-span">
             WCS 绯荤粺杩愯涓紝璇峰仠姝㈠悗鎿嶄綔
         </span>
-    </div>
+            </div>
 
-    <!-- 璁惧浠诲姟閫夋嫨 -->
-    <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="crnSelect" value="1" checked>&nbsp;1鍙峰爢鍨涙満</label>
-<!--                <label><input type="radio" name="crnSelect" value="2">&nbsp;2鍙峰爢鍨涙満</label>-->
+            <!-- 璁惧浠诲姟閫夋嫨 -->
+            <div class="task-select">
+                <!-- 鍫嗗灈鏈洪�夋嫨 -->
+                <div id="crn-select" class="operator-item" style="width: 55%">
+                    <span class="select-title">鍫嗗灈鏈哄彿</span>
+                    <div class="select-container" style="padding: 20px 0;">
+                        <label><input type="radio" name="crnSelect" value="1" checked>&nbsp;1鍙峰爢鍨涙満</label>
+                        <label><input type="radio" name="crnSelect" value="2">&nbsp;2鍙峰爢鍨涙満</label>
+                        <label><input type="radio" name="crnSelect" value="3">&nbsp;3鍙峰爢鍨涙満</label>
+                        <label><input type="radio" name="crnSelect" value="4">&nbsp;4鍙峰爢鍨涙満</label>
+                        <label><input type="radio" name="crnSelect" value="5">&nbsp;5鍙峰爢鍨涙満</label>
+                        <label><input type="radio" name="crnSelect" value="6">&nbsp;6鍙峰爢鍨涙満</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 id="sourceStaNo" type="number" name="points" min="0" /></label>
+                        </div>
+                        <div class="select-container-item">
+                            <span>鎺�</span>
+                            <label><input id="sourceRow" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>
+                        </div>
+                        <div class="select-container-item">
+                            <span>鍒�</span>
+                            <label><input id="sourceBay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label>
+                        </div>
+                        <div class="select-container-item">
+                            <span>灞�</span>
+                            <label><input id="sourceLev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></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 id="staNo" type="number" name="points" min="0" /></label>
+                        </div>
+                        <div class="select-container-item">
+                            <span>鎺�</span>
+                            <label><input id="row" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>
+                        </div>
+                        <div class="select-container-item">
+                            <span>鍒�</span>
+                            <label><input id="bay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label>
+                        </div>
+                        <div class="select-container-item">
+                            <span>灞�</span>
+                            <label><input id="lev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>
+                        </div>
+                    </div>
+                </div>
             </div>
+
+            <!-- 璁惧浠诲姟鎿嶄綔 -->
+            <div class="task-operator">
+                <fieldset>
+                    <legend>鎵嬪姩鎿嶄綔</legend>
+                    <div class="button-group">
+                        <button class="item" onclick="put()">鍏ュ簱</button>
+                        <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="taskComplete()">浠诲姟瀹屾垚</button>
+                        <!--                <button class="item" onclick="pause()">鏆傚仠</button>-->
+                        <!--                <button class="item" onclick="boot()">鍚姩</button>-->
+                        <button class="item" onclick="clearCommand()">娓呴櫎鍛戒护</button>
+                        <button class="item" onclick="handleReset()">澶嶄綅</button>
+                    </div>
+                </fieldset>
+            </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 id="sourceStaNo" type="number" name="points" min="0" /></label>
-                </div>
-                <div class="select-container-item">
-                    <span>鎺�</span>
-                    <label><input id="sourceRow" type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
-                </div>
-                <div class="select-container-item">
-                    <span>鍒�</span>
-                    <label><input id="sourceBay" type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
-                </div>
-                <div class="select-container-item">
-                    <span>灞�</span>
-                    <label><input id="sourceLev" 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 id="staNo" type="number" name="points" min="0" /></label>
-                </div>
-                <div class="select-container-item">
-                    <span>鎺�</span>
-                    <label><input id="row" type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
-                </div>
-                <div class="select-container-item">
-                    <span>鍒�</span>
-                    <label><input id="bay" type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
-                </div>
-                <div class="select-container-item">
-                    <span>灞�</span>
-                    <label><input id="lev" type="number" name="points" min="0" style="background-color: #a9eeff" /></label>
-                </div>
-            </div>
+        <!-- 鍫嗗灈鏈烘棩蹇楄緭鍑� -->
+        <div class="crn-output-board">
+            <textarea id="crn-output"></textarea>
         </div>
     </div>
-
-    <!-- 璁惧浠诲姟鎿嶄綔 -->
-    <div class="task-operator">
-        <fieldset>
-            <legend>鎵嬪姩鎿嶄綔</legend>
-            <div class="button-group">
-                <button class="item" onclick="put()">鍏ュ簱</button>
-                <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="taskComplete()">浠诲姟瀹屾垚</button>
-<!--                <button class="item" onclick="pause()">鏆傚仠</button>-->
-<!--                <button class="item" onclick="boot()">鍚姩</button>-->
-                <button class="item" onclick="clearCommand()">娓呴櫎鍛戒护</button>
-                <button class="item" onclick="handleReset()">澶嶄綅</button>
-            </div>
-        </fieldset>
-    </div>
-
-</div>
-<!-- 鍫嗗灈鏈烘棩蹇楄緭鍑� -->
-<div class="crn-output-board">
-    <textarea id="crn-output"></textarea>
 </div>
 </body>
 <script>
@@ -196,6 +263,7 @@
     setInterval(function () {
         getCrnOutput();
         operatorBlockShow();
+        initDemo();
     },500);
 
     // 鍒ゆ柇鎵嬪姩鎿嶄綔妯″潡鏄惁鍙敤
@@ -226,7 +294,7 @@
                 } else if (res.code === 403) {
                     window.location.href = baseUrl + "/login";
                 } else {
-                    alert(res.msg);
+                    console.log(res.msg);
                 }
             }
         })
@@ -249,23 +317,21 @@
                     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].workNo);
-                        setVal(tr.children("td").eq(2), table[i-1].statusType);
-                        setVal(tr.children("td").eq(3), table[i-1].status);
-                        setVal(tr.children("td").eq(4), table[i-1].loading);
-                        setVal(tr.children("td").eq(5), table[i-1].bay);
-                        setVal(tr.children("td").eq(6), table[i-1].lev);
-                        setVal(tr.children("td").eq(7), table[i-1].xorigin);
-                        setVal(tr.children("td").eq(8), table[i-1].yorigin);
-                        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(1), table[i-1].statusType);
+                        setVal(tr.children("td").eq(2), table[i-1].status);
+                        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].liftPos);
+                        setVal(tr.children("td").eq(8), table[i-1].walkPos);
+                        setVal(tr.children("td").eq(9), table[i-1].warnCode);
+                        setVal(tr.children("td").eq(10), table[i-1].alarm);
                     }
                 } else if (res.code === 403){
                     window.location.href = baseUrl+"/login";
                 }  else {
-                    alert(res.msg);
+                    console.log(res.msg);
                 }
             }
         });
@@ -294,12 +360,18 @@
                         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(6), table[i-1].error);
+                        // 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";
                 }  else {
-                    alert(res.msg);
+                    console.log(res.msg);
                 }
             }
         });
@@ -409,7 +481,7 @@
 
     // 鎵嬪姩澶嶄綅
     function handleReset() {
-        http.post(baseUrl+"/crn/operator/clearCommand", getReqParam(), function (res) {
+        http.post(baseUrl+"/crn/operator/handleReset", getReqParam(), function (res) {
             layer.msg(res.msg);
         });
     }
@@ -421,12 +493,13 @@
             headers: {'token': localStorage.getItem('token')},
             method: 'POST',
             success: function (res) {
+                console.log(res)
                 if (res.code === 200) {
                     crnOutput(res.data);
                 } else if (res.code === 403) {
                     window.location.href = baseUrl + "/login";
                 } else {
-                    alert(res.msg);
+                    console.log(res.msg);
                 }
             }
         })
@@ -450,8 +523,6 @@
         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" +
@@ -492,6 +563,12 @@
                 "       <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);
@@ -503,5 +580,72 @@
         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];
+        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, opt) {
+        // 鍔犺浇tips
+        var index = layer.load(1, {
+            shade: [0.1,'#fff']
+        });
+        $.ajax({
+            url: baseUrl+ "/crn/demo/switch",
+            headers: {'token': localStorage.getItem('token')},
+            // async: false,
+            data: {
+                crnId: Number(crnId),
+                password: password,
+                opt: opt
+            },
+            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});
+                }
+            }
+        });
+
+    }
+
 </script>
-</html>
\ No newline at end of file
+</html>

--
Gitblit v1.9.1