From a757961fc5b8f5ee5b79cc30615bd22d321d0d72 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期六, 05 七月 2025 17:01:46 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/index.html |  242 ++++++++++++++++++++++++++++++++----------------
 1 files changed, 160 insertions(+), 82 deletions(-)

diff --git a/src/main/webapp/views/index.html b/src/main/webapp/views/index.html
index 4d9e1c8..97b8c7a 100644
--- a/src/main/webapp/views/index.html
+++ b/src/main/webapp/views/index.html
@@ -1,100 +1,178 @@
 <!DOCTYPE html>
 <html lang="en">
+
 <head>
-    <meta charset="utf-8">
-    <title>鑷姩浠撳簱RCS绯荤粺</title>
-    <link rel="stylesheet" href="../static/css/index.css">
-    <link rel="stylesheet" href="../static/css/layx.min.css" type="text/css" />
-    <script src="../static/js/jquery/jquery-3.3.1.min.js"></script>
-    <script src="../static/js/tools/layx.min.js"></script>
+    <meta charset="UTF-8">
+    <title>浠诲姟绠$悊</title>
+    <link rel="stylesheet" href="../static/vue/element/element.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>
+    <script type="text/javascript" src="../static/vue/js/vue.min.js"></script>
+    <script type="text/javascript" src="../static/vue/element/element.js"></script>
     <style>
