From b0f8bf979abb59e152eb9cc8caa262e70cb45204 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期二, 05 九月 2023 16:56:45 +0800
Subject: [PATCH] 更新主界面

---
 /dev/null                                                                           |    0 
 CanadaMes-ui/src/img/bigcar01.png                                                   |    0 
 CanadaMes-ui/src/views/home/index.vue                                               |  215 +++++++++++++++++++++++++++++++-----------
 CanadaMes-ui/src/api/home.js                                                        |    8 +
 springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java        |   48 ++++++---
 springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java         |    7 +
 springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java |   15 +++
 7 files changed, 219 insertions(+), 74 deletions(-)

diff --git a/CanadaMes-ui/src/api/home.js b/CanadaMes-ui/src/api/home.js
index 88450d9..b63aef2 100644
--- a/CanadaMes-ui/src/api/home.js
+++ b/CanadaMes-ui/src/api/home.js
@@ -34,3 +34,11 @@
         data :""
     })
 }
+
+export function Addglassid(glassid) {
+    return request({
+        url: '/home/Addglassid?glassid=' + glassid,
+        method: 'get',
+        data :""
+    })
+}
diff --git a/CanadaMes-ui/src/img/bigcar01.png b/CanadaMes-ui/src/img/bigcar01.png
new file mode 100644
index 0000000..98a0a0e
--- /dev/null
+++ b/CanadaMes-ui/src/img/bigcar01.png
Binary files differ
diff --git a/CanadaMes-ui/src/views/home/index.vue b/CanadaMes-ui/src/views/home/index.vue
index 45ec6d0..a6d1c92 100644
--- a/CanadaMes-ui/src/views/home/index.vue
+++ b/CanadaMes-ui/src/views/home/index.vue
@@ -9,7 +9,7 @@
     width: 10%;
     background-color: white;
     margin: 0px 8px 0px 8px;
-    border: 1px black solid;
+    border: 1px #EBEEF5 solid;
     text-align: center;
     padding: 5px;
 }
@@ -31,11 +31,13 @@
     padding: 3px;
     min-height: 40vh;
 }
+
 .el-footer {
     max-height: 60vh;
     padding: 0px;
     margin: 0px;
 }
+
 .green {
     background-color: green;
 }
@@ -57,34 +59,54 @@
 }
 
 .gezi {
-    height: 23px;
-    width: 1.74px;
+    height: 25px;
+    width: 3.25px;
 }
 
-.gezi:nth-child(22) {
-    margin-left: 4px;
-}
-
-.gezi:nth-child(43) {
-    margin-left: 4px;
-}
-
-.gezi:nth-child(64) {
-    margin-left: 4px;
-}
-
+.gezi:nth-child(22),
+.gezi:nth-child(43),
+.gezi:nth-child(64),
 .gezi:nth-child(85) {
-    margin-left: 4px;
+    margin-left: 7.7px;
 }
 
