From e38df8aee172e7741afd5c94245bf340d22e7e4b Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期二, 16 七月 2024 16:58:57 +0800
Subject: [PATCH] 添加mes报工管理界面

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java        |    6 +
 UI-Project/src/views/ReportWork/reportWork.vue                                                                                               |  125 +++++++++++++++++++++++++++++++
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/tools/WebSocketServer.java                                                        |    2 
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java |    1 
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/DamageService.java                                                 |    3 
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/entity/Damage.java                                                         |    5 
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcSlicecage.java                                         |    3 
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/controller/DamageController.java                                           |   26 ++++--
 UI-Project/src/views/Slicecage/slicecage.vue                                                                                                 |    9 +
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/entity/BigStorageCage.java                         |   16 +++
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java                                        |   10 +-
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/work_assignment/controller/WorkAssignmentController.java                          |    7 +
 UI-Project/src/router/index.js                                                                                                               |   13 +++
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/GlassInfoService.java                                           |    4 
 14 files changed, 200 insertions(+), 30 deletions(-)

diff --git a/UI-Project/src/router/index.js b/UI-Project/src/router/index.js
index 030de26..d790e4b 100644
--- a/UI-Project/src/router/index.js
+++ b/UI-Project/src/router/index.js
@@ -259,6 +259,19 @@
       },
     ]
   },
