From 06a852184f2711e72ae06650a793e52334bdefe0 Mon Sep 17 00:00:00 2001 From: 严智鑫 <test> Date: 星期三, 22 五月 2024 10:19:57 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes --- UI-Project/src/views/Identify/identify.vue | 121 ++++++++++++++++++++++++++++++++++----- 1 files changed, 104 insertions(+), 17 deletions(-) diff --git a/UI-Project/src/views/Identify/identify.vue b/UI-Project/src/views/Identify/identify.vue index 5e2bc03..84ef2b6 100644 --- a/UI-Project/src/views/Identify/identify.vue +++ b/UI-Project/src/views/Identify/identify.vue @@ -7,32 +7,31 @@ > <div v-for="(rect, index) in adjustedRects" - :key="index" + :key="rect.glass_id" class="rect" - @click="handleBind" - :style="{ position: 'absolute', top: `${rect.y_axis}px`, left: `${rect.x_axis}px`, width: `${rect.width}px`, height: `${rect.height}px` }" + @click="showDialog(rect.glass_id)" + :style="{ position: 'absolute', + top: `${rect.y_axis}px`, left: `${rect.x_axis}px`, width: `${rect.width}px`, height: `${rect.height}px`, + backgroundColor: getRectColor(rect.glass_state) + }" > <!-- 绠ご --> <!-- <div id="arrow"></div> <div id="line"></div> --> <!-- <div class="centered-text" >NG24030401B01</div> --> <div class="centered-text"> - <div>{{ rect.process_id }}</div> + <div>{{ rect.process_id }}</div> <div style="margin-top: 50px;margin-left: -85px;">{{ rect.width }}*{{ rect.height }}</div> </div> </div> <!-- 鐐瑰嚮寮瑰嚭 --> <el-dialog v-model="blind" top="30vh" width="15%" style="text-align: center;"> - <!-- <template #footer> --> - <!-- <div id="dialog-footer"> --> - <el-button type="warning" plain :icon="Delete" @click="handle" style="width: 120px;margin-left: 10px;"> + <el-button type="warning" plain :icon="Delete" @click="handleDamage(currentGlassId)" style="width: 120px;margin-left: 10px;"> 鐮存崯 </el-button> - <el-button type="danger" plain @click="blind = false" style="width: 120px;margin-top: 10px;"> + <el-button type="danger" plain @click="handleManualTake(currentGlassId)" style="width: 120px;margin-top: 10px;"> <el-icon class="el-icon--right"><Upload /></el-icon> 浜哄伐鎷胯蛋</el-button> - <!-- </div> --> - <!-- </template> --> </el-dialog> </div> </div> @@ -42,18 +41,25 @@ <script setup lang="ts"> import { Delete, Upload } from '@element-plus/icons-vue' +import { ElMessage, ElMessageBox } from 'element-plus' import { ref, onMounted } from 'vue'; import request from "@/utils/request" const blind = ref(false) const olWidth = ref(); const olHeight = ref(); const process_id = ref(); // 鐢ㄤ簬瀛樺偍process_id鐨勫搷搴斿紡寮曠敤 +const glass_id = ref(); // const rects = ref([]); // 鐢ㄤ簬瀛樺偍鐭╁舰鏁版嵁鐨勫搷搴斿紡寮曠敤 +const currentGlassId = ref(null); // 瀛樺偍褰撳墠鐐瑰嚮鐭╁舰鐨� glass_id const adjustedRects = ref([]); -const handleBind = (row) => { - - blind.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗� -}; +// const handleBind = (row) => { +// blind.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗� +// }; +// 鏄剧ず瀵硅瘽妗嗗苟璁剧疆褰撳墠 glass_id +function showDialog(glassId: number) { + currentGlassId.value = glassId; + blind.value = true; +} onMounted(async () => { try { const response = await request.post('/cacheGlass/taskCache/currentCutTerritory'); // 鏇挎崲涓轰綘鐨凙PI绔偣 @@ -61,10 +67,11 @@ // const process_id = response.data[0].process_id const rawRects = response.data; // 璁剧疆鐭╁舰鏁版嵁 console.log(response.data); - const { olWidth: newolWidth, olHeight: newolHeight, process_id: newprocess_id } = response.data; // 鑾峰彇灏哄 + const { olWidth: newolWidth, olHeight: newolHeight, process_id: newprocess_id ,glass_id:newglass_id } = response.data; // 鑾峰彇灏哄 olWidth.value = newolWidth; // 璁剧疆瀹瑰櫒瀹藉害 olHeight.value = newolHeight; // 璁剧疆瀹瑰櫒楂樺害 process_id.value = newprocess_id; + glass_id.value = newglass_id; adjustedRects.value = rawRects.map(rect => ({ ...rect, // 澶嶅埗鍘熷瀵硅薄鐨勫叾浠栧睘鎬� @@ -72,7 +79,9 @@ y_axis: (rect.y_axis*100) * 0.005, width: (rect.width*100) * 0.004 , height:( rect.height*100) * 0.004 , + glass_state: rect.glass_state })); + console.log(rect); // console.log( (rect.width*100) / 300 ); @@ -84,13 +93,91 @@ // console.error('Error fetching rectangles :', error); console.error('Error fetching rects :', error); } -}); +}); +// 鐮存崯 +const handleDamage = async () => { + try { + var url="/cacheGlass/taskCache/identControls?identId="+currentGlassId.value+'&controlsId='+201; + console.log(url); + const response = await request.post(url) + // const response = await request.post('/cacheGlass/taskCache/identControls', { + // identId: currentGlassId.value, + // controlsId: 201, + // }) + if (response.code == 200) { + // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫 + ElMessage.success(response.message); + // window.location.reload() + blind.value = false; + updateRectStatus(currentGlassId.value, 201); + } else { + // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭� + ElMessage.error(response.msg); + } +} +catch (error) { + // 澶勭悊閿欒 + console.error(error); + } +} +// // 浜哄伐鎷胯蛋 +const handleManualTake = async () => { + try { + var url="/cacheGlass/taskCache/identControls?identId="+currentGlassId.value+'&controlsId='+200; + console.log(url); + const response = await request.post(url) + // const response = await request.post('/cacheGlass/taskCache/identControls', { + // identId: currentGlassId.value, + // controlsId: 200, + // }) + if (response.code == 200) { + // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫 + ElMessage.success(response.message); + // window.location.reload() + blind.value = false; + updateRectStatus(currentGlassId.value, 200); + } else { + // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭� + ElMessage.error(response.msg); + } +} +catch (error) { + // 澶勭悊閿欒 + console.error(error); + } +} +function getRectColor(state: number): string { + switch (state) { + case 0: + return '#e1f3d8'; + case 100: + return '#c8c9cc'; + case 110: + return '#b3e19d'; + case 120: + return '#f89898'; + case 200: + return 'lightblue'; + case 201: + return '#f3d19e'; + default: + return '#911005'; // 榛樿棰滆壊 + } +} +// 鏇存柊鐭╁舰鐘舵�� +function updateRectStatus(glassId: string, status: number) { + adjustedRects.value.forEach(rect => { + if (rect.glass_id === glassId) { + rect.glass_state = status; // 鏇存柊鐭╁舰鐨勭姸鎬� + } + }); +} </script> <style scoped> .rect { border: 1px solid black; /* 璁剧疆鐭╁舰鐨勮竟妗� */ - background-color: lightblue; /* 璁剧疆鐭╁舰鐨勮儗鏅壊 */ + /* background-color: lightblue; 璁剧疆鐭╁舰鐨勮儗鏅壊 */ } .centered-text { /* 璁剧疆鏂囧瓧灞呬腑鏍峰紡 */ -- Gitblit v1.8.0