-.block {
+
+
+.blocks {
     min-height: 50vh;
-    max-width: 100vw;  
-    background-image: url('xmjc.png');
-    margin: 0px;
-    background-repeat:no-repeat ;
-    background-size:100% 100%;
-    background-attachment:local;
+    max-width: 100vw;
+    background-image: url('../../img/xmjc.png');
+    margin: 0 auto;
+    background-repeat: no-repeat;
+    /* background-size: 100% 100%; */
+    background-size: 1280px 377px;
+    background-attachment: local;
+    width: 1280px;
+}
+
+.blocks-img {
+    height: 100px;
+    max-width: 100vw;
+    background-repeat: no-repeat;
+    background-size: 32px 66px;
+    background-attachment: local;
+    width: 32px;
+    
+    position: absolute;
+    /* left: 116px; */
+    /* left:1060px;18.88px */
+    background-image: url('../../img/bigcar01.png');
+}
+
+.el-table td,
+.el-table th {
+    padding: 8px 0;
+}
+.el-table__empty-block{
+    min-height: 41px;
+}
+.el-table__empty-text{
+    line-height: 41px;
 }
 </style>
 <template>
@@ -92,25 +114,31 @@
         <!-- <el-header style="padding: 10px;"></el-header> -->
         <el-main>
             <div style="display:flex;justify-content: space-around;width: 95%;margin: 0 auto;">
-                <el-input style="width:15%;" placeholder="Enter the glass lD"></el-input>
-                <el-button type="primary">Manually feed the glass</el-button>
+                <el-input style="width:15%;" placeholder="Enter the glass lD" v-model="glassid"></el-input>
+                <el-button type="primary" @click="showform()">Manually feed the glass</el-button>
                 <el-input style="width:15%;" placeholder="Enter the order number" v-model="order"></el-input>
                 <el-button type="warning" @click="getOrder()">Exit the glass by order number</el-button>
             </div>
             <div>
                 <el-table :data="this.tasklist1" border style="width: 100%">
                     <el-table-column prop="glassId" label="Coming out glass ID"></el-table-column>
-                    <el-table-column prop="cage" label="The Grille number being used"></el-table-column>
-                    <el-table-column label="Order number">orderNo</el-table-column>
-                    <el-table-column prop="address" label="Length and width"></el-table-column>
-                    <el-table-column prop="address" label="coating"></el-table-column>
+                    <el-table-column :width="250" prop="cage" label="The Grille number being used"></el-table-column>
+                    <el-table-column prop="orderId" label="Order Nmuber"></el-table-column>
+                    <el-table-column prop="glasswidth" label="Length and width"></el-table-column>
+                    <el-table-column prop="coating" label="coating"></el-table-column>
+                    <el-table-column label="Operate">
+                        <el-button type="primary" style="padding: 4px 10px;font-size: 12px;">end task</el-button>
+                    </el-table-column>
                 </el-table>
                 <el-table :data="this.tasklist2" border style="width: 100%">
                     <el-table-column prop="glassId" label="Incoming glass ID"></el-table-column>
-                    <el-table-column prop="cage" label="The Grille number being used"></el-table-column>
-                    <el-table-column label="Order number">orderNo</el-table-column>
-                    <el-table-column prop="address" label="Length and width"></el-table-column>
-                    <el-table-column prop="address" label="coating"></el-table-column>
+                    <el-table-column :width="250" prop="cage" label="The Grille number being used"></el-table-column>
+                    <el-table-column prop="orderId" label="Order Nmuber"></el-table-column>
+                    <el-table-column prop="glasswidth" label="Length and width"></el-table-column>
+                    <el-table-column prop="coating" label="coating"></el-table-column>
+                    <el-table-column label="Operate">
+                        <el-button type="primary" style="padding: 4px 10px;font-size: 12px;">end task</el-button>
+                    </el-table-column>
                 </el-table>
             </div>
             <div style="padding: 10px;display: flex;height:85px;">
@@ -126,46 +154,82 @@
                 </div>
             </div>
         </el-main>
-        <el-footer> 
-                <div class="block" style="text-align: center;position: relative;">
-                    <div style="display:flex;position: absolute;float:left;z-index: 999;top:71px;left:136px;">
-                        <div :class="getStatusClass(item.state)" v-for="item in cagelist1" :key="item['date']"></div>
-                    </div>
-                    <div style="display:flex;position: absolute;float:left;z-index: 999;top:71px;left:366px;">
-                        <div :class="getStatusClass(item.state)" v-for="item in cagelist2" :key="item['date']"></div>
-                    </div>
-                    <div style="display:flex;position: absolute;float:left;z-index: 999;top:96px;left:136px;">
-                        <div :class="getStatusClass(item.state)" v-for="item in cagelist3" :key="item['date']"></div>
-                    </div>
-                    <div style="display:flex;position: absolute;float:left;z-index: 999;top:96px;left:366px;">
-                        <div :class="getStatusClass(item.state)" v-for="item in cagelist4" :key="item['date']"></div>
-                    </div>
-                </div> 
+        <el-footer>
+            <div class="blocks" style="position: relative;">
+                <div style="display:flex;position: absolute;float:left;z-index: 999;top:76px;left:253px;">
+                    <div :class="getStatusClass(item.state)" v-for="item in cagelist1" :key="item['date']"></div>
+                </div>
+                <div style="display:flex;position: absolute;float:left;z-index: 999;top:76px;left:682.5px;">
+                    <div :class="getStatusClass(item.state)" v-for="item in cagelist2" :key="item['date']"></div>
+                </div>
+                <div style="display:flex;position: absolute;float:left;z-index: 999;top:102px;left:253px;">
+                    <div :class="getStatusClass(item.state)" v-for="item in cagelist3" :key="item['date']"></div>
+                </div>
+                <div style="display:flex;position: absolute;float:left;z-index: 999;top:102px;left:682.5px;">
+                    <div :class="getStatusClass(item.state)" v-for="item in cagelist4" :key="item['date']"></div>
+                </div>
+                <div class="blocks-img" :style="{ left: car1 + 'px' ,top: '10px'}">
+
+                </div>
+                <div class="blocks-img" :style="{ left: car2 + 'px' ,top: '129px'}">
+
+                </div>
+            </div>
         </el-footer>
-        
+        <el-dialog :visible.sync="dialogFormVisible" title="Please confirm the information">
+            <el-form :model="form" label-width="100px" style="padding-right: 30px">
+                <el-form-item label="Order">
+                    <el-input v-model="form.orderno" autocomplete="off" />
+                </el-form-item>
+                <el-form-item label="length">
+                    <el-input v-model="form.length" autocomplete="off" />
+                </el-form-item>
+                <el-form-item label="width">
+                    <el-input v-model="form.width" autocomplete="off" />
+                </el-form-item>
+                <el-form-item label="coating">
+                    <el-input v-model="form.coating" autocomplete="off" />
+                </el-form-item>
+            </el-form>
+            <template #footer>
+                <span class="dialog-footer">
+                    <el-button @click="cancal()">cancal</el-button>
+                    <el-button @click="sbumitglassid()" type="primary">confirm</el-button>
+                </span>
+            </template>
+        </el-dialog>
     </el-container>
 </template>
   
 <script>
 
-import { home, home2, loadtask, InsertOrder } from "../../api/home";
+import { home, home2, loadtask, InsertOrder, Addglassid } from "../../api/home";
 
 
 export default {
     data() {
         return {
-            
+            dialogFormVisible: false,
+            form: {
+                orderno: "NG2210210",
+                length: 800,
+                width: 1000,
+                coating: "red",
+            },
             tableData: [],
             cagelist1: [],
             cagelist2: [],
             cagelist3: [],
             cagelist4: [],
-            task1: 3,
-            task2: 4,
+            task1: 2,
+            task2: 3,
             tasklist1: [],
             tasklist2: [],
-            src: "./img/xmjc.png",
-            order: ""
+            order: "",
+            glassid: "",
+            url: "../../img/bigcar01.png",
+            car1: 116,
+            car2: 187
         };
     },
     created() {
@@ -184,13 +248,19 @@
             });
             loadtask(this.task1).then(res => {
                 this.tasklist1 = res.data.list;
+                console.log(this.tasklist1);
             });
             loadtask(this.task2).then(res => {
                 this.tasklist2 = res.data.list;
             });
+            loadtask(this.task2).then(res => {
+                this.tasklist2 = res.data.list;
+                this.car1 = 116 + 18.88 * 20;
+                this.car2 = 187 + 18.8 * 30;
+            });
         },
