From bb37f664476c01aefd93dd9b8856851f11d4d3cf Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期一, 15 七月 2024 08:48:02 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes
---
hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java | 4
hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java | 4
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java | 76 +-
UI-Project/src/views/Caching/cachingbefore.vue | 2
hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/impl/OptimizeLayoutServiceImpl.java | 22
hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/OptimizeLayoutService.java | 16
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml | 24
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java | 18
UI-Project/src/assets/ypccche.png | 0
UI-Project/src/assets/ypcc.png | 0
UI-Project/package.json | 3
UI-Project/src/views/largescreen/largescreen.vue | 482 +++++++++++---------
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/mapper/DownGlassInfoMapper.java | 21
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationService.java | 9
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/entity/EdgStorageCage.java | 1
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/dto/DownGlassInfoDTO.java | 7
UI-Project/src/lang/zh.js | 57 ++
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java | 11
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java | 2
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java | 2
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/common/S7object.java | 9
/dev/null | 311 -------------
UI-Project/src/views/PurchaseReturn/purchaseStorage.vue | 2
UI-Project/src/main.js | 6
hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/mapper/OptimizeLayoutMapper.java | 20
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/controller/DownWorkstationController.java | 108 +---
UI-Project/package-lock.json | 107 ++++
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/controller/EdgStorageCageController.java | 12
28 files changed, 640 insertions(+), 696 deletions(-)
diff --git a/UI-Project/package-lock.json b/UI-Project/package-lock.json
index df7b41a..d8cc8aa 100644
--- a/UI-Project/package-lock.json
+++ b/UI-Project/package-lock.json
@@ -12,7 +12,7 @@
"@vue-macros/reactivity-transform": "^0.3.23",
"axios": "^1.6.8",
"chart.js": "^4.4.3",
- "echarts": "^5.5.0",
+ "echarts": "^5.5.1",
"element-plus": "^2.4.0",
"moment": "^2.30.1",
"pinia": "^2.1.6",
@@ -21,6 +21,7 @@
"sweetalert2": "^11.10.7",
"vue": "^3.3.4",
"vue-draggable-plus": "^0.5.0",
+ "vue-echarts": "^6.7.3",
"vue-i18n": "^9.10.1",
"vue-router": "^4.2.4",
"vxe-table": "^4.5.15",
@@ -762,12 +763,12 @@
"integrity": "sha512-M/MERVDZ8hguvjl6MAlLWSLYLS7PzEyXaTb5gEeJ+SF+e9iUC0sdvlzqe91MMDHBoy+nqw7wKcUOrDSyvMCrRg=="
},
"node_modules/echarts": {
- "version": "5.5.0",
- "resolved": "https://registry.npmmirror.com/echarts/-/echarts-5.5.0.tgz",
- "integrity": "sha512-rNYnNCzqDAPCr4m/fqyUFv7fD9qIsd50S6GDFgO1DxZhncCsNsG7IfUlAlvZe5oSEQxtsjnHiUuppzccry93Xw==",
+ "version": "5.5.1",
+ "resolved": "https://registry.npmmirror.com/echarts/-/echarts-5.5.1.tgz",
+ "integrity": "sha512-Fce8upazaAXUVUVsjgV6mBnGuqgO+JNDlcgF79Dksy4+wgGpQB2lmYoO4TSweFg/mZITdpGHomw/cNBJZj1icA==",
"dependencies": {
"tslib": "2.3.0",
- "zrender": "5.5.0"
+ "zrender": "5.6.0"
}
},
"node_modules/element-plus": {
@@ -1351,6 +1352,11 @@
"integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
"dev": true
},
+ "node_modules/resize-detector": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmmirror.com/resize-detector/-/resize-detector-0.3.0.tgz",
+ "integrity": "sha512-R/tCuvuOHQ8o2boRP6vgx8hXCCy87H1eY9V5imBYeVNyNVpuL9ciReSccLj2gDcax9+2weXy3bc8Vv+NRXeEvQ=="
+ },
"node_modules/reusify": {
"version": "1.0.4",
"resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz",
@@ -1676,6 +1682,55 @@
}
}
},
+ "node_modules/vue-echarts": {
+ "version": "6.7.3",
+ "resolved": "https://registry.npmmirror.com/vue-echarts/-/vue-echarts-6.7.3.tgz",
+ "integrity": "sha512-vXLKpALFjbPphW9IfQPOVfb1KjGZ/f8qa/FZHi9lZIWzAnQC1DgnmEK3pJgEkyo6EP7UnX6Bv/V3Ke7p+qCNXA==",
+ "hasInstallScript": true,
+ "dependencies": {
+ "resize-detector": "^0.3.0",
+ "vue-demi": "^0.13.11"
+ },
+ "peerDependencies": {
+ "@vue/composition-api": "^1.0.5",
+ "@vue/runtime-core": "^3.0.0",
+ "echarts": "^5.4.1",
+ "vue": "^2.6.12 || ^3.1.1"
+ },
+ "peerDependenciesMeta": {
+ "@vue/composition-api": {
+ "optional": true
+ },
+ "@vue/runtime-core": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vue-echarts/node_modules/vue-demi": {
+ "version": "0.13.11",
+ "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz",
+ "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==",
+ "hasInstallScript": true,
+ "bin": {
+ "vue-demi-fix": "bin/vue-demi-fix.js",
+ "vue-demi-switch": "bin/vue-demi-switch.js"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ },
+ "peerDependencies": {
+ "@vue/composition-api": "^1.0.0-rc.1",
+ "vue": "^3.0.0-0 || ^2.6.0"
+ },
+ "peerDependenciesMeta": {
+ "@vue/composition-api": {
+ "optional": true
+ }
+ }
+ },
"node_modules/vue-i18n": {
"version": "9.13.1",
"resolved": "https://registry.npmmirror.com/vue-i18n/-/vue-i18n-9.13.1.tgz",
@@ -1777,9 +1832,9 @@
}
},
"node_modules/zrender": {
- "version": "5.5.0",
- "resolved": "https://registry.npmmirror.com/zrender/-/zrender-5.5.0.tgz",
- "integrity": "sha512-O3MilSi/9mwoovx77m6ROZM7sXShR/O/JIanvzTwjN3FORfLSr81PsUGd7jlaYOeds9d8tw82oP44+3YucVo+w==",
+ "version": "5.6.0",
+ "resolved": "https://registry.npmmirror.com/zrender/-/zrender-5.6.0.tgz",
+ "integrity": "sha512-uzgraf4njmmHAbEUxMJ8Oxg+P3fT04O+9p7gY+wJRVxo8Ge+KmYv0WJev945EH4wFuc4OY2NLXz46FZrWS9xJg==",
"dependencies": {
"tslib": "2.3.0"
}
@@ -2317,12 +2372,12 @@
"integrity": "sha512-M/MERVDZ8hguvjl6MAlLWSLYLS7PzEyXaTb5gEeJ+SF+e9iUC0sdvlzqe91MMDHBoy+nqw7wKcUOrDSyvMCrRg=="
},
"echarts": {
- "version": "5.5.0",
- "resolved": "https://registry.npmmirror.com/echarts/-/echarts-5.5.0.tgz",
- "integrity": "sha512-rNYnNCzqDAPCr4m/fqyUFv7fD9qIsd50S6GDFgO1DxZhncCsNsG7IfUlAlvZe5oSEQxtsjnHiUuppzccry93Xw==",
+ "version": "5.5.1",
+ "resolved": "https://registry.npmmirror.com/echarts/-/echarts-5.5.1.tgz",
+ "integrity": "sha512-Fce8upazaAXUVUVsjgV6mBnGuqgO+JNDlcgF79Dksy4+wgGpQB2lmYoO4TSweFg/mZITdpGHomw/cNBJZj1icA==",
"requires": {
"tslib": "2.3.0",
- "zrender": "5.5.0"
+ "zrender": "5.6.0"
}
},
"element-plus": {
@@ -2722,6 +2777,11 @@
"integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
"dev": true
},
+ "resize-detector": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmmirror.com/resize-detector/-/resize-detector-0.3.0.tgz",
+ "integrity": "sha512-R/tCuvuOHQ8o2boRP6vgx8hXCCy87H1eY9V5imBYeVNyNVpuL9ciReSccLj2gDcax9+2weXy3bc8Vv+NRXeEvQ=="
+ },
"reusify": {
"version": "1.0.4",
"resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz",
@@ -2927,6 +2987,23 @@
"@types/sortablejs": "^1.15.8"
}
},
+ "vue-echarts": {
+ "version": "6.7.3",
+ "resolved": "https://registry.npmmirror.com/vue-echarts/-/vue-echarts-6.7.3.tgz",
+ "integrity": "sha512-vXLKpALFjbPphW9IfQPOVfb1KjGZ/f8qa/FZHi9lZIWzAnQC1DgnmEK3pJgEkyo6EP7UnX6Bv/V3Ke7p+qCNXA==",
+ "requires": {
+ "resize-detector": "^0.3.0",
+ "vue-demi": "^0.13.11"
+ },
+ "dependencies": {
+ "vue-demi": {
+ "version": "0.13.11",
+ "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz",
+ "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==",
+ "requires": {}
+ }
+ }
+ },
"vue-i18n": {
"version": "9.13.1",
"resolved": "https://registry.npmmirror.com/vue-i18n/-/vue-i18n-9.13.1.tgz",
@@ -2994,9 +3071,9 @@
}
},
"zrender": {
- "version": "5.5.0",
- "resolved": "https://registry.npmmirror.com/zrender/-/zrender-5.5.0.tgz",
- "integrity": "sha512-O3MilSi/9mwoovx77m6ROZM7sXShR/O/JIanvzTwjN3FORfLSr81PsUGd7jlaYOeds9d8tw82oP44+3YucVo+w==",
+ "version": "5.6.0",
+ "resolved": "https://registry.npmmirror.com/zrender/-/zrender-5.6.0.tgz",
+ "integrity": "sha512-uzgraf4njmmHAbEUxMJ8Oxg+P3fT04O+9p7gY+wJRVxo8Ge+KmYv0WJev945EH4wFuc4OY2NLXz46FZrWS9xJg==",
"requires": {
"tslib": "2.3.0"
}
diff --git a/UI-Project/package.json b/UI-Project/package.json
index 7a586a0..3a98cb7 100644
--- a/UI-Project/package.json
+++ b/UI-Project/package.json
@@ -12,7 +12,7 @@
"@vue-macros/reactivity-transform": "^0.3.23",
"axios": "^1.6.8",
"chart.js": "^4.4.3",
- "echarts": "^5.5.0",
+ "echarts": "^5.5.1",
"element-plus": "^2.4.0",
"moment": "^2.30.1",
"pinia": "^2.1.6",
@@ -21,6 +21,7 @@
"sweetalert2": "^11.10.7",
"vue": "^3.3.4",
"vue-draggable-plus": "^0.5.0",
+ "vue-echarts": "^6.7.3",
"vue-i18n": "^9.10.1",
"vue-router": "^4.2.4",
"vxe-table": "^4.5.15",
diff --git a/UI-Project/src/assets/ypcc.png b/UI-Project/src/assets/ypcc.png
new file mode 100644
index 0000000..fdca249
--- /dev/null
+++ b/UI-Project/src/assets/ypcc.png
Binary files differ
diff --git a/UI-Project/src/assets/ypccche.png b/UI-Project/src/assets/ypccche.png
new file mode 100644
index 0000000..96f75d0
--- /dev/null
+++ b/UI-Project/src/assets/ypccche.png
Binary files differ
diff --git a/UI-Project/src/lang/zh.js b/UI-Project/src/lang/zh.js
index 1c0b3b0..224e10b 100644
--- a/UI-Project/src/lang/zh.js
+++ b/UI-Project/src/lang/zh.js
@@ -90,8 +90,8 @@
width:'瀹�',
height:'楂�',
startstatus:'鍚敤鐘舵��',
- disable:'绂佺敤',
- start:'鍚敤',
+ disable:'宸茬鐢�',
+ start:'宸插惎鐢�',
deficiencieste:'鎶ョ己',
updown:'浜哄伐涓嬬墖',
operate:'鎿嶄綔',
@@ -159,7 +159,6 @@
inglassgaps:'璇疯緭鍏ョ幓鐠冮棿闅�',
sure:'纭',
cancel:'鍙栨秷',
- glassID:'鐜荤拑ID',
operate:'鎿嶄綔',
breakage:'鐮存崯',
delete:'鍒犻櫎',
@@ -169,8 +168,8 @@
gridnumber:'鏍呮牸鍙�',
gridnumbera:'鏍呮牸鍙凤細',
grid:'璇疯緭鍏ユ爡鏍煎彿',
- enable:'鍚敤',
- disable:'绂佺敤',
+ enable:'宸插惎鐢�',
+ disable:'宸茬鐢�',
remainingwidth:'鍓╀綑瀹藉害',
add:'娣诲姞',
sheetID:'閽㈠寲灏忕墖淇℃伅琛↖D',
@@ -238,7 +237,7 @@
state:'鐘舵��',
devicenumber:'璁惧鍙�',
startstatus:'鍚敤鐘舵��',
- enable:'鍚敤',
+ enable:'宸插惎鐢�',
unenable:'鏈惎鐢�',
operate:'鎿嶄綔',
bindingshelves:'缁戝畾鏋跺瓙',
@@ -368,4 +367,50 @@
materialName :'鐗╂枡鍚嶇О',
createTime :'杩斿簱鏃ユ湡',
},
+ large:{
+ time: '娆$牬鏃堕棿',
+ number: '璁㈠崟鍙�',
+ jobnumber: '鎶ュ伐缂栧彿',
+ productionnumber: '鐢熶骇璁㈠崟鍙�',
+ cardnumber: '娴佺▼鍗″彿',
+ projectname: '椤圭洰鍚嶇О',
+ batch: '鎵规',
+ detailID: '鏄庣粏ID',
+ building: '妤煎彿',
+ serialnumber: '璁㈠崟搴忓彿',
+ productname: '浜у搧鍚嶇О',
+ serial: '宸ヨ壓纭搴忓彿',
+ slicemarker: '鐗囨爣璁帮紙浣嶇疆锛�',
+ numberpatches: '琛ョ墖鏁伴噺',
+ width: '瀹�',
+ height: '楂�',
+ shape: '褰㈢姸',
+ responsibleprocess: '璐d换宸ュ簭',
+ process: '鏈伐搴�',
+ numberfractions: '娆$牬鏈ˉ鏁伴噺',
+ breakreason: '娆$牬鍘熷洜',
+ breaktype: '娆$牬绫诲瀷',
+ responsiblepersonnel: '璐d换浜哄憳',
+ responsiblequipment: '璐d换璁惧',
+ responsibleteam: '璐d换鐝粍',
+ area: '娆$牬闈㈢Н',
+ inspector: '璐ㄦ鍛�',
+ operate: '鎿嶄綔',
+ mes: '璇︽儏',
+ projectnumber: '宸ョ▼鍗曞彿',
+ brokeno: '鎶ユ鐮存湭琛�',
+ close: '鍏抽棴',
+ orderId: '璁㈠崟ID',
+ customerName: '瀹㈡埛鍚嶇О',
+ project: '椤圭洰鍚嶇О',
+ are: '闈㈢Н',
+ quantity: '鍖呰鏂瑰紡',
+ warehousing: '鐘舵��',
+ deliveryDate: '閫佽揣鏃堕棿',
+ notstocked: '鏈叆搴�',
+ inboundstatus: '閮ㄥ垎鍏ュ簱鐘舵��',
+ allstatus: '鍏ㄩ儴鍏ュ簱鐘舵��',
+
+
+ }
}
\ No newline at end of file
diff --git a/UI-Project/src/main.js b/UI-Project/src/main.js
index b8b328b..7f48d13 100644
--- a/UI-Project/src/main.js
+++ b/UI-Project/src/main.js
@@ -11,7 +11,13 @@
import VXETable from 'vxe-table'
import 'vxe-table/lib/style.css'
import i18n from '@/lang'
+// import Echarts from "vue-echarts"
+import * as echarts from "echarts"
+// echarts.registerMap('china', china)
+// Vue.prototype.$echarts = echarts
+// app.component("v-chart", Echarts)
+// app.config.globalProperties.$echarts = echarts
const app = createApp(App)
const pinia = createPinia()
pinia.use(piniaPluginPersistedstate )
diff --git a/UI-Project/src/views/Caching/cachingbefore.vue b/UI-Project/src/views/Caching/cachingbefore.vue
index 04a819f..e58befc 100644
--- a/UI-Project/src/views/Caching/cachingbefore.vue
+++ b/UI-Project/src/views/Caching/cachingbefore.vue
@@ -42,7 +42,7 @@
const toggleEnableState = async (row) => {
const newState = row.enable_state === 1 ? 0 : 1;
// 鍙戦�佽姹傚埌鍚庣鏇存柊鐘舵�侊紙杩欓噷鐪佺暐浜嗗疄闄呯殑璇锋眰閫昏緫锛�
- const response = await request.post('/cacheGlass/edgStorageCage/updateEdgStorageCage', { id: row.id, enablestate: newState });
+ const response = await request.post('/cacheGlass/edgStorageCage/updateEdgStorageCage', { id: row.id, enableState: newState });
if (response.code === 200) {
ElMessage.success(response.message);
} else {
diff --git a/UI-Project/src/views/PurchaseReturn/purchaseStorage.vue b/UI-Project/src/views/PurchaseReturn/purchaseStorage.vue
index 10bf427..d987eb8 100644
--- a/UI-Project/src/views/PurchaseReturn/purchaseStorage.vue
+++ b/UI-Project/src/views/PurchaseReturn/purchaseStorage.vue
@@ -38,7 +38,7 @@
widtha: rect.width,
heighta: rect.height,
}));
- console.log(data.intoGlass[0]);
+ console.log(adjustedRects.value);
};
onMounted(() => {
// fetchFlowCardId();
diff --git a/UI-Project/src/views/largescreen/largescreen.vue b/UI-Project/src/views/largescreen/largescreen.vue
index a972dbe..4f2d4ae 100644
--- a/UI-Project/src/views/largescreen/largescreen.vue
+++ b/UI-Project/src/views/largescreen/largescreen.vue
@@ -1,211 +1,291 @@
<template>
<el-card style="flex: 1;margin-left: 10px;margin-top: 10px;margin-right: 10px;" v-loading="loading">
<el-scrollbar height="600px">
- <div id="app" style="margin-top: 20px;">
- <div
- :style="{ width: `${olWidth}px`, height: `${olHeight}px`,position: 'relative' }"
- >
- <div
- v-for="(rect, index) in adjustedRects"
- :key="rect.glass_id"
- class="rect"
- @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 style="margin-top: 50px;margin-left: -85px;">{{ rect.widtha }}*{{ rect.heighta }}</div>
- </div>
+ <div id="top" style="height: 150px;display: flex;">
+ <div v-for="(rect, index) in adjustedRects"
+ :key="index"
+ :style="{ width: '1000px', height: '100px',margin: '5px',}">
+ <div ref="setChartDom(index, $el)" style="width: 100%; height: 100%;"></div>
+ <div style="text-align: center;">
+ {{ rect.thisProcess }}</div>
+ </div>
</div>
- <!-- 鐐瑰嚮寮瑰嚭 -->
- <el-dialog v-model="blind" top="30vh" width="15%" style="text-align: center;">
- <el-button type="warning" plain :icon="Delete" @click="handleDamage(currentGlassId)" style="width: 140px;margin-left: 10px;">
- {{ $t('order.dilapidation') }}
- </el-button>
- <el-button type="danger" plain @click="handleManualTake(currentGlassId)" style="width: 140px;margin-top: 10px;">
- <el-icon class="el-icon--right"><Upload /></el-icon>
- {{ $t('order.Takeaway') }}</el-button>
- </el-dialog>
- </div>
- </div>
+ <div style="display: flex;">
+ <div id="centerleft" style="margin-top: 10px;height: 240px;width: 340px;background-color: #911005;">
+ <el-table height="240" ref="table" width="340px"
+ @selection-change="handleSelectionChange"
+ :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+ <el-table-column fixed prop="orderId" align="center" :label="$t('large.number')" min-width="110" />
+ <el-table-column prop="project" align="center" :label="$t('large.projectname')" min-width="100" />
+ <el-table-column prop="responsibleProcess" align="center" :label="$t('large.responsibleprocess')" min-width="100" />
+ <el-table-column prop="breakageQuantity" align="center" :label="$t('large.numberfractions')" min-width="110" />
+ <el-table-column prop="patchProcesses" align="center" :label="$t('large.process')" min-width="100" />
+ <el-table-column fixed="right" :label="$t('large.operate')" align="center" width="100">
+ <template #default="scope">
+ <el-button size="mini" type="text" plain @click="handleBinda">{{ $t('large.mes') }}</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ </div>
+ <div id="center" style="margin-top: 10px;margin-left: 10px; height: 240px;width: 750px;">
+ <img src="../../assets/d1.png" alt="" style="margin-left: -30px; width: 110%;height: 100%;position: relative;">
+ </div>
+ <div id="centerright" style="margin-top: 10px;margin-left: 10px; height: 240px;width: 240px;background-color: #911005;">
+ <el-table height="240" ref="table" width="340px"
+ @selection-change="handleSelectionChange"
+ :data="tableDatab" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+ <el-table-column prop="projectNo" align="center" :label="$t('large.projectnumber')" min-width="50" />
+ <el-table-column prop="projectName" align="center" :label="$t('large.projectname')" min-width="50" />
+ </el-table>
+ </div>
+</div>
+<div id="bottom" style="margin-top: 10px;height: 190px;background-color: #911005;">
+ <el-table height="190" ref="table"
+ @selection-change="handleSelectionChange"
+ :data="tableDatac" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+ <el-table-column prop="orderId" align="center" :label="$t('large.orderId')" min-width="50" />
+ <el-table-column prop="customerName" align="center" :show-overflow-tooltip="true" :label="$t('large.customerName')" min-width="90" />
+ <el-table-column prop="project" align="center" :label="$t('large.project')" min-width="50" />
+ <el-table-column prop="area" align="center" :label="$t('large.are')" min-width="50" />
+ <el-table-column prop="quantity" align="center" :label="$t('large.quantity')" min-width="50" />
+ <el-table-column
+ align="center"
+ :label="$t('large.warehousing')"
+ min-width="50"
+ prop="warehousing"
+ >
+ <template #default="scope">
+ <el-tag :type="getStatusType(scope.row.warehousing)">
+ {{ getStatusText(scope.row.warehousing) }}
+ </el-tag>
+ </template>
+ </el-table-column>
+ <el-table-column prop="deliveryDate" align="center" :label="$t('large.deliveryDate')" min-width="50" />
+ </el-table>
+</div>
</el-scrollbar>
</el-card>
+ <el-dialog v-model="blinda" top="10vh" width="80%" :title="$t('large.brokeno')">
+ <el-table height="500" ref="table"
+ @selection-change="handleSelectionChange"
+ :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+ <el-table-column prop="reportingWorkTime" fixed align="center" :label="$t('large.time')" min-width="110" />
+ <el-table-column prop="orderId" fixed align="center" :label="$t('large.number')" min-width="110" />
+ <el-table-column prop="reportingWorkId" align="center" :label="$t('large.jobnumber')" min-width="120" />
+ <el-table-column prop="productionId" align="center" :label="$t('large.productionnumber')" min-width="130" />
+ <el-table-column prop="processId" align="center" :label="$t('large.cardnumber')" min-width="140" />
+ <el-table-column prop="project" align="center" :label="$t('large.projectname')" min-width="110" />
+ <el-table-column prop="batch" align="center" :label="$t('large.batch')" min-width="110" />
+ <el-table-column prop="reviewer" align="center" :label="$t('large.detailID')" min-width="110" />
+ <el-table-column prop="orderSort" align="center" :label="$t('large.serialnumber')" min-width="110" />
+ <el-table-column prop="productName" align="center" :label="$t('large.productname')" :show-overflow-tooltip="true" min-width="220" />
+ <el-table-column prop="technologyNumber" align="center" :label="$t('large.serial')" min-width="110" />
+ <el-table-column prop="glassAddress" align="center" :label="$t('large.slicemarker')" min-width="130" />
+ <el-table-column prop="patchNum" align="center" :label="$t('large.numberpatches')" min-width="110" />
+ <el-table-column prop="width" align="center" :label="$t('large.width')" min-width="110" />
+ <el-table-column prop="height" align="center" :label="$t('large.height')" min-width="110" />
+ <el-table-column prop="shape" align="center" :label="$t('large.shape')" min-width="110" />
+ <el-table-column prop="responsibleProcess" align="center" :label="$t('large.responsibleprocess')" min-width="110" />
+ <el-table-column prop="patchProcesses" align="center" :label="$t('large.process')" min-width="110" />
+ <el-table-column prop="breakageQuantity" align="center" :label="$t('large.numberfractions')" min-width="110" />
+ <el-table-column prop="patchReason" align="center" :label="$t('large.breakreason')" min-width="110" />
+ <el-table-column prop="patchType" align="center" :label="$t('large.breaktype')" min-width="110" />
+ <el-table-column prop="responsiblePersonnel" align="center" :label="$t('large.responsiblepersonnel')" min-width="110" />
+ <el-table-column prop="responsibleEquipment" align="center" :label="$t('large.responsiblequipment')" min-width="110" />
+ <el-table-column prop="responsibleTeam" align="center" :label="$t('large.responsibleteam')" min-width="110" />
+ <el-table-column prop="patchArea" align="center" :label="$t('large.area')" min-width="110" />
+ <el-table-column prop="qualityInspector" align="center" :label="$t('large.inspector')" min-width="110" />
+ </el-table>
+ <template #footer>
+ <div id="dialog-footer">
+ <el-button @click="blinda = false">{{ $t('large.close') }}</el-button>
+ </div>
+ </template>
+ </el-dialog>
</template>
-<script setup lang="ts">
+<script setup>
import { Delete, Upload } from '@element-plus/icons-vue'
import { ElMessage, ElMessageBox } from 'element-plus'
-import { ref, onMounted, onBeforeUnmount } from 'vue';
+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()
- let language = ref(localStorage.getItem('lang') || 'zh')
-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; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
-// };
-// 鏄剧ず瀵硅瘽妗嗗苟璁剧疆褰撳墠 glass_id
-function showDialog(glassId: number) {
- currentGlassId.value = glassId;
- blind.value = true;
-}
-onMounted(async () => {
- try {
- const response = await request.post('/cacheGlass/taskCache/currentCutTerritory'); // 鏇挎崲涓轰綘鐨凙PI绔偣
- if (response.code === 200) {
- // 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 ,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, // 澶嶅埗鍘熷瀵硅薄鐨勫叾浠栧睘鎬�
- x_axis: (rect.x_axis*100) * 0.003, // 灏唜鍊奸櫎浠�3
- y_axis: (rect.y_axis*100) * 0.003,
- width: (rect.width*100) * 0.002 ,
- widtha: rect.width ,
- heighta: rect.height ,
- height:( rect.height*100) * 0.002 ,
- glass_state: rect.glass_state
- }));
- console.log(adjustedRects.value);
-
-
- // console.log( (rect.width*100) / 300 );
- } else {
- // console.error('Failed to fetch rectangles from API.');
- console.error('Failed to fetch rects from API.');
- }
- } catch (error) {
- // 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) {
+import { useI18n } from 'vue-i18n'
+const { t } = useI18n()
+import * as echarts from 'echarts';
+const tableData = ref([])
+const tableDatab = ref([])
+const tableDatac = ref([])
+const adjustedRects = ref([]);
+const chartRefs = ref([]);
+const thisProcess = ref(); // 鐢ㄤ簬瀛樺偍process_id鐨勫搷搴斿紡寮曠敤
+// 瀹氫箟涓�涓搷搴斿紡寮曠敤鏉ュ瓨鍌ㄥ浘琛ㄥ疄渚�
+const chartDom = ref(null);
+let chartInstance = null;
+const blinda = ref(false)
+const handleBinda = (row) => {
+ blinda.value = true;
+};
+function getStatusType(warehousing) {
+ switch (warehousing) {
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'; // 榛樿棰滆壊
+ return 'info';
+ case 1:
+ return 'warning';
+ case 2:
+ return 'success';
+ }
+}
+function getStatusText(warehousing) {
+ switch (warehousing) {
+ case 0:
+ return t('large.notstocked');
+ case 1:
+ return t('large.inboundstatus');
+ case 2:
+ return t('large.allstatus');
+ }
+}
+const socketUrl = `ws://${WebSocketHost}:${host}/api/temperingGlass/api/talk/screen`;
+const handleMessage = (data) => {
+ tableData.value = data.awaitingRepairs[0]
+ tableDatab.value = data.DoingTask[0]
+ tableDatac.value = data.orders[0]
+ // adjustedRects.value = data.device[0].map(rect => ({
+ // ...rect,
+ // completed: rect.completedQuantity,
+ // breakage: rect.breakageQuantity,
+ // thisProcess: rect.thisProcess,
+ // }));
+};
+let socket;
+// 璁剧疆鍥捐〃 DOM 寮曠敤
+function setChartDom(index, el) {
+ if (!chartRefs.value[index]) {
+ chartRefs.value[index] = { dom: el, chart: null };
+ } else {
+ chartRefs.value[index].dom = el;
}
}
-// 鏇存柊鐭╁舰鐘舵��
-function updateRectStatus(glassId: string, status: number) {
- adjustedRects.value.forEach(rect => {
- if (rect.glass_id === glassId) {
- rect.glass_state = status; // 鏇存柊鐭╁舰鐨勭姸鎬�
- }
- });
-}
-const socketUrl = `ws://${WebSocketHost}:${host}/api/cacheGlass/api/talk/cacheGlass`;
-// 瀹氫箟娑堟伅澶勭悊鍑芥暟锛屾洿鏂� receivedData 鍙橀噺
-const handleMessage = (data) => {
- // 鏇存柊 tableData 鐨勬暟鎹�
+onMounted(() => {
+ socket = new WebSocket(socketUrl);
+ socket.onmessage = (event) => {
+ const data = JSON.parse(event.data);
+ adjustedRects.value = data.device[0].map(rect => ({
+ ...rect,
+ completedQuantity: rect.completedQuantity,
+ breakageQuantity: rect.breakageQuantity,
+ thisProcess: rect.thisProcess,
+ }));
+ console.log(adjustedRects.value);
+ // updateCharts();
+ };
+ adjustedRects.value.forEach((rect, index) => {
+ initChart(index, rect);
+ });
+ // };
+});
- // adjustedRects.value = data.currentCutTerritory[0]
- adjustedRects.value = data.currentCutTerritory[0].map(rect => ({
- ...rect, // 澶嶅埗鍘熷瀵硅薄鐨勫叾浠栧睘鎬�
- x_axis: (rect.x_axis*100) * 0.003, // 灏唜鍊奸櫎浠�3
- y_axis: (rect.y_axis*100) * 0.003,
- width: (rect.width*100) * 0.002 ,
- widtha: rect.width ,
- heighta: rect.height ,
- height:( rect.height*100) * 0.002 ,
- glass_state: rect.glass_state
- }));
- // console.log("鏇存柊鍚庢暟鎹�", tableData);
+
+function initChart(index, rect) {
+ const { dom } = chartRefs.value[index] || { dom: null };
+ if (dom) {
+ const chart = echarts.init(dom);
+ const option = {
+ tooltip: {
+ trigger: 'item'
+ },
+ legend: {
+ orient: 'vertical',
+ left: 'left',
+ },
+ series: [
+ {
+ name: '楗肩姸鍥�',
+ type: 'pie',
+ radius: ['50%','70%'],
+ data: [
+ {value: rect.completedQuantity, name: '鍔犲伐鏁伴噺'},
+ {value: rect.breakageQuantity, name: '娆$牬鏁伴噺'},
+ console.log(rect.breakageQuantity)
+ ],
+ emphasis: {
+ itemStyle: {
+ shadowBlur: 10,
+ shadowOffsetX: 0,
+ shadowColor: 'rgba(0, 0, 0, 0.5)'
+ }
+ }
+ }
+ ]
+ };
+ chart.setOption(option);
+ chartRefs.value[index] = { ...chartRefs.value[index], chart };
-};
-
-// 鍒濆鍖� WebSocket锛屽苟浼犻�掓秷鎭鐞嗗嚱鏁�
+}
+console.log(chartRefs.value[index]);
+}
+
+// 鏇存柊鍥捐〃
+// function updateCharts() {
+// adjustedRects.value.forEach((rect, index) => {
+// const { chart } = chartRefs.value[index] || { chart: null };
+// if (chart) {
+// chart.setOption({
+// series: [{
+// data: [
+// { value: rect.completedQuantity, name: '鍔犲伐鏁伴噺' },
+// { value: rect.breakageQuantity, name: '娆$牬鏁伴噺' },
+// ],
+// }],
+// });
+// }
+// });
+// }
+// 鍒濆鍖栧浘琛�
+// function initChart(index, rect) {
+// const chartDom = ref(`chartDom${index}`).value;
+// console.log(ref(`chartDom${index}`).value);
+// const chart = echarts.init(chartDom);
+// const option = {
+// tooltip: {
+// trigger: 'item'
+// },
+// legend: {
+// orient: 'vertical',
+// left: 'left',
+// },
+// series: [
+// {
+// name: '楗肩姸鍥�',
+// type: 'pie',
+// radius: ['50%','70%'],
+// data: [
+// {value: rect.completed, name: '鍔犲伐鏁伴噺'},
+// {value: rect.breakage, name: '娆$牬鏁伴噺'},
+// ],
+// emphasis: {
+// itemStyle: {
+// shadowBlur: 10,
+// shadowOffsetX: 0,
+// shadowColor: 'rgba(0, 0, 0, 0.5)'
+// }
+// }
+// }
+// ]
+// };
+// chart.setOption(option);
+// }
+// 娓呯悊 WebSocket 杩炴帴
+onUnmounted(() => {
+ socket.close();
+});
onMounted(() => {
// fetchFlowCardId();
// fetchTableData(); // 鑾峰彇鏁版嵁
initializeWebSocket(socketUrl, handleMessage);
});
-
onBeforeUnmount(() => {
console.log("鍏抽棴浜�")
closeWebSocket();
@@ -224,32 +304,8 @@
align-items: center;
height: 100%; /* 纭繚div鍗犳嵁鏁翠釜鐭╁舰鐨勯珮搴� */
}
-#rect {
- position: relative; /* 纭繚绠ご鍙互鐩稿浜庣煩褰㈠畾浣� */
- /* 鍏朵粬鏍峰紡 */
-}
-
-#arrow {
- position: absolute;
- top: 70%; /* 绠ご浣嶄簬鐭╁舰涓棿 */
- left: 200px; /* 绠ご鍦ㄧ煩褰㈠乏渚т竴浜涜窛绂� */
- transform: translateY(-50%); /* 鍨傜洿灞呬腑 */
- width: 0;
- height: 0;
- border-top: 10px solid transparent; /* 涓婅竟妗� */
- border-bottom: 10px solid transparent; /* 涓嬭竟妗� */
- border-right: 20px solid #911005; /* 鍙宠竟妗嗭紝褰㈡垚绠ご */
- /* 鏍规嵁闇�瑕佽皟鏁磋竟妗嗗ぇ灏忓拰棰滆壊 */
-}
-
-#line {
- position: absolute;
- top: 70%; /* 鐩寸嚎浣嶄簬鐭╁舰涓棿 */
- left: 210px; /* 鐩寸嚎鍦ㄧ澶村彸渚т竴浜涜窛绂� */
- transform: translateY(-50%); /* 鍨傜洿灞呬腑 */
- height: 2px; /* 鐩寸嚎鐨勯珮搴� */
- width: 240px; /* 鐩寸嚎鐨勯暱搴︼紝鏍规嵁闇�瑕佽皟鏁� */
- background-color: #911005; /* 鐩寸嚎鐨勯鑹� */
-}
-
+#dialog-footer{
+ text-align: center;
+ margin-top: -15px;
+}
</style>
\ No newline at end of file
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java
index c143b88..bd43bad 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java
@@ -86,7 +86,7 @@
public void saveGlassInfo(List<GlassInfo> glassinfo) {
this.saveBatch(glassinfo);
}
-
+/*
@Override
public int getGlassInfoCountByFlowCardId(String flowCardId,int layer) {
@@ -128,7 +128,7 @@
.collect(Collectors.toList());
log.info("result666: {}", result);
return result;
- }
+ }*/
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/mapper/OptimizeLayoutMapper.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/mapper/OptimizeLayoutMapper.java
new file mode 100644
index 0000000..857d2a9
--- /dev/null
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/mapper/OptimizeLayoutMapper.java
@@ -0,0 +1,20 @@
+package com.mes.pp.mapper;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.github.yulichang.base.MPJBaseMapper;
+import com.mes.pp.entity.OptimizeLayout;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * <p>
+ * Mapper 鎺ュ彛
+ * </p>
+ *
+ * @author zhoush
+ * @since 2024-04-16
+ */
+@DS("pp")
+@Mapper
+public interface OptimizeLayoutMapper extends MPJBaseMapper<OptimizeLayout> {
+
+}
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/OptimizeLayoutService.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/OptimizeLayoutService.java
new file mode 100644
index 0000000..a4f81b7
--- /dev/null
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/OptimizeLayoutService.java
@@ -0,0 +1,16 @@
+package com.mes.pp.service;
+
+import com.github.yulichang.base.MPJBaseService;
+import com.mes.pp.entity.OptimizeLayout;
+
+/**
+ * <p>
+ * 鏈嶅姟绫�
+ * </p>
+ *
+ * @author zhoush
+ * @since 2024-04-16
+ */
+public interface OptimizeLayoutService extends MPJBaseService<OptimizeLayout> {
+
+}
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/impl/OptimizeLayoutServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/impl/OptimizeLayoutServiceImpl.java
new file mode 100644
index 0000000..b4c2ce7
--- /dev/null
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/impl/OptimizeLayoutServiceImpl.java
@@ -0,0 +1,22 @@
+package com.mes.pp.service.impl;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.github.yulichang.base.MPJBaseServiceImpl;
+import com.mes.pp.entity.OptimizeLayout;
+import com.mes.pp.mapper.OptimizeLayoutMapper;
+import com.mes.pp.service.OptimizeLayoutService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author zhoush
+ * @since 2024-04-16
+ */
+@Service
+@DS("pp")
+public class OptimizeLayoutServiceImpl extends MPJBaseServiceImpl<OptimizeLayoutMapper, OptimizeLayout> implements OptimizeLayoutService {
+
+}
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/controller/EdgStorageCageController.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/controller/EdgStorageCageController.java
index c4c802d..289db38 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/controller/EdgStorageCageController.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/controller/EdgStorageCageController.java
@@ -55,16 +55,16 @@
@PostMapping("/updateEdgStorageCage")
@ResponseBody
public Result updateEdgStorageCage(@RequestBody EdgStorageCage edgStorageCage) {
- boolean isSucess=edgStorageCageService.updateEdgStorageCage(edgStorageCage);
- return Result.build(200,"銆愬惎鐢�/绂佺敤銆戞垚鍔�",1);
+ String isSucess=edgStorageCageService.updateEdgStorageCage(edgStorageCage)?"鎴愬姛":"澶辫触";
+ return Result.build(200,"銆愬惎鐢�/绂佺敤銆�"+isSucess,1);
}
@ApiOperation("纾ㄨ竟缂撳瓨鐞嗙墖绗间俊鎭� 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑杩涜銆愭竻闄�/鏇存崲/缁戝畾銆� EdgStorageCage鏍煎瓙淇℃伅,EdgStorageCageDetails 鐜荤拑淇℃伅 ")
@PostMapping("/edgStorageCageGlass")
@ResponseBody
public Result edgStorageCageGlass(@RequestBody EdgStorageCageDetails edgStorageCageDetails,int edgStorageCageId) {
- boolean isSucess=edgStorageCageService.updateEdgStorageCageDetails(edgStorageCageId,edgStorageCageDetails);
- return Result.build(200,"銆愭竻闄�/鏇存崲/缁戝畾銆戞垚鍔�",1);
+ String isSucess=edgStorageCageService.updateEdgStorageCageDetails(edgStorageCageId,edgStorageCageDetails)?"鎴愬姛":"澶辫触";
+ return Result.build(200,"銆愭竻闄�/鏇存崲/缁戝畾銆�"+isSucess,1);
}
@ApiOperation("纾ㄨ竟妯″潡姹囨姤鐜荤拑鐘舵�� 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑杩涜銆愮牬鎹�/鎷胯蛋銆� ")
@@ -73,8 +73,8 @@
public Result edgReportStatus(@RequestBody Map<String, String> arguments) {
String edgStorageCageDetailsId=arguments.get("glassId");
int controlsId=Integer.valueOf(arguments.get("controlsId"));
- boolean isSucess=edgStorageCageDetailsService.identWorn(edgStorageCageDetailsId,controlsId);
- return Result.build(200,"銆愮牬鎹�/鎷胯蛋銆戞垚鍔�",1);
+ String isSucess=edgStorageCageDetailsService.identWorn(edgStorageCageDetailsId,controlsId)?"鎴愬姛":"澶辫触";
+ return Result.build(200,"銆愮牬鎹�/鎷胯蛋銆�"+isSucess,1);
}
}
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/entity/EdgStorageCage.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/entity/EdgStorageCage.java
index 2ab45f6..57b807d 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/entity/EdgStorageCage.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/entity/EdgStorageCage.java
@@ -1,6 +1,7 @@
package com.mes.edgstoragecage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java
index 01d94b9..c4b5266 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java
@@ -122,9 +122,14 @@
@Override
public boolean updateEdgStorageCage(EdgStorageCage edgStorageCage) {
EdgStorageCage edgItem = baseMapper.selectById(edgStorageCage.getId());
- edgItem.setEnableState(edgStorageCage.getEnableState());
- baseMapper.updateById(edgItem);
- return true;
+ if(edgItem!=null){
+ edgItem.setEnableState(edgStorageCage.getEnableState());
+ baseMapper.updateById(edgItem);
+ log.info("鍗у缂撳瓨锛氥�愬惎鐢�/绂佺敤銆� 鍙傛暟:{} 缁撴灉:鎴愬姛",edgStorageCage);
+ return true;
+ }
+ log.info("鍗у缂撳瓨锛氥�愬惎鐢�/绂佺敤銆� 鍙傛暟:{} 缁撴灉:澶辫触",edgStorageCage);
+ return false;
}
/**
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/common/S7object.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/common/S7object.java
index 68312bf..85cf462 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/common/S7object.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/common/S7object.java
@@ -4,6 +4,9 @@
import com.mes.device.PlcParameterObject;
import com.mes.tools.InitUtil;
import com.mes.tools.S7control;
+import lombok.extern.slf4j.Slf4j;
+
+import java.util.Date;
/**
@@ -11,6 +14,7 @@
* @Date: 2024/4/9 15:13
* @Description:
*/
+@Slf4j
public class S7object extends Thread {
public S7control plccontrol; // PLC閫氳绫诲疄渚�
private EPlcType plcType = EPlcType.S1200; // 瑗块棬瀛怭LC绫诲瀷
@@ -52,8 +56,11 @@
} catch (InterruptedException e) {
e.printStackTrace();
}
-
+ Date startDate = new Date();
+ log.info("澶х悊鐗囩璇诲彇plc鏁版嵁寮�濮嬫椂闂达細{}", startDate);
byte[] getplcvlues = plccontrol.readByte(PlcMesObject.getPlcAddressBegin(), PlcMesObject.getPlcAddressLength());
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩璇诲彇plc鏁版嵁缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
if (getplcvlues != null) {
PlcMesObject.setPlcParameterList(getplcvlues);
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/mapper/DownGlassInfoMapper.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/mapper/DownGlassInfoMapper.java
index fac40d1..1a6ba68 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/mapper/DownGlassInfoMapper.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/mapper/DownGlassInfoMapper.java
@@ -10,11 +10,28 @@
@Repository
public interface DownGlassInfoMapper extends BaseMapper<DownGlassInfo> {
-
-
+ /**
+ * 鎸夋祦绋嬪崱鏌ヨ钀芥灦鏁伴噺鏈�澶氱殑娴佺▼鍗″強灞傛暟
+ *
+ * @param flowCardId
+ * @return
+ */
DownGlassInfoDTO queryDownGlassMaxLayer(@Param(value = "flowCardId") String flowCardId);
+ /**
+ * 鏌ヨ娴佺▼鍗℃寚瀹氬眰鏁伴渶瑕佽惤鏋剁殑娆″簭
+ *
+ * @param flowCardId
+ * @param layer
+ * @return
+ */
Integer queryMaxSequence(@Param(value = "flowCardId") String flowCardId, @Param(value = "layer") int layer);
+ /**
+ * 鑾峰彇钀芥灦鐜荤拑淇℃伅锛屽寘鎷凡缁戝畾娴佺▼鍗°�佸眰鏁版湭钀芥灦鐨勭幓鐠冧俊鎭�
+ *
+ * @param isDownload 鏄惁鑾峰彇鏈惤鏋剁幓鐠冧俊鎭� True 宸茶惤鏋� false 鏈惤鏋�
+ * @return
+ */
List<DownGlassInfoDTO> queryWorkStationIsIn(@Param(value = "isDownload") Boolean isDownload);
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java
index bd9433b..39639cb 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java
@@ -105,6 +105,7 @@
}
return emptyList.get(0);
}
+/*
@Override
public List<DownStorageCageDetails> selectCacheMax() {
@@ -124,6 +125,7 @@
);
}
+*/
@Override
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/controller/DownWorkstationController.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/controller/DownWorkstationController.java
index ddf347d..2c15c6c 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/controller/DownWorkstationController.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/controller/DownWorkstationController.java
@@ -5,20 +5,18 @@
import com.mes.downworkstation.entity.request.DownWorkRequest;
import com.mes.downworkstation.service.DownWorkstationService;
import com.mes.glassinfo.service.GlassInfoService;
+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.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
-import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* <p>
- * 鍓嶇鎺у埗鍣�
+ * 鍓嶇鎺у埗鍣�
* </p>
*
* @author zhoush
@@ -34,43 +32,30 @@
private DownWorkstationService downWorkstationService;
@Autowired
private GlassInfoService glassInfoService;
+
@ApiOperation("鑾峰彇宸ヤ綅淇℃伅")
@GetMapping("/getone")
- public ResponseEntity<?> getOneDownWorkstations() {
+ public Result getOneDownWorkstations() {
try {
- List<DownWorkstation> data = downWorkstationService.getoneDownWorkstations(1,6);
+ List<DownWorkstation> data = downWorkstationService.getoneDownWorkstations(1, 6);
// 鏋勫缓绗﹀悎棰勬湡鏍煎紡鐨勫搷搴旀暟鎹�
- Map<String, Object> responseData = new HashMap<>();
- responseData.put("code", 200);
- responseData.put("msg", "鎴愬姛");
- responseData.put("data", data);
- // 杩斿洖 ResponseEntity 瀵硅薄锛屽寘鍚搷搴旀暟鎹拰鐘舵�佺爜
- return ResponseEntity.ok(responseData);
+ return Result.build(200, "鑾峰彇宸ヤ綅淇℃伅鎴愬姛", data);
} catch (Exception e) {
e.printStackTrace();
// 濡傛灉鍑虹幇寮傚父锛岃繑鍥為敊璇俊鎭�
- Map<String, Object> errorResponse = new HashMap<>();
- errorResponse.put("code", 500);
- errorResponse.put("msg", "鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�");
- return ResponseEntity.status(500).body(errorResponse);
+ return Result.build(500, "鑾峰彇宸ヤ綅淇℃伅澶辫触", 1);
}
}
@ApiOperation("鑾峰彇娴佺▼鍗″彿")
@GetMapping("/getflowCardId")
- public ResponseEntity<Map<String, Object>> getflowCardId() {
- Map<String, Object> responseData = new HashMap<>();
+ public Result getflowCardId() {
+
try {
List<Map<String, Object>> data = glassInfoService.getFlowCardId();
- responseData.put("code", 200);
- responseData.put("msg", "鎴愬姛");
- responseData.put("data", data);
- return ResponseEntity.ok(responseData);
+ return Result.build(200, "鑾峰彇娴佺▼鍗″彿鎴愬姛", data);
} catch (Exception e) {
- responseData.put("code", 500);
- responseData.put("msg", "澶辫触");
- responseData.put("data", null);
- return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(responseData);
+ return Result.build(500, "鑾峰彇娴佺▼鍗″彿澶辫触", 1);
}
}
@@ -78,22 +63,17 @@
//缁戝畾鏋跺瓙
@ApiOperation("缁戝畾鏋跺瓙")
@PostMapping("/updateFlowCardId")
- public ResponseEntity<Map<String, Object>> updateFlowCardId(@RequestBody DownWorkRequest request) {
+ public Result updateFlowCardId(@RequestBody DownWorkRequest request) {
// 缁戝畾鏋跺瓙
- downWorkstationService.updateFlowCardIdAndCount(request.getFlowCardId(), request.getWorkstationId(), request.getLayer());
+ downWorkstationService.updateFlowCardIdAndCount(request.getFlowCardId(), request.getWorkstationId(), request.getLayer());
- // 鏋勫缓鍝嶅簲鏁版嵁
- Map<String, Object> responseData = new HashMap<>();
- responseData.put("message", "updated successfully");
- responseData.put("code", 200);
- // 杩斿洖澶勭悊缁撴灉
- return ResponseEntity.ok(responseData);
+ return Result.build(200, "缁戝畾鏋跺瓙鎴愬姛", 1);
}
@ApiOperation("娓呴櫎宸ヤ綅淇℃伅")
@PostMapping("/clear")
- public ResponseEntity<Map<String, Object>> clearWorkstationInfo(@RequestBody Map<String, Object> requestData) {
+ public Result clearWorkstationInfo(@RequestBody Map<String, Object> requestData) {
// 璋冪敤 DownWorkstationService 涓殑鏂规硶娓呴櫎鎸囧畾宸ヤ綅ID鐨勪俊鎭�
int workstationId = (int) requestData.get("workstationId");
@@ -103,18 +83,10 @@
if (downWorkstations == totalWorkstations) {
downWorkstationService.clearFlowCardId(workstationId);
- Map<String, Object> responseData = new HashMap<>();
- responseData.put("message", "cleared successfully");
- responseData.put("code", 200);
- // 杩斿洖澶勭悊缁撴灉
- return ResponseEntity.ok(responseData);
- }
- else {
+ return Result.build(200, "娓呴櫎宸ヤ綅淇℃伅鎴愬姛", 1);
+ } else {
// 濡傛灉鎬绘暟閲忓拰钀芥灦鏁伴噺涓嶄竴鑷达紝杩斿洖閿欒鍝嶅簲
- Map<String, Object> errorResponse = new HashMap<>();
- errorResponse.put("message", "Total workstations count does not match down workstations count.");
- errorResponse.put("code", 400);
- return ResponseEntity.badRequest().body(errorResponse);
+ return Result.build(500, "娓呴櫎宸ヤ綅淇℃伅澶辫触", 1);
}
@@ -123,46 +95,38 @@
}
-
-
@ApiOperation("鑾峰彇宸ヤ綅鏄剧ず鍥�1")
@GetMapping("/getwo")
- public ResponseEntity<Map<String, Object>> getwo() {
- Map<String, Object> responseData = new HashMap<>();
+ public Result getwo() {
+
try {
- List<Map<String, Object>> data = downWorkstationService.getTotalGlassDimensionsByWorkstation(1,3);
- responseData.put("code", 200);
- responseData.put("msg", "鎴愬姛");
- responseData.put("data", data);
- return ResponseEntity.ok(responseData);
+ List<Map<String, Object>> data = downWorkstationService.getTotalGlassDimensionsByWorkstation(1, 3);
+ return Result.build(200, "鑾峰彇宸ヤ綅鏄剧ず鍥�1鎴愬姛", data);
} catch (Exception e) {
- responseData.put("code", 500);
- responseData.put("msg", "澶辫触");
- responseData.put("data", null);
- return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(responseData);
+ return Result.build(200, "鑾峰彇宸ヤ綅鏄剧ず鍥�1澶辫触", 1);
}
}
@ApiOperation("鑾峰彇宸ヤ綅鏄剧ず鍥�2")
@GetMapping("/getwo2")
- public ResponseEntity<Map<String, Object>> getw2o() {
- Map<String, Object> responseData = new HashMap<>();
+ public Result getwo2() {
+
try {
- List<Map<String, Object>> data = downWorkstationService.getTotalGlassDimensionsByWorkstation(4,6);
- responseData.put("code", 200);
- responseData.put("msg", "鎴愬姛");
- responseData.put("data", data);
- return ResponseEntity.ok(responseData);
+ List<Map<String, Object>> data = downWorkstationService.getTotalGlassDimensionsByWorkstation(4, 6);
+ return Result.build(200, "鑾峰彇宸ヤ綅鏄剧ず鍥�2鎴愬姛", data);
} catch (Exception e) {
- responseData.put("code", 500);
- responseData.put("msg", "澶辫触");
- responseData.put("data", null);
- return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(responseData);
+ return Result.build(200, "鑾峰彇宸ヤ綅鏄剧ず鍥�2澶辫触", 1);
+
}
}
-
-
+ @ApiOperation(" 鍔熻兘锛氬宸ヤ綅杩涜銆愬惎鐢�/绂佺敤銆�")
+ @PostMapping("/updateDownWorkstation")
+ @ResponseBody
+ public Result updateDownWorkstation(@RequestBody DownWorkstation downWorkstation) {
+ boolean isSucess = downWorkstationService.updateDownWorkstationstate(downWorkstation);
+ return Result.build(200, "鏇存崲鎴愬姛", isSucess);
+ }
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java
index d507eb4..896ac12 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java
@@ -70,7 +70,7 @@
/**
* 浜哄伐涓嬬墖鏁伴噺
*/
- private Integer artificialNumber;
+ private Integer otherNumber;
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/dto/DownGlassInfoDTO.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/dto/DownGlassInfoDTO.java
index dc3fe51..7d9a7c0 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/dto/DownGlassInfoDTO.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/dto/DownGlassInfoDTO.java
@@ -21,11 +21,16 @@
*/
private Integer layer;
/**
- * 钀芥灦鏁伴噺
+ * 宸插嚭鐗囨暟閲�
*/
private Integer count;
/**
+ * 钀芥灦鏁伴噺
+ */
+ private Integer racksNumber;
+
+ /**
* 娴佺▼鍗℃湭杩涚墖鐨勭幓鐠冧俊鎭�
*/
private List<GlassInfo> glassInfoList;
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationService.java
index 8c133f2..a101328 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationService.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationService.java
@@ -53,7 +53,7 @@
* @param workstationId
* @return 鏇存柊鏋跺瓙鍜屾暟閲�
*/
- int updateFlowCardIdAndCount(String flowCardId, int workstationId,int layer);
+ void updateFlowCardIdAndCount(String flowCardId, int workstationId,int layer);
@@ -70,4 +70,11 @@
* @return
*/
DownWorkstation selectByFlowCardId(String flowcardid);
+
+
+ /**
+ * @param downWorkstation
+ * @returnq 鍚敤绂佺敤
+ */
+ boolean updateDownWorkstationstate(DownWorkstation downWorkstation);
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
index c77fb1d..3d8482d 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
@@ -10,6 +10,7 @@
import com.mes.downglassinfo.mapper.DownGlassInfoMapper;
import com.mes.downglassinfo.service.DownGlassInfoService;
import com.mes.downglassinfo.service.DownGlassTaskService;
+import com.mes.downstorage.entity.DownStorageCage;
import com.mes.downworkstation.entity.DownWorkstation;
import com.mes.downworkstation.entity.DownWorkstationTask;
import com.mes.downworkstation.entity.DownWorkstionAndDownGlassinfo;
@@ -141,21 +142,22 @@
@Override
- public int updateFlowCardIdAndCount(String flowCardId, int workstationId,int layer) {
+ public void updateFlowCardIdAndCount(String flowCardId, int workstationId,int layer) {
int glassInfoCount = glassInfoService.getGlassInfoCountByFlowCardId(flowCardId,layer);
QueryWrapper<Damage> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("process_id", flowCardId);
queryWrapper.eq("technology_number", layer);
- int artificialnumber=damageservice.count(queryWrapper);
+ int otherNumber=damageservice.count(queryWrapper);
UpdateWrapper<DownWorkstation> updateWrapper = new UpdateWrapper<>();
updateWrapper.set("total_quantity", glassInfoCount)
.set("flow_card_id", flowCardId)
.set("layer", layer)
- .set("artificial_number", artificialnumber)
+ .set("other_number", otherNumber)
.eq("workstation_id", workstationId);
- return baseMapper.update(new DownWorkstation(), updateWrapper);
+ this.update(updateWrapper);
+
}
@Override
@@ -193,6 +195,12 @@
}
-
+ @Override
+ public boolean updateDownWorkstationstate(DownWorkstation downWorkstation) {
+ DownWorkstation downWork = baseMapper.selectById(downWorkstation.getId());
+ downWork.setEnableState(downWorkstation.getEnableState());
+ baseMapper.updateById(downWork);
+ return true;
+ }
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownCacheGlassTask.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownCacheGlassTask.java
deleted file mode 100644
index 14e96bf..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownCacheGlassTask.java
+++ /dev/null
@@ -1,311 +0,0 @@
-package com.mes.job;
-
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.mes.common.config.Const;
-import com.mes.downglassinfo.entity.DownGlassInfo;
-import com.mes.downglassinfo.entity.DownGlassTask;
-import com.mes.downglassinfo.service.DownGlassInfoService;
-import com.mes.downglassinfo.service.DownGlassTaskService;
-import com.mes.downstorage.entity.DownStorageCageDetails;
-import com.mes.downstorage.service.DownStorageCageDetailsService;
-import com.mes.downstorage.service.DownStorageCageService;
-import com.mes.downworkstation.entity.DownWorkstation;
-import com.mes.downworkstation.service.DownWorkstationService;
-import com.mes.downworkstation.service.DownWorkstationTaskService;
-import com.mes.glassinfo.entity.GlassInfo;
-import com.mes.glassinfo.service.GlassInfoService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import java.util.List;
-
-/**
- * @Author : zhoush
- * @Date: 2024/5/8 8:17
- * @Description:
- */
-@Component
-@Slf4j
-public class DownCacheGlassTask {
-
-
- @Autowired
- DownGlassTaskService downGlassTaskService;
- @Autowired
- GlassInfoService glassInfoService;
- @Autowired
- DownStorageCageDetailsService downStorageCageDetailsService;
- @Autowired
- DownStorageCageService downStorageCageService;
- @Autowired
- DownWorkstationService downWorkstationService;
- @Autowired
- DownGlassInfoService downGlassInfoService;
-
-
- @Autowired
- private DownWorkstationTaskService downWorkstationTaskService;
-
- // @Value("${mes.threshold}")
- private int threshold;
-
-// @Scheduled(fixedDelay = 1000)
- public void autoBindRack() {
- log.info("鏍规嵁缂撳瓨涓凡缁忚繘鐗囩殑鐜荤拑绉嶆暟閲忔渶澶氱殑娴佺▼鍗″彿鑷姩缁戝畾涓�涓惎鐢ㄧ姸鎬佺殑绌烘灦瀛�");
-
- List<DownStorageCageDetails> Details = downStorageCageService.selectCacheMax();
- if (Details.size() > 0) {
- DownStorageCageDetails downStorageCageDetails = Details.get(0);
- String flowCardId = downStorageCageDetails.getFlowCardId();
- int glassInfoCount = glassInfoService.getGlassInfoCountByFlowCardId(flowCardId,1);
- DownWorkstation downWorkstation = downWorkstationService.getOne(new LambdaQueryWrapper<DownWorkstation>().eq(DownWorkstation::getFlowCardId, null));
- List<DownWorkstation> downWorkstations = downWorkstationService.list(new LambdaQueryWrapper<DownWorkstation>()
- .eq(DownWorkstation::getEnableState, 1));
-
- if (!downWorkstations.stream().anyMatch(workstation -> workstation.getFlowCardId().equals(flowCardId))) {
- downWorkstationService.updateFlowCardIdAndCount(flowCardId, glassInfoCount, downWorkstation.getWorkstationId());
- }
-
-
- }
- }
-
-
- // @Scheduled(fixedDelay = 1000)
- public void plcdownGlassTask() {
- // PlcParameterObject plcParameterObject = S7object.getinstance().PlcMesObject;
-// String taskRequestTypeValue = plcParameterObject.getPlcParameter("A06_request_word").getValue();
-// String glassIdeValue = plcParameterObject.getPlcParameter("A05_scanning_ID").getValue();
-// String confirmationWrodValue = plcParameterObject.getPlcParameter("MES_confirmation_word").getValue();
-// String outGlassstate = plcParameterObject.getPlcParameter("A09_glass_status").getValue();
-// String MESSendingWord = plcParameterObject.getPlcParameter("MES_confirmation_word").getAddress();
- // String G06RobotTaskRequestWord = plcParameterObject.getPlcParameter("G06RobotTaskRequestWord").getAddress();
-
-
- String taskRequestTypeValue = "0";
- String glassIdeValue = "NG24041101C002-2-6-1-6";
- String confirmationWrodValue = "1";
- String outGlassstate = "1";
- String MESSendingWord = "1";
- String G11RobotTaskRequestWord = "0";
- String G06RobotTaskRequestWord = "0";
- String G13RobotTaskRequestWord = "0";
-
- log.info("1銆佽幏鍙栧埌鐨勮姹傚瓧涓猴細{}锛岃幏鍙栧埌鐨勬壂鎻廔D涓猴細{}锛岃幏鍙栧埌鐨勭‘璁ゅ瓧涓猴細{}锛岃幏鍙栧埌鐨勫嚭鐗囩姸鎬佷负锛歿}",
- taskRequestTypeValue, glassIdeValue, confirmationWrodValue, outGlassstate);
-
-// if ("0".equals(taskRequestTypeValue)) {
-// if ("0".equals(confirmationWrodValue)) {
-// log.info("2銆佽幏鍙栧埌鐨勮姹傚瓧涓�0锛屼笖纭瀛椾负0锛屼笉鎵ц浠诲姟");
-// return;
-// }
-// log.info("2銆佽幏鍙栧埌鐨勮姹傚瓧涓�0锛屽皢纭瀛楁敼涓�0");
-// S7object.getinstance().plccontrol.WriteWord(MESSendingWord, 0);
-// return;
-// }
-// if (!"0".equals(confirmationWrodValue)) {
-// log.info("2銆佽幏鍙栧埌鐨勮姹傚瓧涓嶄负0锛屽皢纭瀛楁敼涓�0");
-// S7object.getinstance().plccontrol.WriteWord(MESSendingWord, 0);
-// return;
-// }
-
- if ("1".equals(taskRequestTypeValue)) {
- log.info("3銆佽繘鐗囪姹傦紝涓旂‘璁ゅ瓧涓�0锛屾墽琛岃繘鐗囦换鍔�");
- inTo(glassIdeValue, MESSendingWord);
- } else if ("2".equals(taskRequestTypeValue)) {
-
- log.info("3銆佸嚭鐗囪姹傦紝涓旂‘璁ゅ瓧涓�0锛屾墽琛岃繘鐗囦换鍔�");
- outTo(MESSendingWord);
-
- } else if ("3".equals(taskRequestTypeValue)) {
- log.info("3銆佽繘鐗囧拰鍑虹墖閮界┖闂诧紝鎵ц鍑虹墖浠诲姟");
- if (outTo(MESSendingWord)) {
- inTo(glassIdeValue, MESSendingWord);
-
-
- }
- }
-
- if (("0".equals(G11RobotTaskRequestWord) || "0".equals(G06RobotTaskRequestWord)) || "0".equals(G13RobotTaskRequestWord)) {
- log.info("4銆佹湁涓嬬墖瀹屾垚淇″彿鏇存柊钀芥灦鏁伴噺");
- insertdownglassinfo();
- }
-
-
- }
-
- /**
- * 杩涚墖浠诲姟
- *
- * @param glassId
- * @param MESSendingWord
- * @param
- */
- private void inTo(String glassId, String MESSendingWord) {
- log.info("1銆佹寜鐓х幓鐠僫d:{}鑾峰彇鐜荤拑灏忕墖淇℃伅", glassId);
- GlassInfo glassInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, glassId));
- if (glassInfo == null) {
- log.info("2銆佹鐜荤拑缂栧彿涓嶅瓨鍦�");
- return;
- }
- log.info("2銆佽幏鍙栧埌鐨勭幓鐠冧俊鎭负{}", glassInfo);
-
- if (downStorageCageDetailsService.DirectConnection(glassInfo)) {
- //鐩撮��
- //log.info("3銆佸鏋滃綋鍓嶇幓鐠冨睘浜庣増鍥緄d鍜岀墖搴忕殑椤哄簭鍒欑洿閫氾紝鎵ц涓嬬墖浠诲姟");
- log.info("3銆佸鏋滃綋鍓嶇幓鐠冨睘浜庢祦绋嬪崱涓殑鐗囧簭鐨勯『搴忓垯鐩撮�氾紝鎵ц涓嬬墖浠诲姟");
- DownWorkstation downWorkstation = downWorkstationService.getOne(new LambdaQueryWrapper<DownWorkstation>().eq(DownWorkstation::getFlowCardId, glassInfo.getFlowCardId()));
- int WorkstationId = downWorkstation.getWorkstationId();
- DownGlassTask downGlassTask = downStorageCageService.createDownGlassTask(glassInfo, 0, WorkstationId, 3);
- downGlassTaskService.insertCacheTask(downGlassTask);
-
- } else {
-
- // log.info("4銆佸鏋滀笉灞炰簬鐗堝浘id鍜岀墖搴忕殑椤哄簭鎵ц杩涚墖浠诲姟");
- log.info("4銆佸鏋滀笉灞炰簬娴佺▼鍗′腑鐨勭墖搴忕殑椤哄簭鎵ц杩涚墖浠诲姟");
-
- //娣诲姞杩涚墖浠诲姟 鏌ユ壘绌烘牸
- List<DownStorageCageDetails> list = downStorageCageService.selectCacheEmpty();
- if (list.size() > 0) {
- DownStorageCageDetails item = list.get(0);
-
-
- log.info("5銆佹煡璇㈠崸寮忕悊鐗囩閲岄潰鐨勭┖鏍�:{}", list);
- log.info("6銆佸皢鐜荤拑淇℃伅鎻掑叆鍗у紡鐞嗙墖绗�,褰撳墠鐜荤拑淇℃伅:{}", glassInfo);
- DownStorageCageDetails details = new DownStorageCageDetails();
- BeanUtils.copyProperties(glassInfo, details);
- details.setState(Const.GLASS_STATE_IN);
- details.setGlassId(glassInfo.getGlassId());
- details.setSlot(item.getSlot());
- details.setDeviceId(item.getDeviceId());
- downStorageCageDetailsService.save(details);
- log.info("7銆佺幓鐠冧俊鎭凡瀛樺叆鐞嗙墖绗艰鎯呰〃锛岀幓鐠冧俊鎭负{}", details);
-
- DownGlassTask downGlassTask = downStorageCageService.createDownGlassTask(glassInfo, 0, item.getSlot(), 1);
- //娣诲姞杩涚墖浠诲姟
- log.info("8銆佺敓鎴愯繘鐗囦换鍔′俊鎭瓨鍏ヤ换鍔¤〃{}", downGlassTask);
- downGlassTaskService.insertCacheTask(downGlassTask);
- }
-
-
- }
- log.info("9銆佸彂閫佺‘璁ゅ瓧瀹屾垚");
- //S7object.getinstance().plccontrol.WriteWord(MESSendingWord, 1);
- }
-
- /**
- * 鍑虹墖浠诲姟
- *
- * @param MESSendingWord
- */
- private Boolean outTo(String MESSendingWord) {
- // log.info("鍗曠墖鎯呭喌鏍规嵁浼犲叆鐨勬枡鏋跺彿 鏌ヨ绗﹀悎鎸夌収鐗堝浘id鍜岀墖搴忓嚭鐗�,骞朵笖浼樺厛鍑烘弧鏋剁殑灏忕墖");
- log.info("鍗曠墖鎯呭喌鏍规嵁浼犲叆鐨勬枡鏋跺彿 鏌ヨ绗﹀悎鎸夌収娴佺▼鍗′腑椤哄簭鍑虹墖,骞朵笖浼樺厛鍑烘弧鏋剁殑灏忕墖");
-
-// List<DownStorageCageDetails> list1to3 = downStorageCageDetailsService.CacheOut1(1, 3);
-// List<DownStorageCageDetails> list4to6 = downStorageCageDetailsService.CacheOut1(4, 6);
- List<DownStorageCageDetails> list1to6 = downStorageCageDetailsService.CacheOut2(1, 6);
-
- DownStorageCageDetails selectedItem = null;
-
- Integer endCell = null;
-
- // 浼樺厛 瓒呭嚭灏哄浼樺厛浜哄伐鍑虹墖 浜哄伐澶勭悊
- if (!list1to6.isEmpty()) {
- DownStorageCageDetails item3 = list1to6.get(0);
- //鍚庢湡鏈夌敓浜ц鍒�
- if (item3.getHeight() >= 2500 && item3.getWidth() >= 2660) {
- log.info("浜哄伐澶勭悊");
- selectedItem = item3;
-
- } else if (!!list1to6.isEmpty()) {
- log.info("鍓嶅悗绔兘绌洪棽浼樺厛婊℃灦");
- selectedItem = list1to6.get(0);
- }
- }
-
- // 鎸夌収鐗堝浘id鍜岀墖搴忕鍚堝墠绔嚭鐗�
-// if (selectedItem == null && !list1to3.isEmpty()) {
-// log.info("鍓嶇鍑虹墖");
-// selectedItem = list1to3.get(0);
-// }
-//
-// // 鎸夌収鐗堝浘id鍜岀墖搴忕鍚堝悗绔嚭鐗�
-// if (selectedItem == null && !list4to6.isEmpty()) {
-// log.info("鍚庣鍑虹墖");
-// selectedItem = list4to6.get(0);
-// }
-
- if (selectedItem != null) {
- DownWorkstation downWorkstation = downWorkstationService.getOne(
- new LambdaQueryWrapper<DownWorkstation>()
- .eq(DownWorkstation::getFlowCardId, selectedItem.getFlowCardId())
- );
- endCell = downWorkstation.getWorkstationId();
- if (endCell == null) {
- endCell = 7;
- }
- DownGlassTask downGlassTask = downStorageCageService.createDownGlassTask(selectedItem, 9, endCell, 2);
- downGlassTaskService.insertCacheTask(downGlassTask);
- LambdaQueryWrapper<DownStorageCageDetails> wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(DownStorageCageDetails::getGlassId, selectedItem.getGlassId());
- DownStorageCageDetails updateDetail = new DownStorageCageDetails();
- updateDetail.setState(Const.GLASS_STATE_OUT);
- downStorageCageDetailsService.update(updateDetail, wrapper);
- log.info("鏇存柊鍑虹墖鐜荤拑鐨勭姸鎬佷负{}", Const.GLASS_STATE_OUT);
- // S7object.getinstance().plccontrol.WriteWord(MESSendingWord, 2);
-
- return true;
- }
-
- // 杩斿洖缁撴灉
- return false;
- }
-
-
- //
- public void insertdownglassinfo() {
- try {
-
- List<DownGlassTask> taskdownGlassInf = downGlassTaskService.getUnloadingTaskState();
- if (taskdownGlassInf != null && !taskdownGlassInf.isEmpty()) {
-
- for (DownGlassTask downGlassInfo : taskdownGlassInf) {
- // 鍒涘缓鏂扮殑 DownGlassInfo 瀵硅薄骞惰缃浉鍏冲睘鎬�
- DownGlassInfo newdownGlassInfo = new DownGlassInfo();
-
- Integer maxSequence = downGlassInfoService.getMaxSequenceByFlowCardId(downGlassInfo.getFlowCardId(), downGlassInfo.getLayer());
- // 鍒濆鍖栭『搴忓瓧娈靛��
- int sequence = maxSequence != null ? maxSequence + 1 : 1;
- BeanUtils.copyProperties(downGlassInfo, newdownGlassInfo);
- // 璁剧疆椤哄簭瀛楁鍊�
- newdownGlassInfo.setSequence(sequence);
- // 鎻掑叆鏁版嵁鍒颁笅鐗囩幓鐠冧俊鎭〃
- downGlassInfoService.insertDownGlassInfo(newdownGlassInfo);
- log.info("鎻掑叆鏁版嵁鍒颁笅鐗囩幓鐠冧俊鎭〃");
- DownWorkstation downWorkstation1 = downWorkstationService.selectByFlowCardId(downGlassInfo.getFlowCardId());
- downWorkstationService.updateracksnumber(downGlassInfo.getFlowCardId(), downWorkstation1.getRacksNumber() + 1);
- log.info("鏇存柊钀芥灦鏁伴噺");
-// LambdaQueryWrapper<DownGlassTask> wrapper = new LambdaQueryWrapper<>();
-// wrapper.eq(DownGlassTask::getGlassId, newdownGlassInfo.getGlassId());
-// DownGlassTask updateDetail = new DownGlassTask();
-// updateDetail.setTaskStauts(2);
-// downGlassTaskService.update(updateDetail, wrapper);
- sequence++; // 閫掑椤哄簭瀛楁鍊�
-
-
- }
- }
- } catch (Exception e) {
- // 鎵撳嵃寮傚父淇℃伅
- e.printStackTrace();
- // 鎴栬�呭彲浠ヨ繘琛屽叾浠栧紓甯稿鐞嗭紝姣斿璁板綍鏃ュ織鎴栬�呰繑鍥炵壒瀹氱殑閿欒淇℃伅
- }
-
-
- }
-
-
-}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java
index 06df117..686084b 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java
@@ -30,10 +30,7 @@
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
import java.util.stream.Collectors;
/**
@@ -164,10 +161,7 @@
if (CollectionUtils.isNotEmpty(list)) {
log.info("鏈夌┖鏋跺瓙,灏嗘祦绋嬪崱涓庢灦瀛愬ソ缁戝畾锛屾墽琛岃繘鐗囦换鍔� 缁撴潫");
//缁戝畾娴佺▼鍗�
- downWorkstationService.update(new LambdaUpdateWrapper<DownWorkstation>()
- .set(DownWorkstation::getFlowCardId, glassInfo.getFlowCardId())
- .set(DownWorkstation::getLayer, glassInfo.getLayer())
- .eq(DownWorkstation::getWorkstationId, list.get(0).getWorkstationId()));
+ downWorkstationService.updateFlowCardIdAndCount(glassInfo.getFlowCardId(), glassInfo.getLayer(), list.get(0).getWorkstationId());
checkFlag = Boolean.TRUE;
}
}
@@ -182,27 +176,28 @@
endLoop:
for (DownGlassInfoDTO e : downGlassInfoDTOList) {
List<GlassInfo> glassInfoList = e.getGlassInfoList();
- for (GlassInfo item : glassInfoList) {
- if (item.getWidth() == glassInfo.getWidth() && item.getHeight() == glassInfo.getHeight()
- && item.getThickness() == glassInfo.getThickness() && item.getFilmsid().equals(glassInfo.getFilmsid())) {
- //鐜荤拑鏄惁涓哄灞�
- checkFlag = multilayerCheck(item, Boolean.FALSE);
- if (checkFlag) {
- //鐜荤拑鏇挎崲 浠呮浛鎹㈡祦绋嬪崱id鍙婂眰鏁�
- String tempFlowCardId = item.getFlowCardId();
- Integer tempLayer = item.getLayer();
- String flowCardId = glassInfo.getFlowCardId();
- Integer layer = glassInfo.getLayer();
- log.info("鏇挎崲娴佺▼鍗′俊鎭�,褰撳墠鐜荤拑淇℃伅:{}鐨勬祦绋嬪崱鍙穥}鍙婂眰鏁皗},鏇挎崲鍚庣幓鐠冧俊鎭�:{}鐨勬祦绋嬪崱鍙穥}鍙婂眰鏁皗}",
- item, glassInfo, flowCardId, layer, tempFlowCardId, tempLayer);
- glassInfo.setFlowCardId(tempFlowCardId);
- glassInfo.setLayer(tempLayer);
- glassInfoService.updateById(glassInfo);
- item.setFlowCardId(flowCardId);
- item.setLayer(layer);
- glassInfoService.updateById(item);
- break endLoop;
- }
+ Optional<GlassInfo> glassInfoTempOptional = glassInfoList.stream().filter(item -> item.getWidth() == glassInfo.getWidth() && item.getHeight() == glassInfo.getHeight()
+ && item.getThickness() == glassInfo.getThickness() && item.getFilmsid().equals(glassInfo.getFilmsid()))
+ .findFirst();
+ if (glassInfoTempOptional.isPresent()) {
+ GlassInfo item = glassInfoTempOptional.get();
+ //鐜荤拑鏄惁涓哄灞�
+ checkFlag = multilayerCheck(item, Boolean.FALSE);
+ if (checkFlag) {
+ //鐜荤拑鏇挎崲 浠呮浛鎹㈡祦绋嬪崱id鍙婂眰鏁�
+ String tempFlowCardId = item.getFlowCardId();
+ Integer tempLayer = item.getLayer();
+ String flowCardId = glassInfo.getFlowCardId();
+ Integer layer = glassInfo.getLayer();
+ log.info("鏇挎崲娴佺▼鍗′俊鎭�,褰撳墠鐜荤拑淇℃伅:{}鐨勬祦绋嬪崱鍙穥}鍙婂眰鏁皗},鏇挎崲鍚庣幓鐠冧俊鎭�:{}鐨勬祦绋嬪崱鍙穥}鍙婂眰鏁皗}",
+ item, glassInfo, flowCardId, layer, tempFlowCardId, tempLayer);
+ glassInfo.setFlowCardId(tempFlowCardId);
+ glassInfo.setLayer(tempLayer);
+ glassInfoService.updateById(glassInfo);
+ item.setFlowCardId(flowCardId);
+ item.setLayer(layer);
+ glassInfoService.updateById(item);
+ break endLoop;
}
}
}
@@ -215,11 +210,13 @@
downStorageCageDetails.setState(Const.GLASS_STATE_IN);
downStorageCageDetails.setSlot(nearestEmpty.getSlot());
downStorageCageDetailsService.save(downStorageCageDetails);
-// 鐢熸垚杩涚墖浠诲姟
+
+ // 鐢熸垚杩涚墖浠诲姟
initDownGlassTask(glassInfo, 0, nearestEmpty.getSlot(), Const.GLASS_CACHE_TYPE_IN);
}
- public Boolean outTo(String glassStatus06, String out08Glassstate, String glassStatus11, String glassStatus13, String glassId, String currentSlot) {
+ public Boolean outTo(String glassStatus06, String out08Glassstate, String glassStatus11, String
+ glassStatus13, String glassId, String currentSlot) {
if ("2".equals(glassStatus06) && "2".equals(glassStatus11) && "2".equals(glassStatus13)) {
log.info("G06銆丟11銆丟13鍒嗗埆涓簕},{}銆亄}闈炶嚜鍔ㄧ姸鎬侊紝鏃犳硶鍑虹墖", glassStatus06, glassStatus11, glassStatus13);
return Boolean.FALSE;
@@ -287,7 +284,8 @@
}
}
- private Boolean generateTaskByShelf(String glassStatus06, String glassStatus11, Boolean flag08, String glassStatus13, List<DownStorageCageDetails> tempList, DownStorageCageDetails cageDetails, String glassId) {
+ private Boolean generateTaskByShelf(String glassStatus06, String glassStatus11, Boolean flag08, String
+ glassStatus13, List<DownStorageCageDetails> tempList, DownStorageCageDetails cageDetails, String glassId) {
//鑾峰彇2涓満姊拌噦鑼冨洿鍐呯殑鏋跺瓙缁戝畾鐨勬祦绋嬪崱淇℃伅
List<Integer> workList = new ArrayList();
@@ -440,7 +438,8 @@
}
}
- public Boolean generateDownGlassOutTask(String glassId, Integer taskType, Boolean isBind, DownStorageCageDetails cageDetails) {
+ public Boolean generateDownGlassOutTask(String glassId, Integer taskType, Boolean
+ isBind, DownStorageCageDetails cageDetails) {
//鎸夌幓鐠僫d鑾峰彇鐜荤拑淇℃伅
DownStorageCageDetails downStorageCageDetails = null;
if (glassId.equals(cageDetails.getGlassId())) {
@@ -448,7 +447,7 @@
taskType = 3;
} else {
downStorageCageDetails = downStorageCageDetailsService.getOne(new LambdaQueryWrapper<DownStorageCageDetails>()
- .eq(DownStorageCageDetails::getGlassId, glassId));
+ .eq(DownStorageCageDetails::getGlassId, glassId).eq(DownStorageCageDetails::getState, Const.GLASS_STATE_IN));
}
Integer endCell = null;
@@ -458,9 +457,7 @@
.isNull(DownWorkstation::getFlowCardId).orderByDesc(DownWorkstation::getWorkstationId).last("limit 1"));
if (null != emptyDownWorkstation) {
log.info("鑾峰彇鍒扮┖鏋跺瓙淇℃伅锛岀粦瀹氭祦绋嬪崱");
- emptyDownWorkstation.setFlowCardId(downStorageCageDetails.getFlowCardId());
- emptyDownWorkstation.setLayer(downStorageCageDetails.getLayer());
- downWorkstationService.updateById(emptyDownWorkstation);
+ downWorkstationService.updateFlowCardIdAndCount(downStorageCageDetails.getFlowCardId(), downStorageCageDetails.getLayer(), emptyDownWorkstation.getWorkstationId());
endCell = emptyDownWorkstation.getWorkstationId();
} else {
log.info("娌℃湁绌烘灦瀛愪俊鎭紝鏃犳硶缁戝畾娴佺▼鍗�");
@@ -482,7 +479,7 @@
//鏇存柊钀芥灦鐜荤拑鏁伴噺
if (endCell == 7) {
downWorkstationService.update(new UpdateWrapper<DownWorkstation>().eq("flow_card_id", downStorageCageDetails.getFlowCardId())
- .eq("layer", downStorageCageDetails.getLayer()).setSql("artificial_number = artificial_number +1"));
+ .eq("layer", downStorageCageDetails.getLayer()).setSql("other_number = other_number +1"));
} else {
downWorkstationService.update(new UpdateWrapper<DownWorkstation>().eq("flow_card_id", downStorageCageDetails.getFlowCardId())
.eq("layer", downStorageCageDetails.getLayer()).setSql("racks_number = racks_number +1"));
@@ -517,7 +514,8 @@
startCell, endCell, taskType);
}
- private Boolean sendMessageToPlc(int width, int height, int thickness, int startCell, int endCell, int taskType) {
+ private Boolean sendMessageToPlc(int width, int height, int thickness, int startCell, int endCell,
+ int taskType) {
S7control s7control = S7object.getinstance().plccontrol;
PlcParameterObject plcMesObject = S7object.getinstance().PlcMesObject;
s7control.writeWord(plcMesObject.getPlcParameter("Glass_width").getAddress(), width);
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml
index 76a9216..1930840 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml
@@ -10,7 +10,7 @@
<resultMap id="downGlassInfo" type="com.mes.downworkstation.entity.dto.DownGlassInfoDTO">
<result column="flow_card_id" property="flowCardId"/>
<result column="layer" property="layer"/>
- <result column="count" property="count"/>
+ <result column="racks_number" property="racksNumber"/>
<collection property="glassInfoList" ofType="com.mes.glassinfo.entity.GlassInfo">
<id column="id" property="id"/>
<result column="flow_card_id" property="flowCardId"/>
@@ -45,31 +45,29 @@
</select>
<select id="queryWorkStationIsIn" resultMap="downGlassInfo">
- SELECT T.*
+ SELECT
+ T.FLOW_CARD_ID,
+ T.LAYER,
+ T.RACKS_NUMBER
<if test="!isDownload">
,T1.*
</if>
- FROM (
- SELECT T.FLOW_CARD_ID,
- T.LAYER,
- COUNT(T.LAYER) AS COUNT
FROM
DOWN_WORKSTATION T
- LEFT JOIN DOWN_GLASS_INFO T1 ON T.FLOW_CARD_ID = T1.FLOW_CARD_ID
- GROUP BY T.FLOW_CARD_ID,LAYER
- HAVING T.FLOW_CARD_ID IS NOT NULL
- ) T
INNER JOIN GLASS_INFO T1 ON T.FLOW_CARD_ID = T1.FLOW_CARD_ID
AND T.LAYER = T1.LAYER
LEFT JOIN DOWN_GLASS_INFO T2 ON T1.GLASS_ID = T2.GLASS_ID
<where>
- <if test="isDownload">
+ <if test="!isDownload">
AND T2.GLASS_ID IS NULL
</if>
- <if test="!isDownload">
+ <if test="isDownload">
AND T2.GLASS_ID IS not NULL
</if>
</where>
- order by t.count desc
+ ORDER BY
+ T.RACKS_NUMBER DESC,
+ T1.TEMPERING_LAYOUT_ID,
+ T1.TEMPERING_FEED_SEQUENCE DESC
</select>
</mapper>
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java
index 76d153c..395722b 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java
@@ -190,7 +190,7 @@
//downGlassTaskService.getUnloadingTaskState();
}
- @Test
+ /* @Test
public void updateDownStorageCage() {
@@ -199,7 +199,7 @@
downStorageCage.setId(1);
downStorageCageService.updateDownStorageCage(downStorageCage);
- }
+ }*/
--
Gitblit v1.8.0