-        .layx-window.layx-skin-news .layx-control-bar {
-            background-color: #333333;
+        .el-table .success-row {
+            background: #b6ff8e;
         }
     </style>
 </head>
+
 <body>
-<!-- 瀵艰埅鏍� -->
-<div class="sidebar">
-    <div class="nav">
-        <ul class="cl-effect-4">
-            <li><a id="console" onclick="nav(this.id)" class="nav-select" href="#">涓绘帶鍥�</a></li>
-            <li><a id="forklift" onclick="nav(this.id)" class="nav-unselect" href="#">鎻愬崌鏈�</a></li>
-            <li><a id="shuttle" onclick="nav(this.id)" class="nav-unselect" href="#">鍥涘悜绌挎杞�</a></li>
-            <li><a id="admin" onclick="nav(this.id)" class="nav-unselect" href="#">绠$悊鍚庡彴</a></li>
-        </ul>
+<div id="app" style="display: flex;justify-content: center;flex-wrap: wrap;">
+    <div style="width: 50%;">
+        <el-card class="box-card">
+            <div slot="header" class="clearfix">
+                <span>妯℃嫙璁惧</span>
+                <el-button style="float: right; padding: 3px 0" type="text" @click="addDeviceVisible = true">娣诲姞璁惧</el-button>
+            </div>
+
+            <div style="display: flex;flex-wrap: wrap;justify-content: space-between;">
+                <div v-for="item in deviceList" style="width: 49%;margin-top: 20px">
+                    <el-card  class="box-card">
+                        <div slot="header" class="clearfix">
+                            <span>{{ item.deviceType }} - {{ item.deviceNo }}</span>
+                            <el-button style="float: right; padding: 3px 0" type="text" @click="delDevice(item)">鍒犻櫎璁惧</el-button>
+                        </div>
+
+                        <div>
+                            <div>IP: {{ item.ip }}</div>
+                            <div>绔彛: {{ item.port }}</div>
+                            <div>铏氭嫙: {{ item.fake }}</div>
+                            <div>瀹炵幇绫�: {{ item.threadImpl }}</div>
+                        </div>
+                    </el-card>
+                </div>
+            </div>
+        </el-card>
     </div>
+
+
+    <el-dialog title="娣诲姞妯℃嫙璁惧" :visible.sync="addDeviceVisible">
+        <el-form :model="addDeviceParam">
+            <el-form-item label="璁惧缂栧彿" :label-width="formLabelWidth">
+                <el-input v-model="addDeviceParam.deviceNo"></el-input>
+            </el-form-item>
+            <el-form-item label="IP" :label-width="formLabelWidth">
+                <el-input v-model="addDeviceParam.ip"></el-input>
+            </el-form-item>
+            <el-form-item label="绔彛" :label-width="formLabelWidth">
+                <el-input v-model="addDeviceParam.port"></el-input>
+            </el-form-item>
+            <el-form-item label="瀹炵幇绫�" :label-width="formLabelWidth">
+                <el-input v-model="addDeviceParam.threadImpl"></el-input>
+            </el-form-item>
+            <el-form-item label="璁惧绫诲瀷" :label-width="formLabelWidth">
+                <el-input v-model="addDeviceParam.deviceType"></el-input>
+            </el-form-item>
+        </el-form>
+        <div slot="footer" class="dialog-footer">
+            <el-button @click="addDeviceVisible = false">鍙� 娑�</el-button>
+            <el-button type="primary" @click="addDevice">纭� 瀹�</el-button>
+        </div>
+    </el-dialog>
+
 </div>
-<!-- 涓讳綋鍐呭 -->
-<iframe id="content" src="console.html"></iframe>
-<!-- 灏鹃儴 -->
-<footer class="footer">
-    Copyright 漏 2015~2025 All Rights Reserved. 娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�  淇濈暀鎵�鏈夋潈鍒�
-</footer>
-</body>
 <script>
-    // 瀵艰埅鏍�
-    function nav(id) {
-        if(id == 'admin') {
-            window.open('./admin/index.html')
-            return
-        }
-        $('.nav-select').attr("class", "nav-unselect");
-        $('#'+id).attr("class", "nav-select");
-        $('#content').attr("src", id+".html");
-    }
-
-    // 绯荤粺杩愯鐘舵��
-    var systemRunning = true;
-
-    // news by http://chuange.gitee.io/vue-layx/
-    news();layx.min('wcs-news');
-    function news() {
-        layx.iframe(
-              'wcs-news' // id
-            , '绯荤粺鍒嗘瀽鎶ュ憡'
-            , "news.html"
-            , {
-                  shadow:false
-                , storeStatus:false
-                // , skin: 'news'
-                , width:800
-                , height:600
-                , position:'rb'
-                // , control:false
-                , opacity:0.9
-                , border:false
-                , icon:'<img src="../static/images/favicon.ico" style="height:22px;display:block;"  alt=""/>'
-                , stickMenu:true
-                , maxMenu:false
-                , closeMenu:false
-                , moveLimit:{
-                    leftOut: false,
-                    rightOut: false,
-                    topOut: false,
-                    bottomOut: false,
-                }
-                , minWidth:300
-                , minHeight:300
-                , borderRadius: '8px'
-                , shadeDestroy:true
-                , escKey: false
-                , event:{
-                    onmin: {
-                        after: function () {
-                            $('.layx-min-statu').css("left", "inherit").css("right", "10px")
+    var app = new Vue({
+        el: '#app',
+        data: {
+            addDeviceVisible: false,
+            addDeviceParam: {
+                deviceNo: '',
+                ip: '',
+                port: '',
+                threadImpl: '',
+                deviceType: ''
+            },
+            formLabelWidth: '120px',
+            deviceList: []
+        },
+        created() {
+            this.init()
+        },
+        methods: {
+            init() {
+                setInterval(() => {
+                    this.getDeviceList()
+                }, 100);
+            },
+            addDevice() {
+                //娣诲姞璁惧
+                let that = this;
+                $.ajax({
+                    url: baseUrl + "/open/addFakeDevice",
+                    headers: {
+                        'token': localStorage.getItem('token')
+                    },
+                    data: JSON.stringify(this.addDeviceParam),
+                    dataType: 'json',
+                    contentType: 'application/json;charset=UTF-8',
+                    method: 'POST',
+                    success: function(res) {
+                        if (res.code == 200) {
+                            console.log(res)
+                        } else {
+                            that.$message({
+                                message: res.msg,
+                                type: 'error'
+                            });
                         }
                     }
-                    , onrestore:{
-                        after: function () {
-                            let win = layx.getFrameContext('wcs-news');
-                            win.autoScroll = true
+                });
+            },
+            getDeviceList() {
+                let that = this;
+                $.ajax({
+                    url: baseUrl + "/open/getDeviceList",
+                    headers: {
+                        'token': localStorage.getItem('token')
+                    },
+                    data: {},
+                    dataType: 'json',
+                    contentType: 'application/json;charset=UTF-8',
+                    method: 'GET',
+                    success: function(res) {
+                        if (res.code == 200) {
+                            let data = res.data;
+                            that.deviceList = data
+                        } else {
+                            that.$message({
+                                message: res.msg,
+                                type: 'error'
+                            });
                         }
                     }
-                }
+                });
+            },
+            delDevice(config) {
+                let that = this;
+                $.ajax({
+                    url: baseUrl + "/open/deleteFakeDevice",
+                    headers: {
+                        'token': localStorage.getItem('token')
+                    },
+                    data: JSON.stringify({
+                        deviceNo: config.deviceNo,
+                        deviceType: config.deviceType
+                    }),
+                    dataType: 'json',
+                    contentType: 'application/json;charset=UTF-8',
+                    method: 'POST',
+                    success: function(res) {
+                        if (res.code == 200) {
+                            let data = res.data;
+                            that.deviceList = data
+                        } else {
+                            that.$message({
+                                message: res.msg,
+                                type: 'error'
+                            });
+                        }
+                    }
+                });
             }
-        );
-    }
-
+        },
+    })
 </script>
+</body>
+
 </html>

--
Gitblit v1.9.1