+        //鏍规嵁鏍煎瓙鐘舵�佷慨鏀归鑹�
         getStatusClass(state) {
-            //姣忓悇鏍煎瓙涓嶅悓鐘舵�佷笉鍚岄鑹�
             if (state == 0) {
                 return "green gezi";
             } else if (state == 1) {
@@ -203,18 +273,49 @@
                 return "black gezi";
             }
         },
+        //鎸夎鍗曞嚭鐗�
         getOrder() {
             if (this.order != "") {
                 InsertOrder(this.order).then(res => {
                     if (res.data.message == 200) {
                         this.$message.success("Operation successful");
                     } else {
-                        this.$message.success("operation failed");
+                        this.$message.success("There is no such order");
                     }
                     this.load();
                 });
             }
 
+        },
+        showform() {
+            this.form =
+            {
+                orderno: "NG2210210",
+                length: 800,
+                width: 1000,
+                coating: "red",
+            };
+            this.dialogFormVisible = true;
+        },
+        cancal() {
+            this.dialogFormVisible = false;
+            this.form = {};
+        },
+        //鎵嬪姩涓婄墖
+        sbumitglassid() {
+            if (this.glassid != "") {
+                Addglassid(this.glassid).then(res => {
+                    if (res.data.message2 == 200) {
+                        this.$message.success("Operation successful");
+                        this.cancal();
+                    } else {
+                        this.$message.success("There are currently tasks");
+                    }
+                });
+            }
+        },
+        endtask(){
+            
         }
     }
 };