+  /*----------- 鎶ュ伐绠$悊 ----------------*/
+  {
+    path: 'reportWork',
+    name: 'reportWork',
+    component: () => import('../views/ReportWork/reportWork.vue'),
+    children:[
+      {
+        path: '/ReportWork/reportWork',
+        name: 'reportWork',
+        component: () => import('../views/ReportWork/reportWork.vue')
+      },
+    ]
+  },
         /*----------- 绠$悊绯荤粺 ----------------*/
         {
           path: 'sys',
diff --git a/UI-Project/src/views/ReportWork/reportWork.vue b/UI-Project/src/views/ReportWork/reportWork.vue
new file mode 100644
index 0000000..cd22ee2
--- /dev/null
+++ b/UI-Project/src/views/ReportWork/reportWork.vue
@@ -0,0 +1,125 @@
+<template>
+  <div style="height: 600px;">
+    <span class="demonstration">鐢熶骇鏃堕棿</span>
+    <el-date-picker v-model="timeRange" type="daterange" format="YYYY/MM/DD" value-format="YYYY-MM-DD"
+      start-placeholder="寮�濮嬫椂闂�" end-placeholder="缁撴潫鏃堕棿" :default-time="defaultTime" />
+    <el-select v-model="report.type" placeholder="娓呴�夋嫨绫诲瀷">
+      <el-option label="鍏ㄩ儴" value="0"></el-option>
+      <el-option label="瀹屽伐" value="1"></el-option>
+      <el-option label="鐮存崯" value="2"></el-option>
+      <el-option label="鎷胯蛋" value="3"></el-option>
+    </el-select>
+    <el-select v-model="report.status" placeholder="娓呴�夋嫨鐘舵��">
+      <el-option label="鍏ㄩ儴" value="0"></el-option>
+      <el-option label="鏈姤宸�" value="1"></el-option>
+      <el-option label="寰呮姤宸�" value="2"></el-option>
+      <el-option label="宸叉姤宸�" value="3"></el-option>
+    </el-select>
+    <el-select v-model="report.workProcedure" placeholder="娓呴�夋嫨宸ュ簭">
+      <el-option label="鍏ㄩ儴" value="0"></el-option>
+      <el-option label="鍒囧壊" value="1"></el-option>
+      <el-option label="纾ㄨ竟" value="2"></el-option>
+      <el-option label="閽㈠寲" value="3"></el-option>
+    </el-select>
+    <el-button type="primary" @click="selectReportData()">鏌ヨ</el-button>
+    <el-button type="success">鎶ュ伐</el-button>
+    <el-table height="100%" ref="table" :data="reportData"
+      :header-cell-style="{ background: '#F2F3F5 ', color: '#1D2129' }">
+      <el-table-column prop="reportData.line" align="center" label="绾胯矾" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="宸ュ簭" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="鐜荤拑id" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="宸ョ▼鍙�" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="閽㈠寲鐗堝浘id" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="鐢熶骇鏃堕棿" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="澶囨敞" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="绫诲瀷" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="鐘舵��" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="娴佺▼鍗�" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="搴忓彿" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="灞�" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="鐮存崯绫诲瀷" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="鐮存崯鍘熷洜" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="璐d换宸ュ簭" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="璐d换浜哄憳" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="璐d换鐝粍" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="璐d换璁惧" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="鎶ュ伐鐝粍" min-width="120" />
+      <el-table-column prop="reportData.line" align="center" label="鎶ュ伐璁惧" min-width="120" />
+    </el-table>
+  </div>
+</template>
+<script setup>
+import { Delete, Upload } from '@element-plus/icons-vue'
+import { ElMessage, ElMessageBox } from 'element-plus'
+import { ref, onMounted, onBeforeUnmount, reactive, computed, shallowRef, onUnmounted, watchEffect } from "vue";
+import request from "@/utils/request"
+import { WebSocketHost, host } from '@/utils/constants'
+import { initializeWebSocket, closeWebSocket } from '@/utils/WebSocketService';
+import { useI18n } from 'vue-i18n'
+const { t } = useI18n()
+const report = ref({
+  type: '',
+  status: '',
+  workProcedure: '',
+});
+const reportData = ref([])
+const timeRange = ref([new Date(2000, 10, 10), new Date(2200, 10, 11)])
+
+
+// 鏌ヨ鏁版嵁
+const selectReportData = async () => {
+  console.log(timeRange.value[0])
+  const response = await request.post("/loadGlass/damage/selectDamage", {
+    startTime: timeRange.value[0],
+    endTime: timeRange.value[1],
+    type: report.value.type,
+    status: report.value.status,
+    workProcedure: report.value.workProcedure,
+  })
+  if (response.code === 200) {
+    reportData.value = response.data;
+    ElMessage.success(response.message);
+  } else {
+    ElMessage.error(response.message);
+  }
+};
+
+const socketUrl = `ws://${WebSocketHost}:${host}/api/temperingGlass/api/talk/screen`;
+const handleMessage = (data) => {
+  // adjustedRects.value = data.device[0].map(rect => ({  
+  //       ...rect, 
+  //       completed: rect.completedQuantity,
+  //       breakage: rect.breakageQuantity,
+  //       thisProcess: rect.thisProcess,
+  //     })); 
+};
+let socket;
+onMounted(() => {
+  socket = new WebSocket(socketUrl);
+  socket.onmessage = (event) => {
+    const data = JSON.parse(event.data);
+
+    // updateCharts();
+  };
+  // };  
+});
+
+
+
+
+onUnmounted(() => {
+  socket.close();
+});
+
+onMounted(() => {
+  // fetchFlowCardId();
+  // fetchTableData(); // 鑾峰彇鏁版嵁
+  initializeWebSocket(socketUrl, handleMessage);
+});
+onBeforeUnmount(() => {
+  console.log("鍏抽棴浜�")
+  closeWebSocket();
+});
+</script>
+
+<style scoped></style>
\ No newline at end of file
diff --git a/UI-Project/src/views/Slicecage/slicecage.vue b/UI-Project/src/views/Slicecage/slicecage.vue
index dc2e16a..9831a59 100644
--- a/UI-Project/src/views/Slicecage/slicecage.vue
+++ b/UI-Project/src/views/Slicecage/slicecage.vue
@@ -467,10 +467,13 @@
   tableDatab.value = data.temperingGlassInfoList[0]
   tableDatae.value = data.bigStorageCageUsage[0]
   carPosition.value = data.carPostion[0]
-  console.log(carPosition.value);
-  window.localStorage.setItem('length', data.data.bigStorageCageInfos[0][1].length)
+  
+  // console.log(carPosition.value);
+  window.localStorage.setItem('length', data.bigStorageCageInfos[0][1].length)
   let length = window.localStorage.getItem('length')
-  adjustedRects.value = data.data.bigStorageCageInfos[0][1].map(rect => ({  
+  // alert(length);
+  
+  adjustedRects.value = data.bigStorageCageInfos[0][1].map(rect => ({  
             ...rect, 
             height: 20/length,
             top: 29/length
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/controller/DamageController.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/controller/DamageController.java
index b821404..9cd2ca4 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/controller/DamageController.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/controller/DamageController.java
@@ -5,14 +5,14 @@
 import com.mes.damage.entity.Damage;
 import com.mes.damage.service.DamageService;
 import com.mes.utils.Result;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.*;
 
-import org.springframework.web.bind.annotation.RestController;
-
+import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 /**
  * <p>
@@ -22,6 +22,7 @@
  * @author wu
  * @since 2024-06-25
  */
+@Api(description = "鎶ュ伐淇℃伅")
 @RestController
 @RequestMapping("/damage")
 public class DamageController {
@@ -29,20 +30,27 @@
     @Autowired
     private DamageService damageService;
     @ApiOperation("鎶ュ伐鏁版嵁鏌ヨ")
-    @GetMapping("/selectDamage")
-    public Result selectDamage(DateTime startTime , DateTime endTime,int type,int status,int workingProcedureId) {
-        return Result.build(200,"鏌ヨ鎴愬姛",damageService.selectDamage(startTime,endTime,type,status,workingProcedureId));
+    @ResponseBody
+    @PostMapping("/selectDamage")
+    public Result selectDamage(@RequestBody Map map) {
+        String startTime=map.get("startTime").toString();
+        String endTime=map.get("endTime").toString();
+        int type =Integer.parseInt(map.get("type").toString());
+        int status =Integer.parseInt(map.get("status").toString());
+        int workingProcedure =Integer.parseInt(map.get("workingProcedure").toString());
+//        String startTime , String endTime, int type, int status, int workingProcedure
+        return Result.build(200,"鏌ヨ鎴愬姛",damageService.selectDamage(startTime,endTime,type,status,workingProcedure));
     }
 
     @ApiOperation("鎶ュ伐")
-    @GetMapping("/submitDamage")
+    @PostMapping("/submitDamage")
     public Result submitDamage(DateTime startTime , DateTime endTime,int type,int status,int workingProcedureId) {
         damageService.submitDamage(startTime,endTime,type,status,workingProcedureId);
         return Result.build(200,"鎶ュ伐鎴愬姛",1);
     }
 
     @ApiOperation("鎶ュ伐鏁版嵁淇敼")
-    @GetMapping("/updateDamage")
+    @PostMapping("/updateDamage")
     public Result updateDamage(List<Damage> damageList) {
         damageService.updateBatchById(damageList);
         return Result.build(200,"淇敼鎴愬姛",1);
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/entity/Damage.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/entity/Damage.java
index 2d78544..52b355e 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/entity/Damage.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/entity/Damage.java
@@ -2,8 +2,9 @@
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
-import java.time.LocalDateTime;
 import java.io.Serializable;
+import java.sql.Timestamp;
+
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
@@ -52,7 +53,7 @@
     /**
      * 鐢熶骇鏃堕棿
      */
-    private LocalDateTime damageTime;
+    private Timestamp damageTime;
 
     /**
      * 澶囨敞
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/DamageService.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/DamageService.java
index 43d1142..e5acd8b 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/DamageService.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/DamageService.java
@@ -4,6 +4,7 @@
 import com.mes.damage.entity.Damage;
 import com.baomidou.mybatisplus.extension.service.IService;
 
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -16,7 +17,7 @@
  */
 public interface DamageService extends IService<Damage> {
 
-    List<Damage> selectDamage(DateTime startTime, DateTime endTime, int type, int status, int workingProcedureId);
+    List<Damage> selectDamage(String startTime, String endTime, int type, int status, int workingProcedureId);
 
     void submitDamage(DateTime startTime, DateTime endTime, int type, int status, int workingProcedureId);
 
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java
index b81f7b2..d3aa888 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java
@@ -3,7 +3,6 @@
 import cn.hutool.core.date.DateTime;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.mes.damage.entity.Damage;
 import com.mes.damage.mapper.DamageMapper;
 import com.mes.damage.service.DamageService;
@@ -16,6 +15,7 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.sql.Timestamp;
 import java.time.LocalDateTime;
 import java.util.List;
 
@@ -39,7 +39,7 @@
      * 鏌ヨ鎶ュ伐淇℃伅
      */
     @Override
-    public List<Damage> selectDamage(DateTime startTime, DateTime endTime, int type, int status, int workingProcedureId){
+    public List<Damage> selectDamage(String startTime, String endTime, int type, int status, int workingProcedure){
         LambdaQueryWrapper<Damage> damageSelectWrapper =new LambdaQueryWrapper<>();
         damageSelectWrapper.between(Damage::getDamageTime,startTime,endTime);
         if (type!=0){
@@ -48,8 +48,8 @@
         if (status!=0){
             damageSelectWrapper.eq(Damage::getStatus,status);
         }
-        if(workingProcedureId!=0){
-            damageSelectWrapper.eq(Damage::getWorkingProcedure,workingProcedureId);
+        if(workingProcedure!=0){
+            damageSelectWrapper.eq(Damage::getWorkingProcedure,workingProcedure);
         }
         return baseMapper.selectList(damageSelectWrapper);
     }
@@ -96,7 +96,7 @@
         damage.setProcessId(glassInfo.getFlowCardId());
         damage.setOrderNumber(glassInfo.getGlassType());
         damage.setTechnologyNumber(glassInfo.getLayer());
-        damage.setDamageTime(LocalDateTime.now());
+        damage.setDamageTime(Timestamp.valueOf(LocalDateTime.now()));
         damage.setType(2);
         baseMapper.insert(damage);
     }
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/GlassInfoService.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/GlassInfoService.java
index fc7e13f..fd74acf 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/GlassInfoService.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/GlassInfoService.java
@@ -24,13 +24,13 @@
        */
       void saveGlassInfo(List<GlassInfo> glassinfo);
 
-      int getGlassInfoCountByFlowCardId(String flowCardId,int layer);
+//      int getGlassInfoCountByFlowCardId(String flowCardId,int layer);
 
       /**
        * @return
        * 鏌ヨ鎵�鏈夊伐绋嬬姸鎬佷笉涓�300涓嶅悓娴佺▼鍗″彿
        */
-      List<Map<String, Object>> getFlowCardId();
+//      List<Map<String, Object>> getFlowCardId();
 
 
 
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/tools/WebSocketServer.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/tools/WebSocketServer.java
index 11ce5dd..3273f94 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/tools/WebSocketServer.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/tools/WebSocketServer.java
@@ -96,7 +96,7 @@
      *
      * @param message 瀹㈡埛绔彂閫佽繃鏉ョ殑娑堟伅
      */
-    @OnMessage
+    @OnMessage(maxMessageSize = 5242880)
     public void onMessage(String message, Session session, @PathParam("username") String username) {
         log.info("鏈嶅姟绔敹鍒扮敤鎴穟sername={}鐨勬秷鎭�:{}", username, message);
         JSONObject obj = JSONUtil.parseObj(message);
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/work_assignment/controller/WorkAssignmentController.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/work_assignment/controller/WorkAssignmentController.java
index 2384256..9b35277 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/work_assignment/controller/WorkAssignmentController.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/work_assignment/controller/WorkAssignmentController.java
@@ -5,9 +5,11 @@
 import com.mes.damage.service.DamageService;
 import com.mes.utils.Result;
 import com.mes.work_assignment.service.WorkAssignmentService;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
@@ -20,14 +22,15 @@
  * @author wu
  * @since 2024-07-01
  */
+@Api(description = "鍊肩彮淇℃伅")
 @RestController
-@RequestMapping("/work_assignment/work-assignment")
+@RequestMapping("/work_assignment")
 public class WorkAssignmentController {
 
     @Autowired
     private WorkAssignmentService workAssignmentService;
     @ApiOperation("鍊肩彮鏁版嵁鏌ヨ")
-    @GetMapping("/selectWorkAssignment")
+    @PostMapping("/selectWorkAssignment")
     public Result selectWorkAssignment(int line,String workingProcedure) {
         return Result.build(200,"鏌ヨ鎴愬姛",workAssignmentService.selectWorkAssignment(line,workingProcedure));
     }
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/entity/BigStorageCage.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/entity/BigStorageCage.java
index 9b6ecc4..e865c29 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/entity/BigStorageCage.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/entity/BigStorageCage.java
@@ -48,13 +48,25 @@
     /**
      * 鍚敤鐘舵��
      */
-    @ApiModelProperty(value = "鍚敤鐘舵��", position = 5)
+    @ApiModelProperty(value = "鏈�澶у帤搴�", position = 5)
+    private Integer maxThickness;
+
+    /**
+     * 鍓╀綑瀹藉害
+     */
+    @ApiModelProperty(value = "鏈�灏忓帤搴�", position = 6)
+    private Integer minThickness;
+
+    /**
+     * 鍚敤鐘舵��
+     */
+    @ApiModelProperty(value = "鍚敤鐘舵��", position = 7)
     private Integer enableState;
 
     /**
      * 鍓╀綑瀹藉害
      */
-    @ApiModelProperty(value = "鍓╀綑瀹藉害", position = 6)
+    @ApiModelProperty(value = "鍓╀綑瀹藉害", position = 8)
     private Integer remainWidth;
 
     @ApiModelProperty(hidden = true)
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
index 5b09ac0..68f61fa 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
@@ -103,6 +103,7 @@
                 glassInfoWrapper.eq(GlassInfo::getGlassId,bigStorageCageFeedTask.getGlassId());
                 GlassInfo glassInfo= glassInfoMapper.selectOne(glassInfoWrapper);
                 BeanUtils.copyProperties(glassInfo, bigStorageCageDetails);
+                bigStorageCageDetails.setBigStorageCageFeedTask(bigStorageCageFeedTask);
                 bigStorageCageDetailsList.add(bigStorageCageDetails);
             }
             return bigStorageCageDetailsList;
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java
index 7ce8d3f..baa9974 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java
@@ -241,7 +241,9 @@
         MPJLambdaWrapper<BigStorageCage> wrapper = new MPJLambdaWrapper<>();
         wrapper.selectAll(BigStorageCage.class).selectCollection(BigStorageCageDetails.class, BigStorageCage::getBigStorageCageDetails)
                 .leftJoin(BigStorageCageDetails.class, on -> on.eq(BigStorageCageDetails::getSlot, BigStorageCage::getSlot)
-                        .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN, Const.GLASS_STATE_ARTIFICIAL));
+                        .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN, Const.GLASS_STATE_ARTIFICIAL))
+                        .orderByAsc(BigStorageCage::getDeviceId)
+                        .orderByAsc(BigStorageCage::getSlot);
         return bigStorageCageMapper.selectJoinList(BigStorageCage.class, wrapper);
     }
 
@@ -262,7 +264,7 @@
     @Override
     public List<Map<String, Object>> selectBigStorageCageUsage() {
         QueryWrapper<BigStorageCage> wrapper = new QueryWrapper<>();
-        wrapper.select("device_id,ROUND(1 - SUM(CASE WHEN remain_width = 5000 THEN 1 ELSE 0 END) / COUNT(device_id), 2) AS percentage,COUNT(device_id) - SUM(CASE WHEN remain_width = 5000 THEN 1 ELSE 0 END) AS count")
+        wrapper.select("device_id,ROUND(1 - SUM(CASE WHEN remain_width = 5000 THEN 1 ELSE 0 END) / COUNT(device_id), 2) AS percentage,SUM(CASE WHEN remain_width = 5000 THEN 1 ELSE 0 END) AS count")
 
                 .groupBy("device_id");
         List<Map<String, Object>> bigStorageCageUsages = baseMapper.selectMaps(wrapper);
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcSlicecage.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcSlicecage.java
index e200106..71b287c 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcSlicecage.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcSlicecage.java
@@ -39,7 +39,7 @@
         carPostion.add(0.5);
         jsonObject.append("carPostion",carPostion);
         //鐣岄潰灞曠ず绗煎瓙淇℃伅
-        jsonObject.append("bigStorageCageInfos", bigStorageCageService.querybigStorageCageDetail());
+//        jsonObject.append("bigStorageCageInfos", bigStorageCageService.querybigStorageCageDetail());
 
         //杩涚墖浠诲姟鏁版嵁
         List<BigStorageCageDetails> bigStorageCageDetailsFeedTask=bigStorageCageDetailsService.selectTask(1);
@@ -80,6 +80,7 @@
             if (sendwServer != null) {
                 for (WebSocketServer webserver : sendwServer) {
                     if (webserver != null) {
+
                         webserver.sendMessage(jsonObject.toString());
                         List<String> messages = webserver.getMessages();
                         if (!messages.isEmpty()) {

--
Gitblit v1.8.0