diff --git a/CanadaMes-ui/src/views/home/xmjc.png b/CanadaMes-ui/src/views/home/xmjc.png
deleted file mode 100644
index 3a682f5..0000000
--- a/CanadaMes-ui/src/views/home/xmjc.png
+++ /dev/null
Binary files differ
diff --git a/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java b/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java
index 4102de3..73b3e33 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java
@@ -44,6 +44,7 @@
         return Result.success(map);
     }
     
+    
     @GetMapping("/loadinout")    
     public Result selectinout(Integer types){
         List<StorageCage> storageCageinout=homeMapper.selectinout(types);
@@ -65,4 +66,18 @@
         }
         return Result.success(map);
     }
+
+    @GetMapping("/Addglassid")
+    public Result Addglassid(Integer glassid){
+        Map<String, Object> map = new HashMap<>();
+        short taskno=homeMapper.SelectOutTask();
+        if(taskno>0){
+            map.put("message2","500");
+        }else{
+            map.put("message2","200");
+            //璋冪敤浼嶄笂鐗囧嚱鏁�
+
+        }
+        return Result.success(map);
+    }
 }
diff --git a/springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java b/springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java
index d3e0d0b..bb95f3a 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java
@@ -3,20 +3,23 @@
 public class StorageCage {
     private Integer id;
     private String glassId;
+    private String orderid;
     private String cage;
     private String cell;
-    //private String height;
     private String width;
     private String state;
     private String tier;
-
+    private Double glasswidth;
+    private Double glassheight;
 
     public Integer id() {
         return id;
     }
+
     public void setId(Integer id) {
         this.id = id;
     }
+
     public Integer getId() {
         return id;
     }
@@ -28,7 +31,15 @@
     public void setGlassId(String glassId) {
         this.glassId = glassId;
     }
-    
+
+    public String getOrderId() {
+        return orderid;
+    }
+
+    public void setOrderId(String orderid) {
+        this.orderid = orderid;
+    }
+
     public String getCage() {
         return cage;
     }
@@ -45,16 +56,6 @@
         return cell;
     }
 
-    
-
-    // public String getHeighth() {
-    //     return height;
-    // }
-
-    // public void setHeight(String height) {
-    //     this.height = height;
-    // }
-
     public String getWidth() {
         return width;
     }
@@ -63,7 +64,7 @@
         this.width = width;
     }
 
-     public String getState() {
+    public String getState() {
         return state;
     }
 
@@ -71,7 +72,7 @@
         this.state = state;
     }
 
-      public String getTier() {
+    public String getTier() {
         return tier;
     }
 
@@ -79,5 +80,20 @@
         this.tier = tier;
     }
 
-  
+    public Double getglasswidth() {
+        return glasswidth;
+    }
+
+    public void setglasswidth(Double glasswidth) {
+        this.glasswidth = glasswidth;
+    }
+
+    public Double getglassheight() {
+        return glassheight;
+    }
+
+    public void setglassheight(Double glassheight) {
+        this.glassheight = glassheight;
+    }
+
 }
diff --git a/springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java b/springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java
index 112af50..85d809a 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java
@@ -36,9 +36,14 @@
     short SelectOrder(@Param("orderid") String orderid);
 
     // @Insert("insert into order_out(orderid) values('#{orderid}')")
-    @Insert("INSERT INTO `canadames`.`order_out`( `orderid`,`mod_time`) VALUES ( #{orderid},now())")
+    @Insert("INSERT INTO `canadames`.`order_out`( `order_id`,`mod_time`) VALUES ( #{orderid},now())")
     void InsertOrder(String orderid);
 
+    //鍋滄鎸夊綋鍓嶈鍗曞嚭鐗�
     @Update("update order_out set state=1 where state=0")
     void updateOrder();
+    
+    //鏌ヨ鏄惁瀛樺湪姝e湪涓婄墖鐨勪换鍔�
+    @Select("select count(*) from storage_task where task_state=0 and task_type=1")
+    short SelectOutTask();
 }

--
Gitblit v1.8.0