From c3889b92e80992524e0f60371edf775ca7e28922 Mon Sep 17 00:00:00 2001
From: 严智鑫 <test>
Date: 星期五, 12 七月 2024 13:50:26 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes
---
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/service/impl/BigStorageCageFeedTaskServiceImpl.java | 12
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/controller/LoadPositionController.java | 98 +
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/controller/StorageTaskController.java | 101 +
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java | 1
UI-Project/src/views/LoginView.vue | 8
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/entity/LoadPosition.java | 134 +
hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/entity/Damage.java | 2
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcSlicecage.java | 66
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/entity/RawUsage.java | 204 +++
UI-Project/src/assets/ypccche.png | 0
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/GlassStorageApplication.java | 28
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/service/ShelfRackService.java | 23
hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-prod.yml | 1
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/dto/DownGlassInfoDTO.java | 7
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java | 29
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/service/impl/LoadPositionServiceImpl.java | 51
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/mapper/LoadPositionMapper.java | 18
hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application.yml | 16
hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/mapper/TemperingGlassInfoMapper.java | 2
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/mapper/LoadPositionMapper.xml | 5
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgglasstask/entity/EdgGlassTaskInfo.java | 4
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/controller/DownWorkstationController.java | 122 -
hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application-dev.yml | 25
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstionAndDownGlassinfo.java | 13
hangzhoumesParent/moduleService/pom.xml | 1
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-prod.yml | 5
UI-Project/src/views/Caching/cachingbefore.vue | 2
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/entity/StorageTask.java | 134 +
hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingAgoServiceImpl.java | 4
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/mapper/BigStorageCageFeedTaskMapper.java | 6
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/mapper/ShelfRackMapper.java | 16
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/mapper/ShelfRackMapper.xml | 5
UI-Project/src/views/UnLoadGlass/loadmachinerack.vue | 16
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java | 37
hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-cz.yml | 10
UI-Project/src/views/User/permissions.vue | 32
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/service/StorageTaskService.java | 23
UI-Project/src/stores/tableData.js | 225 +++
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-cz.yml | 2
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java | 97 +
UI-Project/src/lang/zh.js | 47
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java | 111 +
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml | 2
hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-dev.yml | 14
hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-prod.yml | 8
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java | 11
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java | 11
UI-Project/src/views/Slicecage/slicecage.vue | 71
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java | 2
UI-Project/src/views/GlassStorage/MaterialRackManagement.vue | 236 +--
UI-Project/src/main.js | 4
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java | 2
hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/GlassInfoService.java | 13
hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java | 11
hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java | 14
UI-Project/src/views/User/rolelist.vue | 176 +
hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java | 11
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/mapper/BigStorageCageOutTaskMapper.java | 2
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/service/impl/RawUsageServiceImpl.java | 49
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/mapper/RawUsageMapper.java | 16
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml | 24
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/entity/ShelfRack.java | 106 +
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java | 134 +
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/request/DownWorkRequest.java | 28
UI-Project/package.json | 3
hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml | 8
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/mapper/RawUsageMapper.xml | 5
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml | 10
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 | 11
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/controller/BigStorageCageDetailsController.java | 4
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/mapper/StorageTaskMapper.java | 16
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassTask.java | 2
hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java | 7
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/mapper/StorageTaskMapper.xml | 5
hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-cz.yml | 8
UI-Project/src/router/index.js | 13
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/service/impl/ShelfRackServiceImpl.java | 49
hangzhoumesParent/moduleService/GlassStorageModule/pom.xml | 34
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageFeedTaskMapper.xml | 20
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java | 12
UI-Project/src/layout/MainErpView.vue | 15
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java | 122
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-dev.yml | 5
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/controller/RawUsageController.java | 101 +
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/S7object.java | 4
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/service/LoadPositionService.java | 25
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/controller/ShelfRackController.java | 101 +
UI-Project/src/assets/ypcc.png | 0
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-cz.yml | 4
UI-Project/src/views/User/userlist.vue | 28
UI-Project/src/views/largescreen/largescreen.vue | 195 ++
UI-Project/src/views/UnLoadGlass/Landingindication.vue | 3
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java | 15
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-dev.yml | 4
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/service/impl/StorageTaskServiceImpl.java | 49
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/common/S7object.java | 9
/dev/null | 311 ----
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json | 2
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/service/RawUsageService.java | 23
hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application-prod.yml | 30
UI-Project/package-lock.json | 107 +
102 files changed, 3,031 insertions(+), 1,038 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..0dbaa83 100644
--- a/UI-Project/src/lang/zh.js
+++ b/UI-Project/src/lang/zh.js
@@ -159,7 +159,6 @@
inglassgaps:'璇疯緭鍏ョ幓鐠冮棿闅�',
sure:'纭',
cancel:'鍙栨秷',
- glassID:'鐜荤拑ID',
operate:'鎿嶄綔',
breakage:'鐮存崯',
delete:'鍒犻櫎',
@@ -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/layout/MainErpView.vue b/UI-Project/src/layout/MainErpView.vue
index 85cd1aa..098140d 100644
--- a/UI-Project/src/layout/MainErpView.vue
+++ b/UI-Project/src/layout/MainErpView.vue
@@ -23,20 +23,17 @@
let token = userInfo; // 鎻愬彇 token
// 閫�鍑虹櫥褰曟柟娉�
function quit() {
- // removeToken()
+ // localStorage.removeItem('token');
+ store.$patch({
+ user: null,
+ })
router.push('/login')
}
// const quit = async () => {
// try {
-
-// const response = await request.get('/loadGlass/sys/user/logout', {
-// token: token,
-// user: null,
-// })
+// store.$patch({user: null})
+// const response = await request.post('/loadGlass/sys/user/logout')
// if (response.code === 200) {
-// // 鐧诲嚭鎴愬姛锛屾竻闄ゆ湰鍦板瓨鍌ㄧ殑 userInfo
-// localStorage.removeItem('userInfo');
-// // 鍙互鍦ㄨ繖閲岄噸缃簲鐢ㄧ姸鎬侊紝濡傚鑸埌鐧诲綍椤电瓑
// console.log('鐧诲嚭鎴愬姛');
// } else {
// // 澶勭悊閿欒鎯呭喌
diff --git a/UI-Project/src/main.js b/UI-Project/src/main.js
index b8b328b..8ac785a 100644
--- a/UI-Project/src/main.js
+++ b/UI-Project/src/main.js
@@ -11,7 +11,11 @@
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"
+// 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/router/index.js b/UI-Project/src/router/index.js
index 2beb066..030de26 100644
--- a/UI-Project/src/router/index.js
+++ b/UI-Project/src/router/index.js
@@ -246,6 +246,19 @@
}
]
},
+ /*----------- 澶у睆鏄剧ず ----------------*/
+ {
+ path: 'largescreen',
+ name: 'largescreen',
+ component: () => import('../views/largescreen/largescreen.vue'),
+ children:[
+ {
+ path: '/largescreen/largescreen',
+ name: 'largescreen',
+ component: () => import('../views/largescreen/largescreen.vue')
+ },
+ ]
+ },
/*----------- 绠$悊绯荤粺 ----------------*/
{
path: 'sys',
diff --git a/UI-Project/src/stores/tableData.js b/UI-Project/src/stores/tableData.js
new file mode 100644
index 0000000..3d21d2f
--- /dev/null
+++ b/UI-Project/src/stores/tableData.js
@@ -0,0 +1,225 @@
+// tableData.js
+
+import { ref } from 'vue';
+
+export const tableData = ref([
+ {
+ location: '1',
+ type: 'Type A',
+ length: '100',
+ height: '50',
+ thickness: '10',
+ quantity: '5',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '2',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 0
+ },
+ {
+ location: '3',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '4',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '5',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '1',
+ type: 'Type A',
+ length: '100',
+ height: '50',
+ thickness: '10',
+ quantity: '5',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '2',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 0
+ },
+ {
+ location: '3',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '4',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '5',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },{
+ location: '1',
+ type: 'Type A',
+ length: '100',
+ height: '50',
+ thickness: '10',
+ quantity: '5',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '2',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 0
+ },
+ {
+ location: '3',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '4',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '5',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },{
+ location: '1',
+ type: 'Type A',
+ length: '100',
+ height: '50',
+ thickness: '10',
+ quantity: '5',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '2',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 0
+ },
+ {
+ location: '3',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '4',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ },
+ {
+ location: '5',
+ type: 'Type B',
+ length: '120',
+ height: '60',
+ thickness: '12',
+ quantity: '10',
+ entry_time: '2024-06-19 10:00:00',
+ batchnumber: '444',
+ shelf_status: 1
+ }
+ // Add more data as needed
+]);
diff --git a/UI-Project/src/views/Caching/cachingbefore.vue b/UI-Project/src/views/Caching/cachingbefore.vue
index 9f4ed48..04a819f 100644
--- a/UI-Project/src/views/Caching/cachingbefore.vue
+++ b/UI-Project/src/views/Caching/cachingbefore.vue
@@ -48,7 +48,7 @@
} else {
ElMessage.error(response.message);
}
- row.enable_state = newState;
+ row.enable_state = newState;
};
const open = async(row) => {
try {
diff --git a/UI-Project/src/views/GlassStorage/MaterialRackManagement.vue b/UI-Project/src/views/GlassStorage/MaterialRackManagement.vue
index b36c181..e1b6d88 100644
--- a/UI-Project/src/views/GlassStorage/MaterialRackManagement.vue
+++ b/UI-Project/src/views/GlassStorage/MaterialRackManagement.vue
@@ -5,6 +5,7 @@
<!-- 宸︿晶鎸夐挳缁� -->
<div >
+ <el-button type="success" size="mini" @click="storage()">鍘熺墖浠撳偍璇︽儏</el-button>
<el-button type="success" size="mini" @click="handleInbound()">鍏ュ簱</el-button>
<el-button type="success" size="mini" >鍚婅浣嶅叆搴�</el-button>
@@ -20,9 +21,9 @@
</el-form-item>
</div>
-
+<el-dialog v-model="Hidden" top="10vh" width="80%" >
<el-table
- :data="tableData"
+ :data="tableData" v-model="dialogVisible3"
style="width: 98%; height: 200px"
@selection-change="handleSelectionChange"
@@ -55,17 +56,22 @@
</el-table-column>
<!-- 鎿嶄綔鍒� -->
- <el-table-column label="鎿嶄綔" width="350">
+ <el-table-column label="鎿嶄綔" width="250">
<template #default="{ row }">
<el-button type="primary" size="mini" @click="edithandleRowClick(row)">淇敼</el-button>
<el-button type="danger" size="mini" @click="handleDelete(row)">鍒犻櫎</el-button>
<el-button type="warning" size="mini" @click="handleCheckout(row)">鍑哄簱</el-button>
- <el-button type="success" size="mini" @click="addglass()">娣诲姞鍘熺墖</el-button>
+ <!-- <el-button type="success" size="mini" @click="addglass()">娣诲姞鍘熺墖</el-button> -->
</template>
</el-table-column>
</el-table>
- <el-table
+
+
+ </el-dialog>
+
+
+ <el-table
:data="tasktableData"
style="width: 98%; height: 150px"
@selection-change="handleSelectionChange"
@@ -109,11 +115,20 @@
</template>
</el-table-column>
</el-table>
-
</el-card>
- <div ref="chart" id="chart" style="width: 100%; height: 250px;"></div>
-
+
+
+
+
+ <div class="img-ypcc" >
+
+
+ <div class="img-car1" :style="'z-index:999;left:397px;top:205px;position:absolute;'">
+ <div v-show="cellshow1" style="margin-top:10px;width:200px;height:5px;background-color:#409EFF;"></div>
+ </div>
+
+ </div>
<!-- 鍏ュ簱瀵硅瘽妗� -->
<el-dialog
@@ -175,19 +190,19 @@
</el-form-item>
<el-form-item label="闀垮害">
- <el-input v-model="formData.wid" required style="width: 250px; font-size: 20px" @focus="clearInput('wid')"></el-input>
+ <el-input v-model="formData.width" required style="width: 250px; font-size: 20px" @focus="clearInput('wid')"></el-input>
</el-form-item>
<el-form-item label="楂樺害">
- <el-input v-model="formData.heig" required style="width: 250px; font-size: 20px" @focus="clearInput('heig')"></el-input>
+ <el-input v-model="formData.height" required style="width: 250px; font-size: 20px" @focus="clearInput('heig')"></el-input>
</el-form-item>
<el-form-item label="鍘氬害">
- <el-input v-model="formData.thinkness" required style="width: 250px; font-size: 20px" @focus="clearInput('thinkness')"></el-input>
+ <el-input v-model="formData.thickness" required style="width: 250px; font-size: 20px" @focus="clearInput('thinkness')"></el-input>
</el-form-item>
<el-form-item label="鏁伴噺">
- <el-input-number v-model="formData.num" required :min="0" :max="9000" style="width: 250px; font-size: 20px" @focus="clearInput('num')"></el-input-number>
+ <el-input-number v-model="formData.quantity" required :min="0" :max="9000" style="width: 250px; font-size: 20px" @focus="clearInput('num')"></el-input-number>
</el-form-item>
</el-form>
@@ -205,6 +220,15 @@
<el-form-item label="鎵规鍙�">
<el-input v-model="editForm.batchnumber"></el-input>
</el-form-item>
+ <el-form-item label="闀垮害">
+ <el-input v-model="editForm.length"></el-input>
+ </el-form-item>
+ <el-form-item label="楂樺害">
+ <el-input v-model="editForm.height"></el-input>
+ </el-form-item>
+ <el-form-item label="鍘氬害">
+ <el-input v-model="editForm.thickness"></el-input>
+ </el-form-item>
</el-form>
<div class="dialog-footer">
@@ -214,7 +238,6 @@
</el-dialog>
- <!-- <div ref="chart" id="chart" style="width: 100%; height: 400px;"></div> -->
</div>
</template>
@@ -225,67 +248,14 @@
import { ref, onMounted, onBeforeUnmount } from 'vue'; // 瀵煎叆 Vue 3 鐨勬ā鍧�
import * as echarts from 'echarts';
import { ElMessage, ElMessageBox } from 'element-plus'
+import {tableData} from '@/stores/tableData.js';
+
const loading = ref(false);
- const tableData = ref([
- {
- location: '1',
- type: 'Type A',
- length: '100',
- height: '50',
- thickness: '10',
- quantity: '5',
- entry_time: '2024-06-19 10:00:00',
- batchnumber:"444",
- shelf_status: 1
- },
- {
- location: '2',
- type: 'Type B',
- length: '120',
- height: '60',
- thickness: '12',
- quantity: '10',
- entry_time: '2024-06-19 10:00:00',
- batchnumber:"444",
- shelf_status: 0
- },
- {
- location: '3',
- type: 'Type B',
- length: '120',
- height: '60',
- thickness: '12',
- quantity: '10',
- entry_time: '2024-06-19 10:00:00',
- batchnumber:"444",
- shelf_status: 1
- },
- {
- location: '4',
- type: 'Type B',
- length: '120',
- height: '60',
- thickness: '12',
- quantity: '10',
- entry_time: '2024-06-19 10:00:00',
- batchnumber:"444",
- shelf_status: 1
- },
- {
- location: '5',
- type: 'Type B',
- length: '120',
- height: '60',
- thickness: '12',
- quantity: '10',
- entry_time: '2024-06-19 10:00:00',
- batchnumber:"444",
- shelf_status: 1
- }
- // Add more data as needed
- ]);
+
+
+ const Hidden = ref(false)
const getTagType2 =(status) => {
switch (status) {
@@ -386,6 +356,12 @@
dialogVisible.value = true;
};
+ const storage = () => {
+ // 鎵撳紑鍏ュ簱瀵硅瘽妗�
+ Hidden.value = true;
+ };
+
+
const handleCloseDialog = () => {
// 鍏抽棴瀵硅瘽妗嗘椂閲嶇疆琛ㄥ崟鏁版嵁
formData.value = {
@@ -451,7 +427,10 @@
const editdialogVisible = ref(false);
const editForm = ref({
quantity: '',
- batchnumber: ''
+ batchnumber: '',
+ length:'',
+ height:'',
+ thickness:''
});
const editFormRef = ref(null);
let currentRow = ref(null);
@@ -459,8 +438,12 @@
// 澶勭悊琛岀偣鍑讳簨浠�
const edithandleRowClick = (row) => {
currentRow.value = row;
+ console.log(row)
editForm.value.quantity = row.quantity.toString();
editForm.value.batchnumber = row.batchnumber;
+ editForm.value.length = row.length;
+ editForm.value.height = row.height;
+ editForm.value.thickness = row.thickness;
editdialogVisible.value = true;
console.log(editForm.value)
};
@@ -481,6 +464,11 @@
const edithandleDialogClose = () => {
editForm.value.quantity = '';
editForm.value.batchnumber = '';
+ editForm.value.width = '';
+ editForm.value.height = '';
+ editForm.value.thickness = '';
+
+
currentRow.value = null;
};
@@ -561,85 +549,8 @@
- let chartInstance = null;
+
-onMounted(() => {
- // Initialize the chart
- chartInstance = echarts.init(document.getElementById('chart'));
-
- // Simulated data for demonstration
- const chartData = {
- labels: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'],
- datasets: [
- { name: '浣跨敤鎯呭喌缁熻', data: [{ remaining: 4, total: 5 }, { remaining: 9, total: 10 }, { remaining: 0, total: 30 }, { remaining: 0, total: 10 },{ remaining: 4, total: 5 }] }
- ]
- };
-
- const options = {
- tooltip: {
- trigger: 'axis',
- axisPointer: {
- type: 'shadow'
- }
- },
- legend: {
- data: ['浣跨敤鎯呭喌缁熻']
- },
- xAxis: {
- type: 'category',
- data: chartData.labels
- },
- yAxis: {
- type: 'value'
- },
- series: chartData.datasets.map(item => ({
- name: item.name,
- type: 'bar',
- stack: '鎬婚噺',
- label: {
- show: true,
- position: 'inside',
- formatter: '{c}%'
- },
- data: item.data.map(dataItem => ({
- value: (dataItem.remaining / dataItem.total * 100).toFixed(2), // 璁$畻鍓╀綑閲忓崰姣旓紝淇濈暀涓や綅灏忔暟
- remaining: dataItem.remaining,
- total: dataItem.total,
- itemStyle: {
- color: getColorByRemaining(dataItem.remaining, dataItem.total)
- }
- }))
- }))
- };
-
- function getColorByRemaining(remaining, total) {
- // 鏍规嵁鍓╀綑閲忎笌鎬婚噺鐨勬瘮渚嬶紝璁剧疆涓嶅悓鐨勯鑹查�昏緫
- const percentage = remaining / total;
- if (percentage >= 0.8) {
- return '#FF6666'; // Red
- } else if (percentage >= 0.5) {
- return '#FFCC66'; // Yellow
- } else {
- return '#66CC66'; // Green
- }
- }
-
- // Set options and render chart
- if (chartInstance) {
- chartInstance.setOption(options);
- }
-});
-
-onBeforeUnmount(() => {
- if (chartInstance) {
- chartInstance.dispose();
- chartInstance = null;
- }
-});
-
-const handleSelectionChange = (selection) => {
- console.log('Selection changed:', selection);
-};
</script>
@@ -659,7 +570,32 @@
+.img-ypcc{
+ margin-left: 80px;
+ background-image:url('../../assets/ypcc.png');
+ background-repeat: no-repeat;
+ background-attachment: local;
+ min-height: 600px;
+ width: 1400px;
+ max-width: 100%;
+ background-size: 1400px 600px;
+ overflow: hidden;
+ position:relative;
+ margin-top:0px
+}
+.img-car1{
+ background-image:url('../../assets/ypccche.png');
+ position: absolute;
+ background-repeat: no-repeat;
+ background-attachment: local;
+ min-height: 400px;
+ width: 200px;
+ max-width: 100%;
+ background-size: 200px 170px;
+ overflow: hidden;
+ position:relative
+}
.custom-dialog {
max-height: 90vh; /* 鏈�澶ч珮搴︿负瑙嗗彛楂樺害鐨�90% */
diff --git a/UI-Project/src/views/LoginView.vue b/UI-Project/src/views/LoginView.vue
index d84f329..7f7bb7d 100644
--- a/UI-Project/src/views/LoginView.vue
+++ b/UI-Project/src/views/LoginView.vue
@@ -48,6 +48,9 @@
//鐧婚檰鏂规硶
const submitForm = (formEl: FormInstance | undefined) => {
+ store.$patch({
+ user: null,
+ })
if (!formEl) return
formEl.validate((valid) => {
if (valid) {
@@ -161,15 +164,16 @@
<el-button :loading="loginLoadings"
type="primary"
native-type="submit"
+ style="width: 80px;"
@click="submitForm(ruleFormRef)"
@keyup.enter.native="keyDown(e)"
plain>{{ $t('login.login') }}
</el-button>
- <el-button :loading="registerLoadings"
+ <!-- <el-button :loading="registerLoadings"
type="primary"
@click="register"
plain>{{ $t('login.register') }}
- </el-button>
+ </el-button> -->
</el-form-item>
</div>
diff --git a/UI-Project/src/views/Slicecage/slicecage.vue b/UI-Project/src/views/Slicecage/slicecage.vue
index 3035fa4..dc2e16a 100644
--- a/UI-Project/src/views/Slicecage/slicecage.vue
+++ b/UI-Project/src/views/Slicecage/slicecage.vue
@@ -20,6 +20,7 @@
const tableDatad = ref([])
const tableDataf = ref([])
const tableDatae = ref([])
+const carPosition = ref([])
const adjustedRects = ref([]);
const project = ref([]);
const adjustedRectsa = ref([]);
@@ -42,17 +43,11 @@
const temperingLayoutId = ref('');
const thickness = ref('');
const width = ref('');
-const carposition1 = ref(60);
-const carposition2 = ref(220);
-const carposition3 = ref(60);
-const carposition4 = ref(260);
const timers1 =ref(true);
const timers2 =ref(true);
const timers3 =ref(true);
const timers4 =ref(true);
const cellshow5=ref(false);
-const c1=ref(false);
-const c2=ref(false);
const cellshow1=ref(true);
const cellshow2=ref(true);
const cellshow3=ref(true);
@@ -471,47 +466,46 @@
tableData.value = data.bigStorageCageInfo[0]
tableDatab.value = data.temperingGlassInfoList[0]
tableDatae.value = data.bigStorageCageUsage[0]
- // adjustedRects.value = data.bigStorageCageInfo1[0]
- window.localStorage.setItem('length', data.bigStorageCageInfo1[0].length)
+ carPosition.value = data.carPostion[0]
+ console.log(carPosition.value);
+ window.localStorage.setItem('length', data.data.bigStorageCageInfos[0][1].length)
let length = window.localStorage.getItem('length')
- adjustedRects.value = data.bigStorageCageInfo1[0].map(rect => ({
+ adjustedRects.value = data.data.bigStorageCageInfos[0][1].map(rect => ({
...rect,
height: 20/length,
top: 29/length
}));
- let small = data.bigStorageCageInfo1[0]
- console.log(small[0].bigStorageCageDetails);
-adjustedRectsa.value = data.bigStorageCageInfo2[0].map(rect => ({
+adjustedRectsa.value = data.bigStorageCageInfos[0][2].map(rect => ({
...rect,
height: 20/length,
top: 29/length
}));
-adjustedRectsb.value = data.bigStorageCageInfo3[0].map(rect => ({
+adjustedRectsb.value = data.bigStorageCageInfos[0][3].map(rect => ({
...rect,
height: 20/length,
top: 29/length
}));
-adjustedRectsc.value = data.bigStorageCageInfo4[0].map(rect => ({
+adjustedRectsc.value = data.bigStorageCageInfos[0][4].map(rect => ({
...rect,
height: 20/length,
top: 29/length
}));
-adjustedRectsd.value = data.bigStorageCageInfo5[0].map(rect => ({
+adjustedRectsd.value = data.bigStorageCageInfos[0][5].map(rect => ({
...rect,
height: 20/length,
top: 29/length
}));
-adjustedRectse.value = data.bigStorageCageInfo6[0].map(rect => ({
+adjustedRectse.value = data.bigStorageCageInfos[0][6].map(rect => ({
...rect,
height: 20/length,
top: 29/length
}));
-adjustedRectsf.value = data.bigStorageCageInfo7[0].map(rect => ({
+adjustedRectsf.value = data.bigStorageCageInfos[0][7].map(rect => ({
...rect,
height: 20/length,
top: 29/length
}));
-adjustedRectsg.value = data.bigStorageCageInfo8[0].map(rect => ({
+adjustedRectsg.value = data.bigStorageCageInfos[0][8].map(rect => ({
...rect,
height: 20/length,
top: 29/length
@@ -623,7 +617,7 @@
<el-table height="100%" ref="table"
@selection-change="handleSelectionChange"
:data="tableDatad" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
- <el-table-column prop="bigStorageCageFeedTask.glassId" align="center" :label="$t('searchOrder.intoglassid')" min-width="100" />
+ <el-table-column prop="bigStorageCageFeedTask.glassId" align="center" :label="$t('searchOrder.intoglassid')" min-width="120" />
<el-table-column prop="bigStorageCageFeedTask.targetSlot" align="center" :label="$t('searchOrder.targetlocation')" min-width="120" />
<!-- <el-table-column prop="task_type" align="center" label="浠诲姟绫诲瀷" min-width="120" />娌℃湁杩斿洖瀛楁 -->
<el-table-column prop="bigStorageCageFeedTask.taskState" align="center" :label="$t('searchOrder.taskstatus')" min-width="120">
@@ -635,9 +629,9 @@
<el-table-column prop="id" align="center" :label="$t('searchOrder.tabid')" min-width="150"/>
<el-table-column prop="deviceId" align="center" :label="$t('searchOrder.tid')" min-width="100"/>
<el-table-column prop="slot" align="center" :label="$t('searchOrder.gridnumber')" min-width="100"/>
- <el-table-column prop="glassId" align="center" :label="$t('searchOrder.glassID')" min-width="100"/>
+ <el-table-column prop="glassId" align="center" :label="$t('searchOrder.glassID')" min-width="120"/>
<el-table-column prop="sequence" align="center" :label="$t('searchOrder.pieceingrid')" min-width="150"/>
- <el-table-column prop="flowCardId" align="center" :label="$t('searchOrder.cardnumber')" min-width="100"/>
+ <el-table-column prop="flowCardId" align="center" :label="$t('searchOrder.cardnumber')" min-width="140"/>
<el-table-column prop="glassType" align="center" :label="$t('searchOrder.typeglass')" min-width="100"/>
<el-table-column prop="width" align="center" :label="$t('searchOrder.width')" min-width="100"/>
<el-table-column prop="height" align="center" :label="$t('searchOrder.height')" min-width="100"/>
@@ -667,17 +661,10 @@
</div>
<!-- // 鐖剁骇妗� -->
<div class="img-dlpl" >
- <div class="img-car1" :style="'z-index:999;left:247px;top:' + carposition1 + 'px;position:absolute;'">
+ <div class="img-car1" :style="'z-index:999;left:247px;top:' + 350*carPosition[0] + 'px;position:absolute;'">
<div v-show="cellshow1" style="margin-top:10px;width:200px;height:5px;background-color:#409EFF;"></div>
</div>
- <div v-show="c1" class="img-car2" :style="'z-index:999;left:704px;top:' + carposition2 + 'px;position:absolute;'">
- <div v-show="cellshow2" style="margin-top:10px;width:200px;height:5px;background-color:#409EFF;"></div>
- </div>
-
- <div v-show="c2" class="img-car3" :style="'z-index:999;left:247px;top:' + carposition3 + 'px;position:absolute;'">
- <div v-show="cellshow3" style="margin-top:10px;width:220px;height:5px;background-color:#409EFF;"></div>
- </div>
- <div class="img-car4" :style="'z-index:999;left:704px;top:' + carposition4 + 'px;position:absolute;'">
+ <div class="img-car4" :style="'z-index:999;left:704px;top:' + 350*carPosition[1] + 'px;position:absolute;'">
<div v-show="cellshow4" style="margin-top:10px;width:200px;height:5px;background-color:#409EFF;"></div>
</div>
<div style="position: relative;">
@@ -1263,30 +1250,6 @@
position:relative
}
.img-car1{
- background-image:url('../../assets/lp.png');
- position: absolute;
- background-repeat: no-repeat;
- background-attachment: local;
- min-height: 200px;
- width: 200px;
- max-width: 100%;
- background-size: 200px 70px;
- overflow: hidden;
- position:relative
-}
-.img-car2{
- background-image:url('../../assets/lpa.png');
- position: absolute;
- background-repeat: no-repeat;
- background-attachment: local;
- min-height: 200px;
- width: 200px;
- max-width: 100%;
- background-size: 200px 70px;
- overflow: hidden;
- position:relative
-}
-.img-car3{
background-image:url('../../assets/lp.png');
position: absolute;
background-repeat: no-repeat;
diff --git a/UI-Project/src/views/UnLoadGlass/Landingindication.vue b/UI-Project/src/views/UnLoadGlass/Landingindication.vue
index 41a6a45..f478ff0 100644
--- a/UI-Project/src/views/UnLoadGlass/Landingindication.vue
+++ b/UI-Project/src/views/UnLoadGlass/Landingindication.vue
@@ -171,7 +171,8 @@
Swal.fire({
// title: '鐜荤拑淇℃伅',
- title: "$t('reportWork.glassinformation')",
+ title: this.$t('reportWork.glassinformation'),
+ // title: "$t('reportWork.glassinformation')",
html: tableContent,
customClass: {
popup: 'format-pre'
diff --git a/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue b/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
index b41ed1c..d3f31ba 100644
--- a/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
+++ b/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
@@ -16,16 +16,14 @@
import { initializeWebSocket, closeWebSocket } from '@/utils/WebSocketService';
import { WebSocketHost ,host} from '@/utils/constants'
const dialogFormVisiblea = ref(false)
-
const dialogFormVisiblea2 = ref(false)
-
// 鏁版嵁
const loading = ref(false);
-
// 寮规鏄剧ず鎺у埗
const dialogFormVisible = ref(false);
// 琛ㄥ崟鏁版嵁
const workstationId = ref('');
+const selectedProjectNoa = ref(null); // 褰撳墠閫変腑鐨勮鑹�
const flowCardId = ref('');
const flowCardOptions = ref('[]');
const tableData = reactive([]);
@@ -33,9 +31,10 @@
const handleSelectionChange = () => {
// 澶勭悊琛ㄦ牸琛岄�夋嫨浜嬩欢
};
-
const handleBindRack = (row) => {
workstationId.value = row.workstationId; // 鍋囪rackNumber鏄灦鍙峰瓧娈电殑灞炴�у悕
+ console.log(row.flowCardId);
+ flowCardId.value = row.flowCardId;
// 鍙戣捣鎺ュ彛璇锋眰鑾峰彇娴佺▼鍗″彿
fetchFlowCardId();
dialogFormVisiblea.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
@@ -60,11 +59,16 @@
}
};
//纭
+
const handleConfirm = async () => {
try {
+ const firstPart = flowCardId.value.split('|')[0].trim(); //
+const twoPart = flowCardId.value.split('|')[1].trim(); //
const response = await request.post('unLoadGlass/downWorkStation/updateFlowCardId', {
workstationId: workstationId.value,
- flowCardId: flowCardId.value
+ flowCardId: firstPart,
+ layer:twoPart
+
});
console.log(response)
@@ -195,6 +199,8 @@
<el-table-column prop="flowCardId" align="center" :label="$t('reportWork.cardnumber')" min-width="120" />
<el-table-column prop="totalquantity" align="center" :label="$t('reportWork.totalquantity')" min-width="120" />
<el-table-column prop="racksnumber" align="center" :label="$t('reportWork.beendropped')" min-width="120" />
+ <el-table-column prop="layer" align="center" label="灞傛暟" min-width="120" />
+ <el-table-column prop="artificialnumber" align="center" label="浜哄伐涓嬬墖鏁�" min-width="120" />
<el-table-column prop="work_state" align="center" :label="$t('reportWork.state')" min-width="120" />
<el-table-column prop="deviceId" align="center" :label="$t('reportWork.devicenumber')" min-width="120" />
<el-table-column
diff --git a/UI-Project/src/views/User/permissions.vue b/UI-Project/src/views/User/permissions.vue
index 740afff..b2f373d 100644
--- a/UI-Project/src/views/User/permissions.vue
+++ b/UI-Project/src/views/User/permissions.vue
@@ -75,6 +75,30 @@
// window.localStorage.setItem('slot', row.slot)
addb.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
};
+function closeDialog(row) {
+ add.value = false;
+ menuName.value = '';
+ listSort.value = '';
+ url.value = '';
+}
+function closeDialoga(row) {
+ adda.value = false;
+ menuName.value = '';
+ listSort.value = '';
+ url.value = '';
+}
+function closeDialogb(row) {
+ addb.value = false;
+ menuName.value = '';
+ listSort.value = '';
+ url.value = '';
+}
+function closeDialogc(row) {
+ addc.value = false;
+ menuName.value = '';
+ listSort.value = '';
+ url.value = '';
+}
// 娣诲姞涓�绾ц彍鍗�
const getTableRow = async () => {
try {
@@ -319,7 +343,7 @@
<el-button type="primary" @click="getTableRow">
{{ $t('customer.sure') }}
</el-button>
- <el-button @click="add = false">{{ $t('customer.cancel') }}</el-button>
+ <el-button @click="closeDialog">{{ $t('customer.cancel') }}</el-button>
</div>
</template>
</el-dialog>
@@ -376,7 +400,7 @@
<el-button type="primary" @click="getTableRowb">
{{ $t('customer.sure') }}
</el-button>
- <el-button @click="addb = false">{{ $t('customer.cancel') }}</el-button>
+ <el-button @click="closeDialogb">{{ $t('customer.cancel') }}</el-button>
</div>
</template>
</el-dialog>
@@ -419,7 +443,7 @@
<el-button type="primary" @click="getTableRowa">
{{ $t('customer.sure') }}
</el-button>
- <el-button @click="adda = false">{{ $t('customer.cancel') }}</el-button>
+ <el-button @click="closeDialoga">{{ $t('customer.cancel') }}</el-button>
</div>
</template>
</el-dialog>
@@ -462,7 +486,7 @@
<el-button type="primary" @click="getTableRowac">
{{ $t('customer.sure') }}
</el-button>
- <el-button @click="addc = false">{{ $t('customer.cancel') }}</el-button>
+ <el-button @click="closeDialogc">{{ $t('customer.cancel') }}</el-button>
</div>
</template>
</el-dialog>
diff --git a/UI-Project/src/views/User/rolelist.vue b/UI-Project/src/views/User/rolelist.vue
index 5dcbb0b..78dfa0f 100644
--- a/UI-Project/src/views/User/rolelist.vue
+++ b/UI-Project/src/views/User/rolelist.vue
@@ -13,7 +13,7 @@
// import { ref } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
// import LanguageMixin from './lang/LanguageMixin'
-const selectedProjectNoa = ref(''); // 褰撳墠閫変腑鐨勮鑹�
+const selectedProjectNoa = ref(null); // 褰撳墠閫変腑鐨勮鑹�
// const options = ref<any[]>([]); // 涓嬫媺閫夐」鍒楄〃
const name = ref('');
const tableData = ref([])
@@ -53,26 +53,34 @@
console.error('Error fetching options:', error);
}
};
-// 娣诲姞
+// 娣诲姞
const getTableRow = async () => {
try {
let menuList = [];
- selectedOptions.value.forEach(array => {
- if (array.length >= 2) {
- let id = array[0];
- let parentId = array[1];
- menuList.push({
- id: id,
- parentId: 0,
- children: [
- {
- id: parentId,
- parentId: id,
- }
- ],
- });
+ let parentIdMap = {}; // 鐢ㄤ簬瀛樺偍宸茬粡娣诲姞鐨勭埗椤�
+ selectedOptions.value.forEach(array => {
+ if (array.length >= 2) {
+ let id = array[0];
+ let parentId = array[1];
+ // 濡傛灉id杩樻湭浣滀负鐖堕」娣诲姞锛屽垯娣诲姞瀹�
+ if (!parentIdMap[id]) {
+ menuList.push({
+ id: id,
+ parentId: 0, // 閫氬父锛岄《绾ч」鐨刾arentId鍙兘鏄痭ull鎴栫壒瀹氱殑鏍笽D锛岃繖閲岃涓�0鍙兘鏄釜鐗规畩鐢ㄩ��
+ children: []
+ });
+ parentIdMap[id] = menuList[menuList.length - 1]; // 鏇存柊鏄犲皠
+ }
+ // 鍚戝搴旂殑鐖堕」娣诲姞瀛愰」
+ if (!parentIdMap[id].children.some(child => child.id === parentId)) {
+ // 妫�鏌ユ槸鍚﹀凡瀛樺湪鐩稿悓鐨勫瓙椤癸紙鍩轰簬id锛夛紝閬垮厤閲嶅娣诲姞
+ parentIdMap[id].children.push({
+ id: parentId,
+ parentId: id
+ });
+ }
}
- });
+ });
const dataToSend = {
name: name.value,
menuList: menuList
@@ -91,64 +99,124 @@
console.error(error);
}
};
-// 澶勭悊缂栬緫鎸夐挳鐐瑰嚮
function handleEdit(row) {
- name.value = row.name;
- selectedOptions.value = row.selectedOptions
-// options.value = res.data.tree
- adda.value = true; // 鏄剧ず瀵硅瘽妗�
- window.localStorage.setItem('id', row.id)
+ name.value = row.name;
+ adda.value = true;
+ window.localStorage.setItem('ids', row.id);
+ const parentIdMap = {};
+ const menuItemsById = {}; // 蹇�熸煡鎵捐彍鍗曢」
+ let topLevelItems = []; // 瀛樺偍椤剁骇鑿滃崟椤�
+ row.menuList.forEach(item => {
+ const parentId = item.parentId === 0 ? null : item.parentId;
+ const menuItem = {
+ id: item.id,
+ parentId: parentId,
+ menuName: item.menuName,
+ children: []
+ };
+ menuItemsById[item.id] = menuItem;
+ // 鍒濆鍖栨垨鏇存柊parentIdMap涓殑鏁扮粍
+ if (!parentIdMap[parentId]) {
+ parentIdMap[parentId] = [];
+ }
+ if (parentId === null) {
+ // 椤剁骇鑿滃崟椤圭洿鎺ユ坊鍔犲埌topLevelItems
+ topLevelItems.push(menuItem);
+ } else {
+ // 闈為《绾ц彍鍗曢」娣诲姞鍒皃arentIdMap涓�
+ parentIdMap[parentId].push(menuItem);
+ }
+ });
+ for (const parentId in parentIdMap) {
+ if (parentId !== 'null') { // 璺宠繃椤剁骇鑿滃崟椤�
+ parentIdMap[parentId].forEach(child => {
+ // 鏌ユ壘鐖堕」骞舵坊鍔犲瓙椤�
+ if (menuItemsById[parentId]) {
+ menuItemsById[parentId].children.push(child);
+ }
+ });
+ }
+ }
+ if (selectedOptions.value !== topLevelItems) {
+ selectedOptions.value = topLevelItems;
+ }
+ console.log(topLevelItems);
+ // selectedOptions.value = topLevelItems;
+const topLevelItemsWithChildren = topLevelItems; // 鍖呭惈椤剁骇鑿滃崟椤瑰強鍏跺瓙鑿滃崟椤圭殑鏁扮粍 聽
+ let selectedPath = [];
+// 寰幆閬嶅巻 topLevelItemsWithChildren 鏁扮粍
+for (let i = 0; i < topLevelItemsWithChildren.length; i++) {
+ // 娣诲姞椤剁骇鑿滃崟椤圭殑 id
+ selectedPath.push(topLevelItemsWithChildren[i].id);
+ // 濡傛灉鏈夊瓙鑿滃崟椤癸紝娣诲姞绗竴涓瓙鑿滃崟椤圭殑 id
+ if (topLevelItemsWithChildren[i].children && topLevelItemsWithChildren[i].children.length > 0) {
+ for (let j = 0; j < topLevelItemsWithChildren[i].children.length; j++) {
+ // 灏嗘瘡涓瓙鑿滃崟椤圭殑 id 娣诲姞鍒� selectedPath 涓�
+ selectedPath.push(topLevelItemsWithChildren[i].children[j].id);
+ }
+ }
+}
+ console.log(selectedPath);
+selectedOptions.value = selectedPath;
}
// 缂栬緫
const getTableRowa = async () => {
- let id = window.localStorage.getItem('id')
+ let ids = window.localStorage.getItem('ids')
try {
let menuList = [];
- selectedOptions.value.forEach(array => {
- if (array.length >= 2) {
- let id = array[0];
- let parentId = array[1];
- menuList.push({
- id: id,
- parentId: 0,
- children: [
- {
- id: parentId,
- parentId: id,
- }
- ],
- });
+ let parentIdMap = {}; // 鐢ㄤ簬瀛樺偍宸茬粡娣诲姞鐨勭埗椤�
+ selectedOptions.value.forEach(array => {
+ if (array.length >= 2) {
+ let id = array[0];
+ let parentId = array[1];
+ // 濡傛灉id杩樻湭浣滀负鐖堕」娣诲姞锛屽垯娣诲姞瀹�
+ if (!parentIdMap[id]) {
+ menuList.push({
+ id: id,
+ parentId: 0, // 閫氬父锛岄《绾ч」鐨刾arentId鍙兘鏄痭ull鎴栫壒瀹氱殑鏍笽D锛岃繖閲岃涓�0鍙兘鏄釜鐗规畩鐢ㄩ��
+ children: []
+ });
+ parentIdMap[id] = menuList[menuList.length - 1]; // 鏇存柊鏄犲皠
+ }
+ // 鍚戝搴旂殑鐖堕」娣诲姞瀛愰」
+ if (!parentIdMap[id].children.some(child => child.id === parentId)) {
+ // 妫�鏌ユ槸鍚﹀凡瀛樺湪鐩稿悓鐨勫瓙椤癸紙鍩轰簬id锛夛紝閬垮厤閲嶅娣诲姞
+ parentIdMap[id].children.push({
+ id: parentId,
+ parentId: id
+ });
+ }
}
- });
+ });
const dataToSend = {
- id:id,
+ id:ids,
name: name.value,
menuList: menuList
};
const response = await request.post('/loadGlass/sys/role/updateRole', dataToSend);
- // try {
- // const response = await request.post('/loadGlass/sys/role/updateRole', {
- // id: id,
- // name: name.value,
- // });
-
if (response.code == 200) {
- // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
ElMessage.success(response.message);
adda.value = false;
name.value = '';
- selectedOptions.value = '';
- fetchOptionsa()
- tableData.value = response.data;
+ selectedOptions.value = '';
+ fetchOptionsa();
} else {
- // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
ElMessage.error(response.message);
}
} catch (error) {
- // 澶勭悊閿欒
console.error(error);
}
};
+function closeDialog(row) {
+ add.value = false;
+ name.value = '';
+ selectedOptions.value = '';
+}
+function closeDialoga(row) {
+ adda.value = false;
+ name.value = '';
+ selectedOptions.value = '';
+}
// 鍒犻櫎
const opena = async(row) => {
try {
@@ -244,7 +312,7 @@
<el-button type="primary" @click="getTableRow">
{{ $t('delivery.sure') }}
</el-button>
- <el-button @click="add = false"> {{ $t('delivery.cancel') }}</el-button>
+ <el-button @click="closeDialog"> {{ $t('delivery.cancel') }}</el-button>
</div>
</template>
</el-dialog>
@@ -284,7 +352,7 @@
<el-button type="primary" @click="getTableRowa">
{{ $t('delivery.sure') }}
</el-button>
- <el-button @click="adda = false">{{ $t('delivery.cancel') }}</el-button>
+ <el-button @click="closeDialoga">{{ $t('delivery.cancel') }}</el-button>
</div>
</template>
</el-dialog>
diff --git a/UI-Project/src/views/User/userlist.vue b/UI-Project/src/views/User/userlist.vue
index 8e97491..5d79a7b 100644
--- a/UI-Project/src/views/User/userlist.vue
+++ b/UI-Project/src/views/User/userlist.vue
@@ -13,7 +13,7 @@
const { t } = useI18n()
let language = ref(localStorage.getItem('lang') || 'zh')
// import LanguageMixin from './lang/LanguageMixin'
-const selectedProjectNoa = ref(''); // 褰撳墠閫変腑鐨勮鑹�
+const selectedProjectNoa = ref(null); // 褰撳墠閫変腑鐨勮鑹�
// const options = ref<any[]>([]); // 涓嬫媺閫夐」鍒楄〃
const userName = ref('');
const password = ref('');
@@ -98,11 +98,29 @@
};
// 澶勭悊缂栬緫鎸夐挳鐐瑰嚮
function handleEdit(row) {
- userName.value = row.userName;
+ userName.value = row.userName;
+ if (row.roleList && row.roleList.length > 0) {
+ const firstRole = row.roleList[0];
+ selectedProjectNoa.value = firstRole.id; // 璁剧疆涓篒D锛岃�屼笉鏄痭ame
+ }
adda.value = true; // 鏄剧ず瀵硅瘽妗�
window.localStorage.setItem('id', row.id)
}
+
+function closeDialog(row) {
+ add.value = false;
+ userName.value = '';
+ nickName.value = '';
+ password.value = '';
+ selectedProjectNoa.value = '';
+}
+function closeDialoga(row) {
+ adda.value = false;
+ userName.value = '';
+ nickName.value = '';
+ password.value = '';
+}
// 娣诲姞
const getTableRow = async () => {
try {
@@ -127,7 +145,7 @@
tableData.value = response.data;
} else {
// 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
- ElMessage.error(response.msg);
+ ElMessage.error(response.message);
}
} catch (error) {
// 澶勭悊閿欒
@@ -277,7 +295,7 @@
<el-button type="primary" @click="getTableRow">
{{ $t('productStock.sure') }}
</el-button>
- <el-button @click="add = false">{{ $t('productStock.cancel') }}</el-button>
+ <el-button @click="closeDialog">{{ $t('productStock.cancel') }}</el-button>
</div>
</template>
</el-dialog>
@@ -324,7 +342,7 @@
<el-button type="primary" @click="getTableRowa">
{{ $t('productStock.sure') }}
</el-button>
- <el-button @click="adda = false">{{ $t('productStock.cancel') }}</el-button>
+ <el-button @click="closeDialoga">{{ $t('productStock.cancel') }}</el-button>
</div>
</template>
</el-dialog>
diff --git a/UI-Project/src/views/largescreen/largescreen.vue b/UI-Project/src/views/largescreen/largescreen.vue
new file mode 100644
index 0000000..5cfa3c2
--- /dev/null
+++ b/UI-Project/src/views/largescreen/largescreen.vue
@@ -0,0 +1,195 @@
+<template>
+ <el-card style="flex: 1;margin-left: 10px;margin-top: 10px;margin-right: 10px;" v-loading="loading">
+ <el-scrollbar height="600px">
+ <div id="top" style="height: 150px;background-color: #911005;">
+ <v-chart ref="mychart1" class="chart" :option="optionPie "></v-chart>
+ </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 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" :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" align="center" :label="$t('large.time')" min-width="110" />
+ <el-table-column prop="orderId" 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')" min-width="180" />
+ <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>
+import { Delete, Upload } from '@element-plus/icons-vue'
+import { ElMessage, ElMessageBox } from 'element-plus'
+import { ref, onMounted , onBeforeUnmount, reactive, computed, watch, shallowRef } 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()
+// import * as echarts from 'echarts';
+// import 'echarts/lib/chart/pie';
+// import 'echarts/dist/echarts.min.css';
+const tableData = ref([])
+const tableDatab = ref([])
+const tableDatac = ref([])
+const blinda = ref(false)
+const handleBinda = (row) => {
+ blinda.value = true;
+};
+function getStatusType(warehousing) {
+ switch (warehousing) {
+ case 0:
+ 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');
+ }
+}
+// function getStatusType(warehousing: number) {
+// switch (warehousing) {
+// case 0:
+// return 'success';
+// case 1:
+// return 'primary';
+// case 2:
+// return 'danger';
+// }
+// }
+// function getStatusText(warehousing: number) {
+// 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 鐨勬暟鎹�
+ tableData.value = data.awaitingRepairs[0]
+ tableDatab.value = data.DoingTask[0]
+ tableDatac.value = data.orders[0]
+};
+onMounted(() => {
+ // fetchFlowCardId();
+ // fetchTableData(); // 鑾峰彇鏁版嵁
+ initializeWebSocket(socketUrl, handleMessage);
+});
+onBeforeUnmount(() => {
+ console.log("鍏抽棴浜�")
+ closeWebSocket();
+});
+
+
+</script>
+
+<style scoped>
+.rect {
+ border: 1px solid black; /* 璁剧疆鐭╁舰鐨勮竟妗� */
+ /* background-color: lightblue; 璁剧疆鐭╁舰鐨勮儗鏅壊 */
+}
+.centered-text {
+ /* 璁剧疆鏂囧瓧灞呬腑鏍峰紡 */
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ height: 100%; /* 纭繚div鍗犳嵁鏁翠釜鐭╁舰鐨勯珮搴� */
+}
+#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/common/config/Const.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java
index 252da8f..5423c6e 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java
@@ -29,8 +29,7 @@
* A09鍑虹墖鐩爣浣嶇疆 d02鍗ц浆绔� 閽㈠寲鍑虹墖 3001
* A10鍑虹墖鐩爣浣嶇疆 d05鍗ц浆绔� 浜哄伐鍑虹墖 3002
*/
- //todo:涓存椂灏嗛挗鍖栧嚭鐗囩嚎璺敼涓轰汉宸ュ嚭鐗�
- public static final Integer TEMPERING_OUT_TARGET_POSITION = 3002;
+ public static final Integer TEMPERING_OUT_TARGET_POSITION = 3001;
public static final Integer ARTIFICIAL_OUT_TARGET_POSITION = 3002;
/**
@@ -90,21 +89,29 @@
* 2 鍗ц浆绔嬭繘鐗囧畬鎴�
* 3 澶ц溅杩涚墖瀹屾垚
* 4 澶х悊鐗囩杩涚墖瀹屾垚
+ * 5 澶х悊鐗囩杩涚墖澶辫触
+ * 6 澶х悊鐗囩杩涚墖鐮存崯
*/
public static final Integer BIG_STORAGE_IN_NEW = 1;
public static final Integer BIG_STORAGE_IN_UP = 2;
public static final Integer BIG_STORAGE_IN_CAR = 3;
public static final Integer BIG_STORAGE_IN_SLOT = 4;
+ public static final Integer BIG_STORAGE_IN_ERROR = 5;
+ public static final Integer BIG_STORAGE_IN_DAMAGE = 6;
public static final List<Integer> BIG_STORAGE_IN_UP_ALL = Arrays.asList(1, 2);
/**
* 鍗ц浆绔嬪嚭鐗囪姹�
* 1 浠诲姟鐢熸垚
* 2 鐜荤拑杩涘ぇ杞﹀畬鎴�
* 3 澶ц溅鍑虹墖瀹屾垚
+ * 4 澶х悊鐗囩杩涚墖澶辫触
+ * 5 澶х悊鐗囩杩涚墖鐮存崯
*/
public static final Integer BIG_STORAGE_OUT_NEW = 1;
public static final Integer BIG_STORAGE_OUT_CAR = 2;
public static final Integer BIG_STORAGE_OUT_SUCCESS = 3;
+ public static final Integer BIG_STORAGE_OUT_ERROR = 4;
+ public static final Integer BIG_STORAGE_OUT_DAMAGE = 5;
/**
* 鍗ц浆绔嬪嚭鐗囪姹�
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 8eb6426..2d78544 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
@@ -32,7 +32,7 @@
/**
* 宸ュ簭
*/
- private Integer workingProcedure;
+ private String workingProcedure;
/**
* 鐜荤拑id
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 8d32fb0..b81f7b2 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
@@ -12,6 +12,7 @@
import com.mes.glassinfo.mapper.GlassInfoMapper;
import com.mes.work_assignment.entity.WorkAssignment;
import com.mes.work_assignment.mapper.WorkAssignmentMapper;
+import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -82,21 +83,21 @@
LambdaQueryWrapper<GlassInfo> glassInfoSelectWrapper=new LambdaQueryWrapper<>();
glassInfoSelectWrapper.eq(GlassInfo::getGlassId,damage.getGlassId());
GlassInfo glassInfo=glassInfoMapper.selectOne(glassInfoSelectWrapper);
+ BeanUtils.copyProperties(glassInfo, damage);
LambdaQueryWrapper<WorkAssignment> workAssignmentSelectWrapper=new LambdaQueryWrapper<>();
workAssignmentSelectWrapper
.eq(WorkAssignment::getLine,damage.getLine())
.eq(WorkAssignment::getWorkProcesses,damage.getWorkingProcedure());
WorkAssignment workAssignment=workAssignmentMapper.selectOne(workAssignmentSelectWrapper);
+
damage.setTeamsGroupsName(workAssignment.getTeamsGroupsName());
damage.setDeviceName(workAssignment.getDeviceName());
-
- damage.setEngineerId(glassInfo.getEngineerId());
- damage.setTemperingLayoutId(glassInfo.getTemperingLayoutId());
damage.setProcessId(glassInfo.getFlowCardId());
damage.setOrderNumber(glassInfo.getGlassType());
damage.setTechnologyNumber(glassInfo.getLayer());
damage.setDamageTime(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 f85f7f8..fc7e13f 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
@@ -3,6 +3,7 @@
import com.mes.glassinfo.entity.GlassInfo;
import com.github.yulichang.base.MPJBaseService;
import java.util.List;
+import java.util.Map;
/**
* <p>
@@ -22,5 +23,17 @@
* 淇濆瓨灏忕墖琛�
*/
void saveGlassInfo(List<GlassInfo> glassinfo);
+
+ int getGlassInfoCountByFlowCardId(String flowCardId,int layer);
+
+ /**
+ * @return
+ * 鏌ヨ鎵�鏈夊伐绋嬬姸鎬佷笉涓�300涓嶅悓娴佺▼鍗″彿
+ */
+ List<Map<String, Object>> getFlowCardId();
+
+
+
+
}
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 ef50205..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
@@ -89,9 +89,11 @@
/*
@Override
- public int getGlassInfoCountByFlowCardId(String flowCardId) {
+ public int getGlassInfoCountByFlowCardId(String flowCardId,int layer) {
return baseMapper.selectCount(new QueryWrapper<GlassInfo>().lambda()
- .eq(GlassInfo::getFlowCardId, flowCardId));
+ .eq(GlassInfo::getFlowCardId, flowCardId)
+ .eq(GlassInfo::getLayer, layer));
+
}
@@ -112,20 +114,24 @@
new QueryWrapper<GlassInfo>()
.in("engineer_id", engineerIds)
.groupBy("flow_card_id")
+ .groupBy("layer")
);
// 杞崲涓� List<Map<String, Object>>
List<Map<String, Object>> result = glassInfos.stream()
.map(glassInfo -> {
Map<String, Object> map = new HashMap<>();
- map.put("flow_card_id", glassInfo.getFlowCardId());
+ map.put("flow_card_id", glassInfo.getFlowCardId()+" | "+glassInfo.getLayer());
// 濡傛灉杩樻湁鍏朵粬瀛楁闇�瑕佹坊鍔犲埌 map 涓紝鍦ㄨ繖閲岀户缁坊鍔�
return map;
})
.collect(Collectors.toList());
- log.info("result: {}", result);
+ log.info("result666: {}", result);
return result;
}*/
+
+
+
}
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/mapper/TemperingGlassInfoMapper.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/mapper/TemperingGlassInfoMapper.java
index ef514ec..65122ab 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/mapper/TemperingGlassInfoMapper.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/mapper/TemperingGlassInfoMapper.java
@@ -15,7 +15,7 @@
* @author zhoush
* @since 2024-04-07
*/
-@DS("salve_hangzhoumes_1")
+@DS("salve_hangzhoumes")
public interface TemperingGlassInfoMapper extends MPJBaseMapper<TemperingGlassInfo> {
boolean saveBatch(@Param(value = "list") List<TemperingGlassInfo> list);
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingAgoServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingAgoServiceImpl.java
index 01ed8a7..e8a10af 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingAgoServiceImpl.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingAgoServiceImpl.java
@@ -1,13 +1,12 @@
package com.mes.temperingglass.service.impl;
-import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.github.yulichang.base.MPJBaseServiceImpl;
import com.mes.temperingglass.entity.TemperingGlassInfo;
import com.mes.temperingglass.mapper.TemperingGlassInfoMapper;
import com.mes.temperingglass.service.TemperingAgoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import com.github.yulichang.base.MPJBaseServiceImpl;
import java.util.List;
@@ -20,7 +19,6 @@
* @since 2024-04-07
*/
@Service
-@DS("salve_hangzhoumes")
public class TemperingAgoServiceImpl extends MPJBaseServiceImpl<TemperingGlassInfoMapper, TemperingGlassInfo> implements TemperingAgoService {
@Autowired
TemperingGlassInfoMapper temperingMapper;
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgglasstask/entity/EdgGlassTaskInfo.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgglasstask/entity/EdgGlassTaskInfo.java
index 810e146..1d660e3 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgglasstask/entity/EdgGlassTaskInfo.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgglasstask/entity/EdgGlassTaskInfo.java
@@ -4,6 +4,7 @@
import lombok.EqualsAndHashCode;
import java.io.Serializable;
+import java.util.Date;
/**
* <p>
@@ -31,7 +32,8 @@
private Integer status;
+ private Integer line;
-
+ private Date time;
}
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java
index 4791b00..1ac00f6 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java
@@ -66,14 +66,22 @@
@Value("${mes.sequence.order}")
private boolean sequenceOrder;
- @Value("${mes.firstLength}")
+ @Value("${mes.max.firstLength}")
private String firstLength;
- @Value("${mes.secondLength}")
+ @Value("${mes.max.secondLength}")
private String secondLength;
+ @Value("${mes.min.firstLength}")
+ private String minFirstLength;
+ @Value("${mes.min.secondLength}")
+ private String minSecondLength;
+
+ @Scheduled(fixedDelay = 1000)
public void plcHomeEdgTask() {
+ Date startDate = new Date();
+ log.info("鏈浠诲姟寮�濮嬫墽琛屾椂闂达細{}", startDate);
PlcParameterObject plcParameterObject = S7object.getinstance().PlcMesObject;
String taskRequestTypeValue = plcParameterObject.getPlcParameter("A06_request_word").getValue();
String glassIdeValue = plcParameterObject.getPlcParameter("A05_scanning_ID").getValue();
@@ -118,6 +126,8 @@
inTo(glassIdeValue, confirmationWrodAddress, currentSlot);
}
}
+ Date endDate = new Date();
+ log.info("鏈浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms", endDate, endDate.getTime() - startDate.getTime());
}
public void plcToHomeEdgTask() {
@@ -235,7 +245,7 @@
// 1.2.3銆佹寜鐓у嚭鐗囦俊鎭幓璇︽儏琛ㄦ煡璇㈡牸瀛愬湪绗煎瓙閲岄潰鍓╀綑鐩稿悓灏哄鐨勭幓鐠冩暟鎹笖浠ョ増鍥緄d銆佺増搴忓崌搴忔帓搴� 鍙栫涓�鍧楃幓鐠冨嚭鐗�
// 2銆佸鏋滄病鏈夊巻鍙插嚭鐗囦换鍔�
// 2.1銆佸嚭褰撳墠鐗堝浘id鏈�灏忕増搴忔渶灏忕殑鐜荤拑锛堥棶棰橈細涓ゆ潯绾块兘娌℃湁鍘嗗彶浠诲姟锛屽嚭鐗囨椂涓ゆ潯绾跨殑鐜荤拑灏哄鐩稿悓锛屾槸鍚︽壘灏哄涓嶅悓鐨勶級
- if (out08Glassstate == 2 && out10Glassstate == 2) {
+ if ((out08Glassstate == 2 && out10Glassstate == 2) || (out08Glassstate == 0 && out10Glassstate == 0)) {
log.info("A09銆丄10涓簕},{}闈炶嚜鍔ㄧ姸鎬侊紝鏃犳硶鍑虹墖");
return Boolean.FALSE;
}
@@ -257,10 +267,10 @@
EdgStorageCageDetails a10EdgGlass = queryGlassByTaskCache(Const.A10_OUT_TARGET_POSITION, Const.GLASS_CACHE_TYPE_OUT_ALL);
endcell = queryLineByGlassInfo(a09EdgGlass, a10EdgGlass, glassInfo, out08Glassstate, out10Glassstate);
} else {
- //鍒ゆ柇涓ゆ潯绾挎槸鍚﹂兘绌洪棽
- endcell = out10Glassstate == 2 ? Const.A09_OUT_TARGET_POSITION : Const.A10_OUT_TARGET_POSITION;
+ //鎸夌収鐘舵�佸垽鏂袱鏉$嚎璧伴偅鏉$嚎
+ endcell = computerLineByState(out08Glassstate, out10Glassstate);
- if ((out08Glassstate == 0 && out10Glassstate == 0) || (out08Glassstate == 1 && out10Glassstate == 1)) {
+ if (out08Glassstate == 1 && out10Glassstate == 1) {
EdgStorageCageDetails a09EdgGlass = queryGlassByTaskCache(Const.A09_OUT_TARGET_POSITION, Const.GLASS_CACHE_TYPE_OUT_ALL);
EdgStorageCageDetails a10EdgGlass = queryGlassByTaskCache(Const.A10_OUT_TARGET_POSITION, Const.GLASS_CACHE_TYPE_OUT_ALL);
if (a09EdgGlass == null && a10EdgGlass == null) {
@@ -272,6 +282,10 @@
wrapper.innerJoin("(select glass_id, case when height <= width then width else height end as first_length, " +
"case when width < height then width else height end as second_length from edg_storage_cage_details) t1 " +
"on t.glass_id = t1.glass_id and (t1.first_length <=" + firstLength + " and t1.second_length<=" + secondLength + ") ");
+ } else {
+ wrapper.innerJoin("(select glass_id, case when height <= width then width else height end as first_length, " +
+ "case when width < height then width else height end as second_length from edg_storage_cage_details) t1 " +
+ "on t.glass_id = t1.glass_id and (t1.first_length >=" + minFirstLength + " and t1.second_length>=" + minSecondLength + ") ");
}
wrapper.last("order by count(t.glass_id) desc limit 2");
List<EdgStorageCageDetails> list = edgStorageCageDetailsService.list(wrapper);
@@ -280,9 +294,13 @@
.selectAll(GlassInfo.class).eq("t.glass_id", glassId);
// .inSql("t.engineer_id", "select engineer_id from engineering where state = 1");
if (endcell == Const.A10_OUT_TARGET_POSITION) {
- queryWrapper.innerJoin("(select glass_id, case when height <= width then width else height end as first_length, " +
- "case when width < height then width else height end as second_length from glass_info) t1 " +
+ wrapper.innerJoin("(select glass_id, case when height <= width then width else height end as first_length, " +
+ "case when width < height then width else height end as second_length from edg_storage_cage_details) t1 " +
"on t.glass_id = t1.glass_id and (t1.first_length <=" + firstLength + " and t1.second_length<=" + secondLength + ") ");
+ } else {
+ wrapper.innerJoin("(select glass_id, case when height <= width then width else height end as first_length, " +
+ "case when width < height then width else height end as second_length from edg_storage_cage_details) t1 " +
+ "on t.glass_id = t1.glass_id and (t1.first_length >=" + minFirstLength + " and t1.second_length>=" + minSecondLength + ") ");
}
GlassInfo one = glassInfoService.getOne(queryWrapper);
if (one != null) {
@@ -467,18 +485,20 @@
*/
private Integer queryLineByGlassInfo(EdgStorageCageDetails a08EdgStorageCageDetails, EdgStorageCageDetails a10EdgStorageCageDetails,
EdgStorageCageDetails glassInfo, int out08Glassstate, int out10Glassstate) {
- boolean b08 = a08EdgStorageCageDetails != null && a08EdgStorageCageDetails.getHeight() == glassInfo.getHeight()
- && a08EdgStorageCageDetails.getWidth() == glassInfo.getWidth();
- boolean b10 = a10EdgStorageCageDetails != null && a10EdgStorageCageDetails.getHeight() == glassInfo.getHeight()
- && a10EdgStorageCageDetails.getWidth() == glassInfo.getWidth();
//瀛樺湪鍑虹墖浠诲姟 07涓虹┖
- if (b10) {
- return out10Glassstate == 2 ? Const.A09_OUT_TARGET_POSITION : Const.A10_OUT_TARGET_POSITION;
+ if (out08Glassstate == 1 && out10Glassstate == 1) {
+ boolean b08 = a08EdgStorageCageDetails != null && a08EdgStorageCageDetails.getHeight() == glassInfo.getHeight()
+ && a08EdgStorageCageDetails.getWidth() == glassInfo.getWidth();
+ boolean b10 = a10EdgStorageCageDetails != null && a10EdgStorageCageDetails.getHeight() == glassInfo.getHeight()
+ && a10EdgStorageCageDetails.getWidth() == glassInfo.getWidth();
+ if (b08) {
+ return Const.A09_OUT_TARGET_POSITION;
+ }
+ if (b10) {
+ return Const.A10_OUT_TARGET_POSITION;
+ }
}
- if (b08) {
- return out08Glassstate == 2 ? Const.A10_OUT_TARGET_POSITION : Const.A09_OUT_TARGET_POSITION;
- }
- return out10Glassstate == 2 ? Const.A09_OUT_TARGET_POSITION : Const.A10_OUT_TARGET_POSITION;
+ return computerLineByState(out08Glassstate, out10Glassstate);
}
/**
@@ -494,10 +514,14 @@
wrapper.select("count(t.glass_id) as count, t.width, t.height")
.eq("t.state", Const.GLASS_STATE_IN)
.groupBy("t.width, t.height");
- if (endcell == Const.A09_OUT_TARGET_POSITION) {
+ if (endcell == Const.A10_OUT_TARGET_POSITION) {
wrapper.innerJoin("(select glass_id, case when height <= width then width else height end as first_length, " +
"case when width < height then width else height end as second_length from edg_storage_cage_details) t1 " +
"on t.glass_id = t1.glass_id and (t1.first_length <=" + firstLength + " and t1.second_length<=" + secondLength + ") ");
+ } else {
+ wrapper.innerJoin("(select glass_id, case when height <= width then width else height end as first_length, " +
+ "case when width < height then width else height end as second_length from edg_storage_cage_details) t1 " +
+ "on t.glass_id = t1.glass_id and (t1.first_length >=" + minFirstLength + " and t1.second_length>=" + minSecondLength + ") ");
}
wrapper.last("order by count(t.glass_id) desc limit 2");
List<EdgStorageCageDetails> list = edgStorageCageDetailsService.list(wrapper);
@@ -587,7 +611,7 @@
boolean taskCacheStatus = saveTaskCache(glassInfo.getGlassId(), glassInfo.getSlot(), endcell, Const.GLASS_CACHE_TYPE_OUT);
log.info("6銆佹坊鍔犲嚭鐗囦换鍔℃槸鍚﹀畬鎴愶細{}", taskCacheStatus);
}
- boolean glassSizeStatus = saveGlassSize(glassInfo);
+ boolean glassSizeStatus = saveGlassSize(glassInfo, endcell);
log.info("7銆佹坊鍔犲嚭鐗囩幓鐠冨昂瀵镐俊鎭埌纾ㄨ竟鍓嶇幓鐠冭〃鏄惁瀹屾垚锛歿}", glassSizeStatus);
S7object.getinstance().plccontrol.writeWord(confirmationWrodAddress, 1);
log.info("8銆佸彂閫佺‘璁ゅ瓧宸插畬鎴�");
@@ -620,19 +644,42 @@
* 娣诲姞鐞嗙墖绗间换鍔�
*
* @param glassInfo
+ * @param endcell
* @return
*/
- private boolean saveGlassSize(EdgStorageCageDetails glassInfo) {
+ private boolean saveGlassSize(EdgStorageCageDetails glassInfo, int endcell) {
EdgGlassTaskInfo edgGlassTaskInfo = new EdgGlassTaskInfo();
BeanUtils.copyProperties(glassInfo, edgGlassTaskInfo);
edgGlassTaskInfo.setHeight((int) (glassInfo.getHeight() * ratio));
edgGlassTaskInfo.setWidth((int) (glassInfo.getWidth() * ratio));
edgGlassTaskInfo.setThickness((int) (glassInfo.getThickness() * ratio));
edgGlassTaskInfo.setStatus(Const.EDG_GLASS_BEFORE);
+ edgGlassTaskInfo.setLine(endcell);
+ edgGlassTaskInfo.setTime(new Date());
return edgGlassTaskInfoService.save(edgGlassTaskInfo);
}
-
+ /**
+ * 璁$畻鍑虹墖绾胯矾
+ * 宸叉帓闄ら兘涓�2 閮戒负0 鐨勬儏鍐�
+ *
+ * @param out08Glassstate
+ * @param out10Glassstate
+ * @return
+ */
+ private int computerLineByState(int out08Glassstate, int out10Glassstate) {
+ if (out08Glassstate == 0) {
+ if (out10Glassstate == 2) {
+ return Const.A09_OUT_TARGET_POSITION;
+ } else {
+ return Const.A10_OUT_TARGET_POSITION;
+ }
+ } else if (out08Glassstate == 1) {
+ return Const.A09_OUT_TARGET_POSITION;
+ } else {
+ return Const.A10_OUT_TARGET_POSITION;
+ }
+ }
@Scheduled(fixedDelay = 1000)
public void CacheGlassTasks() {
@@ -641,8 +688,8 @@
List<Map<String, Object>> currentCutTerritorys = edgStorageCageDetailsService.selectCutTerritory();
jsonObject.append("currentCutTerritory", currentCutTerritorys);
//纾ㄨ竟淇℃伅
- List<Map<String, Object>> EdgTasks1 = taskCacheService.selectEdgInfo(Const.A09_OUT_TARGET_POSITION.toString());
- List<Map<String, Object>> EdgTasks2 = taskCacheService.selectEdgInfo(Const.A10_OUT_TARGET_POSITION.toString());
+ List<Map<String, Object>> EdgTasks1 = taskCacheService.selectEdgInfo("2001");
+ List<Map<String, Object>> EdgTasks2 = taskCacheService.selectEdgInfo("2002");
jsonObject.append("EdgTasks1", EdgTasks1);
jsonObject.append("EdgTasks2", EdgTasks2);
@@ -650,7 +697,6 @@
List<Map<String, Object>> EdgStorageCageinfos = edgStorageCageService.selectEdgStorageCages();
jsonObject.append("EdgStorageCageinfos", EdgStorageCageinfos);
- log.info("鎺ㄩ�佹暟鎹細{}",jsonObject);
ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("cacheGlass");
if (sendwServer != null) {
for (WebSocketServer webserver : sendwServer) {
@@ -667,7 +713,6 @@
}
}
}
-
}
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml
index 2a558ae..1abe8aa 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml
@@ -13,8 +13,12 @@
mes:
threshold: 3
ratio: 10
- firstLength: 3500
- secondLength: 2500
+ max:
+ firstLength: 3500
+ secondLength: 2500
+ min:
+ firstLength: 600
+ secondLength: 350
sequence:
order: false
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/controller/BigStorageCageDetailsController.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/controller/BigStorageCageDetailsController.java
index bca9539..deed23a 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/controller/BigStorageCageDetailsController.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/controller/BigStorageCageDetailsController.java
@@ -41,14 +41,14 @@
@PostMapping("/insertBigStorageCageDetails")
public Result insertBigStorageCageDetails(@RequestBody BigStorageCageDetails bigStorageCageDetails) {
bigStorageCageDetailsService.insertBigStorageCageDetails(bigStorageCageDetails);
- return Result.build(200,"娣诲姞鎴愬姛",bigStorageCageService.querybigStorageCageDetail(0));
+ return Result.build(200,"娣诲姞鎴愬姛",bigStorageCageService.querybigStorageCageDetail());
}
@ApiOperation("鐞嗙墖绗艰鎯呭垹闄�")
@PostMapping("/deleteBigStorageCageDetails")
public Result deleteBigStorageCageDetails(@RequestBody BigStorageCageDetails bigStorageCageDetails) {
bigStorageCageDetailsService.deleteBigStorageCageDetails(bigStorageCageDetails);
- return Result.build(200,"鍒犻櫎鎴愬姛",bigStorageCageService.querybigStorageCageDetail(0));
+ return Result.build(200,"鍒犻櫎鎴愬姛",bigStorageCageService.querybigStorageCageDetail());
}
@ApiOperation("鐞嗙墖绗间换鍔$牬鎹�0/鎷胯蛋1")
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java
index 1ac51f3..ab90c99 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java
@@ -24,7 +24,7 @@
boolean outGlass();
- List<BigStorageCage> querybigStorageCageDetail(int deviceId);
+ List<BigStorageCage> querybigStorageCageDetailAll();
Map<Integer, List<BigStorageCage>> querybigStorageCageDetail();
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 aa3f45e..5b09ac0 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
@@ -27,6 +27,7 @@
import javax.annotation.Resource;
import java.util.ArrayList;
+import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@@ -59,51 +60,79 @@
@Value("${mes.slotWidth}")
private Integer slotWidth;
- @Value("${mes.galssGap}")
- private Integer galssGap;
+ @Value("${mes.glassGap}")
+ private Integer glassGap;
/**
* 鏌ヨ杩�/鍑虹墖浠诲姟
*/
@Override
public List<BigStorageCageDetails> selectTask(int taskType) {
- return null;
-// if (taskType == 1) {
-// //杩涚墖浠诲姟鏁版嵁
-// LambdaQueryWrapper<BigStorageCageDetails> feedWrapper = new LambdaQueryWrapper<>();
-// feedWrapper.eq(BigStorageCageDetails::getState, Const.BIG_STORAGE_IN);
-// List<BigStorageCageDetails> bigStorageCageDetailsList = baseMapper.selectList(feedWrapper);
-//
-// LambdaQueryWrapper<BigStorageCageFeedTask> feedTaskWrapper = new LambdaQueryWrapper<>();
-// feedTaskWrapper.lt(BigStorageCageFeedTask::getTaskState, Const.BIG_STORAGE_IN_SLOT);
-// List<BigStorageCageFeedTask> bigStorageCageFeedTaskList = bigStorageCageFeedTaskMapper.selectList(feedTaskWrapper);
-//
-// Map<String, BigStorageCageFeedTask> listMap = bigStorageCageFeedTaskList.stream()
-// .collect(Collectors.toMap(BigStorageCageFeedTask::getGlassId, task -> task));
-//
-// for (BigStorageCageDetails bigStorageCageDetails : bigStorageCageDetailsList) {
-// BigStorageCageFeedTask bigStorageCageFeedTask = listMap.get(bigStorageCageDetails.getGlassId());
-// bigStorageCageDetails.setBigStorageCageFeedTask(bigStorageCageFeedTask);
-// }
-// return bigStorageCageDetailsList;
-// } else {
-// //鍑虹墖浠诲姟鏁版嵁
-// LambdaQueryWrapper<BigStorageCageDetails> outWrapper = new LambdaQueryWrapper<>();
-// outWrapper.eq(BigStorageCageDetails::getState, Const.BIG_STORAGE_OUT);
-// List<BigStorageCageDetails> bigStorageCageDetailsList = baseMapper.selectList(outWrapper);
-//
-// LambdaQueryWrapper<BigStorageCageOutTask> outTaskWrapper = new LambdaQueryWrapper<>();
-// outTaskWrapper.lt(BigStorageCageOutTask::getTaskState, Const.BIG_STORAGE_OUT_SUCCESS);
-// List<BigStorageCageOutTask> bigStorageCageOutTaskList = bigStorageCageOutTaskMapper.selectList(outTaskWrapper);
-//
-// Map<String, BigStorageCageOutTask> listMap = bigStorageCageOutTaskList.stream()
-// .collect(Collectors.toMap(BigStorageCageOutTask::getGlassId, task -> task));
-// for (BigStorageCageDetails bigStorageCageDetails : bigStorageCageDetailsList) {
-// BigStorageCageOutTask bigStorageCageOutTask = listMap.get(bigStorageCageDetails.getGlassId());
-// bigStorageCageDetails.setBigStorageCageOutTask(bigStorageCageOutTask);
-// }
-// return bigStorageCageDetailsList;
-// }
+ if (taskType == 1) {
+ //杩涚墖浠诲姟鏁版嵁
+ LambdaQueryWrapper<BigStorageCageDetails> feedWrapper = new LambdaQueryWrapper<>();
+ feedWrapper.eq(BigStorageCageDetails::getState, Const.GLASS_STATE_IN);
+ List<BigStorageCageDetails> bigStorageCageDetailsList = baseMapper.selectList(feedWrapper);
+
+ LambdaQueryWrapper<BigStorageCageFeedTask> feedTaskWrapper = new LambdaQueryWrapper<>();
+ feedTaskWrapper
+ .lt(BigStorageCageFeedTask::getTaskState, Const.BIG_STORAGE_IN_SLOT)
+ .isNotNull(BigStorageCageFeedTask::getTargetSlot);
+ List<BigStorageCageFeedTask> bigStorageCageFeedTaskList = bigStorageCageFeedTaskMapper.selectList(feedTaskWrapper);
+
+ Map<String, BigStorageCageFeedTask> listMap = bigStorageCageFeedTaskList.stream()
+ .collect(Collectors.toMap(BigStorageCageFeedTask::getGlassId, task -> task));
+ Iterator<BigStorageCageDetails> iterator = bigStorageCageDetailsList.iterator();
+ while (iterator.hasNext()) {
+ BigStorageCageDetails bigStorageCageDetails = iterator.next();
+ BigStorageCageFeedTask bigStorageCageFeedTask = listMap.get(bigStorageCageDetails.getGlassId());
+ bigStorageCageDetails.setBigStorageCageFeedTask(bigStorageCageFeedTask);
+ if (bigStorageCageDetails.getBigStorageCageFeedTask() == null) {
+ iterator.remove();
+ }
+ }
+ LambdaQueryWrapper<BigStorageCageFeedTask> feedTaskNoTargetWrapper = new LambdaQueryWrapper<>();
+ feedTaskNoTargetWrapper
+ .lt(BigStorageCageFeedTask::getTaskState, Const.BIG_STORAGE_IN_SLOT)
+ .isNull(BigStorageCageFeedTask::getTargetSlot);
+ List<BigStorageCageFeedTask> bigStorageCageFeedTaskNoTargetList = bigStorageCageFeedTaskMapper.selectList(feedTaskNoTargetWrapper);
+ for (BigStorageCageFeedTask bigStorageCageFeedTask:bigStorageCageFeedTaskNoTargetList
+ ) {
+ BigStorageCageDetails bigStorageCageDetails=new BigStorageCageDetails();
+ LambdaQueryWrapper<GlassInfo> glassInfoWrapper = new LambdaQueryWrapper<>();
+ glassInfoWrapper.eq(GlassInfo::getGlassId,bigStorageCageFeedTask.getGlassId());
+ GlassInfo glassInfo= glassInfoMapper.selectOne(glassInfoWrapper);
+ BeanUtils.copyProperties(glassInfo, bigStorageCageDetails);
+ bigStorageCageDetailsList.add(bigStorageCageDetails);
+ }
+ return bigStorageCageDetailsList;
+ } else {
+ //鍑虹墖浠诲姟鏁版嵁
+ LambdaQueryWrapper<BigStorageCageDetails> outWrapper = new LambdaQueryWrapper<>();
+ outWrapper.eq(BigStorageCageDetails::getState, Const.GLASS_STATE_IN);
+ List<BigStorageCageDetails> bigStorageCageDetailsList = baseMapper.selectList(outWrapper);
+
+ LambdaQueryWrapper<BigStorageCageOutTask> outTaskWrapper = new LambdaQueryWrapper<>();
+ outTaskWrapper.lt(BigStorageCageOutTask::getTaskState, Const.BIG_STORAGE_OUT_SUCCESS);
+ List<BigStorageCageOutTask> bigStorageCageOutTaskList = bigStorageCageOutTaskMapper.selectList(outTaskWrapper);
+
+ Map<String, BigStorageCageOutTask> listMap = bigStorageCageOutTaskList.stream()
+ .collect(Collectors.toMap(BigStorageCageOutTask::getGlassId, task -> task));
+ for (BigStorageCageDetails bigStorageCageDetails : bigStorageCageDetailsList) {
+ BigStorageCageOutTask bigStorageCageOutTask = listMap.get(bigStorageCageDetails.getGlassId());
+ bigStorageCageDetails.setBigStorageCageOutTask(bigStorageCageOutTask);
+ }
+ Iterator<BigStorageCageDetails> iterator = bigStorageCageDetailsList.iterator();
+ while (iterator.hasNext()) {
+ BigStorageCageDetails bigStorageCageDetails = iterator.next();
+ BigStorageCageOutTask bigStorageCageOutTask = listMap.get(bigStorageCageDetails.getGlassId());
+ bigStorageCageDetails.setBigStorageCageOutTask(bigStorageCageOutTask);
+ if (bigStorageCageDetails.getBigStorageCageOutTask() == null) {
+ iterator.remove();
+ }
+ }
+ return bigStorageCageDetailsList;
+ }
}
/**
@@ -131,7 +160,7 @@
for (BigStorageCageDetails bigStorageCageDetails : bigStorageCageDetailsList
) {
if (bigStorageCageDetails.getBigStorageCageFeedTask().getTaskState() == 0) {
- carWidth = carWidth - bigStorageCageDetails.getWidth() - galssGap;
+ carWidth = carWidth - bigStorageCageDetails.getWidth() - glassGap;
}
}
return carWidth;
@@ -187,7 +216,7 @@
if (glassInfo != null) {
BeanUtils.copyProperties(glassInfo, bigStorageCageDetails);
bigStorageCageDetails.setState(1);
- bigStorageCageDetails.setGap(galssGap);
+ bigStorageCageDetails.setGap(glassGap);
}
List<BigStorageCageDetails> bigStorageCageDetailsList = new ArrayList<>();
bigStorageCageDetailsList.add(bigStorageCageDetails);
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 4372aa0..7ce8d3f 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
@@ -237,29 +237,12 @@
//鏌ヨ澶х悊鐗囦俊鎭紝鍓嶇灞曠ず鐢�
@Override
- public List<BigStorageCage> querybigStorageCageDetail(int deviceId) {
- LambdaQueryWrapper<BigStorageCage> bigStorageCageWrapper = new LambdaQueryWrapper<>();
- LambdaQueryWrapper<BigStorageCageDetails> bigStorageCageDetailsWrapper = new LambdaQueryWrapper<>();
- bigStorageCageDetailsWrapper
- .eq(BigStorageCageDetails::getState, Const.GLASS_STATE_IN)
- .or()
- .eq(BigStorageCageDetails::getState, Const.GLASS_STATE_ARTIFICIAL);
- if (deviceId != 0) {
- bigStorageCageWrapper.eq(BigStorageCage::getDeviceId, deviceId);
- bigStorageCageDetailsWrapper.eq(BigStorageCageDetails::getDeviceId, deviceId);
- }
-
- List<BigStorageCage> bigStorageCages = bigStorageCageMapper.selectList(bigStorageCageWrapper);
- log.info("1銆佽幏鍙栧ぇ鐞嗙墖绗间俊鎭畬鎴愶紝鑾峰彇鍒扮殑鏁版嵁{}", bigStorageCages.size());
-
- List<BigStorageCageDetails> bigStorageCageDetailsList = bigStorageCageDetailsMapper.selectList(bigStorageCageDetailsWrapper);
-
- Map<Integer, List<BigStorageCageDetails>> listMap = bigStorageCageDetailsList.stream().collect(Collectors.groupingBy(BigStorageCageDetails::getSlot));
- for (BigStorageCage bigStorageCage : bigStorageCages) {
- List<BigStorageCageDetails> bigStorageCageDetails = listMap.get(bigStorageCage.getSlot());
- bigStorageCage.setBigStorageCageDetails(bigStorageCageDetails);
- }
- return bigStorageCages;
+ public List<BigStorageCage> querybigStorageCageDetailAll() {
+ 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));
+ return bigStorageCageMapper.selectJoinList(BigStorageCage.class, wrapper);
}
//鏌ヨ澶х悊鐗囦俊鎭紝鍓嶇灞曠ず鐢�
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/mapper/BigStorageCageFeedTaskMapper.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/mapper/BigStorageCageFeedTaskMapper.java
index 7c57951..0256f9e 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/mapper/BigStorageCageFeedTaskMapper.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/mapper/BigStorageCageFeedTaskMapper.java
@@ -10,16 +10,16 @@
/**
* <p>
- * Mapper 鎺ュ彛
+ * Mapper 鎺ュ彛
* </p>
*
* @author zhoush
* @since 2024-04-16
*/
-@DS("salve_hangzhoumes_1")
+@DS("salve_hangzhoumes")
public interface BigStorageCageFeedTaskMapper extends MPJBaseMapper<BigStorageCageFeedTask> {
List<Integer> querySitToUpGlass();
- BigStorageDTO querySitToUpRemainWidth(@Param(value = "line") Integer line);
+ BigStorageDTO querySitToUpRemainWidth(@Param(value = "line") Integer line, @Param(value = "glassGap") Integer glassGap);
}
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/mapper/BigStorageCageOutTaskMapper.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/mapper/BigStorageCageOutTaskMapper.java
index 8e53da7..5fa29d3 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/mapper/BigStorageCageOutTaskMapper.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/mapper/BigStorageCageOutTaskMapper.java
@@ -15,7 +15,7 @@
* @author zhoush
* @since 2024-04-16
*/
-@DS("salve_hangzhoumes_1")
+@DS("salve_hangzhoumes")
public interface BigStorageCageOutTaskMapper extends BaseMapper<BigStorageCageOutTask> {
boolean saveBatch(@Param(value = "list") List<BigStorageCageOutTask> list);
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/service/impl/BigStorageCageFeedTaskServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/service/impl/BigStorageCageFeedTaskServiceImpl.java
index 03110f0..262cc3f 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/service/impl/BigStorageCageFeedTaskServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/service/impl/BigStorageCageFeedTaskServiceImpl.java
@@ -7,13 +7,14 @@
import com.mes.bigstoragetask.entity.BigStorageCageFeedTask;
import com.mes.bigstoragetask.mapper.BigStorageCageFeedTaskMapper;
import com.mes.bigstoragetask.service.BigStorageCageFeedTaskService;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
- * 鏈嶅姟瀹炵幇绫�
+ * 鏈嶅姟瀹炵幇绫�
* </p>
*
* @author zhoush
@@ -22,9 +23,12 @@
@Service
public class BigStorageCageFeedTaskServiceImpl extends ServiceImpl<BigStorageCageFeedTaskMapper, BigStorageCageFeedTask> implements BigStorageCageFeedTaskService {
+ @Value("${mes.glassGap}")
+ private Integer glassGap;
+
@Override
- public void addFeedTask(BigStorageCageDetails slotInfo, Integer plcFeedReqLine, int taskType){
- BigStorageCageFeedTask bigStorageCageFeedTask=new BigStorageCageFeedTask();
+ public void addFeedTask(BigStorageCageDetails slotInfo, Integer plcFeedReqLine, int taskType) {
+ BigStorageCageFeedTask bigStorageCageFeedTask = new BigStorageCageFeedTask();
bigStorageCageFeedTask.setId(slotInfo.getId());
bigStorageCageFeedTask.setTaskState(0);
bigStorageCageFeedTask.setLine(plcFeedReqLine);
@@ -41,7 +45,7 @@
@Override
public BigStorageDTO querySitToUpRemainWidth(Integer line) {
- return baseMapper.querySitToUpRemainWidth(line);
+ return baseMapper.querySitToUpRemainWidth(line, glassGap);
}
@Override
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/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcSlicecage.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcSlicecage.java
index aa06134..c3aae6d 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
@@ -32,44 +32,48 @@
@Resource
private TemperingGlassInfoService temperingGlassInfoService;
+ private JSONObject jsonObject = new JSONObject();
+ public void dataBase1() throws InterruptedException {
+ List<Double> carPostion=new ArrayList<>();
+ carPostion.add(0.25);
+ carPostion.add(0.5);
+ jsonObject.append("carPostion",carPostion);
+ //鐣岄潰灞曠ず绗煎瓙淇℃伅
+ jsonObject.append("bigStorageCageInfos", bigStorageCageService.querybigStorageCageDetail());
+
+ //杩涚墖浠诲姟鏁版嵁
+ List<BigStorageCageDetails> bigStorageCageDetailsFeedTask=bigStorageCageDetailsService.selectTask(1);
+ jsonObject.append("bigStorageCageDetailsFeedTask", bigStorageCageDetailsFeedTask);
+
+ //鍑虹墖浠诲姟鏁版嵁
+ List<BigStorageCageDetails> bigStorageCageDetailsOutTask=bigStorageCageDetailsService.selectTask(2);
+ jsonObject.append("bigStorageCageDetailsOutTask", bigStorageCageDetailsOutTask);
+
+ //鐞嗙墖绗间娇鐢ㄦ儏鍐�
+ List<Map<String, Object>> bigStorageCageUsage=bigStorageCageService.selectBigStorageCageUsage();
+ jsonObject.append("bigStorageCageUsage", bigStorageCageUsage);
+
+ //鐞嗙墖绗艰〃鏍间俊鎭�
+ jsonObject.append("bigStorageCageInfo", bigStorageCageService.querybigStorageCageDetailAll());
+
+ }
+
+ public void dataBase2() throws InterruptedException {
+ //鍑虹墖闃熷垪
+ List<TemperingGlassInfo> temperingGlassInfoList= temperingGlassInfoService.list();
+ jsonObject.append("temperingGlassInfoList", temperingGlassInfoList);
+
+ }
/**
* fixedRate : 涓婁竴涓皟鐢ㄥ紑濮嬪悗鍐嶆璋冪敤鐨勫欢鏃讹紙涓嶇敤绛夊緟涓婁竴娆¤皟鐢ㄥ畬鎴愶級
* fixedDelay : 涓婁竴涓皟鐢ㄧ粨鏉熷悗鍐嶆璋冪敤鐨勫欢鏃�
*/
@Scheduled(fixedDelay = 1000)
public void plcStorageCageTask() throws InterruptedException {
- JSONObject jsonObject = new JSONObject();
+ jsonObject = new JSONObject();
try {
- //鐣岄潰灞曠ず绗煎瓙淇℃伅
- jsonObject.append("bigStorageCageInfo1", bigStorageCageService.querybigStorageCageDetail(1));
- jsonObject.append("bigStorageCageInfo2", bigStorageCageService.querybigStorageCageDetail(2));
- jsonObject.append("bigStorageCageInfo3", bigStorageCageService.querybigStorageCageDetail(3));
- jsonObject.append("bigStorageCageInfo4", bigStorageCageService.querybigStorageCageDetail(4));
- jsonObject.append("bigStorageCageInfo5", bigStorageCageService.querybigStorageCageDetail(5));
- jsonObject.append("bigStorageCageInfo6", bigStorageCageService.querybigStorageCageDetail(6));
- jsonObject.append("bigStorageCageInfo7", bigStorageCageService.querybigStorageCageDetail(7));
- jsonObject.append("bigStorageCageInfo8", bigStorageCageService.querybigStorageCageDetail(8));
-
- //杩涚墖浠诲姟鏁版嵁
- List<BigStorageCageDetails> bigStorageCageDetailsFeedTask=bigStorageCageDetailsService.selectTask(1);
- jsonObject.append("bigStorageCageDetailsFeedTask", bigStorageCageDetailsFeedTask);
-
- //鍑虹墖浠诲姟鏁版嵁
- List<BigStorageCageDetails> bigStorageCageDetailsOutTask=bigStorageCageDetailsService.selectTask(2);
- jsonObject.append("bigStorageCageDetailsOutTask", bigStorageCageDetailsOutTask);
-
- //鐞嗙墖绗间娇鐢ㄦ儏鍐�
- List<Map<String, Object>> bigStorageCageUsage=bigStorageCageService.selectBigStorageCageUsage();
- jsonObject.append("bigStorageCageUsage", bigStorageCageUsage);
-
- //鍑虹墖闃熷垪
- List<TemperingGlassInfo> temperingGlassInfoList= temperingGlassInfoService.list();
- jsonObject.append("temperingGlassInfoList", temperingGlassInfoList);
-
- //鐞嗙墖绗艰〃鏍间俊鎭�
- jsonObject.append("bigStorageCageInfo", bigStorageCageService.querybigStorageCageDetail(0));
-
-
+ dataBase1();
+ dataBase2();
ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("slicecage");
if (sendwServer != null) {
for (WebSocketServer webserver : sendwServer) {
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
index 9f6959b..ad16377 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
@@ -20,6 +20,8 @@
import com.mes.bigstoragetask.service.BigStorageCageOutTaskService;
import com.mes.common.S7object;
import com.mes.common.config.Const;
+import com.mes.damage.entity.Damage;
+import com.mes.damage.service.DamageService;
import com.mes.device.PlcParameterObject;
import com.mes.edgglasstask.entity.EdgGlassTaskInfo;
import com.mes.edgglasstask.service.EdgGlassTaskInfoService;
@@ -60,6 +62,8 @@
private EdgGlassTaskInfoService edgGlassTaskInfoService;
@Resource
private TemperingGlassInfoService temperingGlassInfoService;
+ @Resource
+ private DamageService damageService;
private static final String REQUEST_WORD = "1";
@@ -78,11 +82,13 @@
@Value("${mes.outCarMaxSize}")
private Integer outCarMaxSize;
- @Value("${mes.galssGap}")
- private Integer galssGap;
+ @Value("${mes.glassGap}")
+ private Integer glassGap;
@Scheduled(fixedDelay = 300)
public void plcToHomeEdgScan() {
+ Date startDate = new Date();
+ log.info("澶х悊鐗囩鎵爜浠诲姟寮�濮嬫墽琛屾椂闂达細{}", startDate);
PlcParameterObject plcParameterObject = S7object.getinstance().PlcMesObject;
String d01Id = plcParameterObject.getPlcParameter("D01ID").getValue();
String d04Id = plcParameterObject.getPlcParameter("D04ID").getValue();
@@ -90,16 +96,15 @@
String d02State = plcParameterObject.getPlcParameter("D02ID").getValue();
String d03State = plcParameterObject.getPlcParameter("D03State").getValue();
String d05State = plcParameterObject.getPlcParameter("D05State").getValue();
+ String mesD01Value = plcParameterObject.getPlcParameter("MESToD01").getValue();
+ String mesD04Value = plcParameterObject.getPlcParameter("MESToD04").getValue();
String mesD01Address = plcParameterObject.getPlcParameter("MESToD01").getAddress();
String mesD04Address = plcParameterObject.getPlcParameter("MESToD04").getAddress();
String d01ToMES = plcParameterObject.getPlcParameter("D01ToMES").getValue();
- if (!REQUEST_WORD.equals(d01ToMES)) {
- log.info("璇锋眰瀛椾负{}锛岀粨鏉熸湰娆℃壂鎻忚繘鍗ц浆绔嬩换鍔�", d01ToMES);
- return;
- }
+ String d04ToMES = plcParameterObject.getPlcParameter("D04ToMES").getValue();
- log.info("1銆佽幏鍙杁01Id鎵弿ID涓猴細{};鑾峰彇d04Id鎵弿ID涓猴細{};", d01Id, d04Id);
- if (StringUtils.isBlank(d01Id) && StringUtils.isBlank(d04Id)) {
+ log.info("1銆佽幏鍙杁01Id鎵弿ID涓猴細{}锛岃姹傚瓧涓簕};鑾峰彇d04Id鎵弿ID涓猴細{}锛岃姹傚瓧涓簕};", d01Id, d01ToMES, d04Id, d04ToMES);
+ if (StringUtils.isBlank(d01ToMES) && StringUtils.isBlank(d04ToMES)) {
log.info("涓ゆ潯绾挎湭鏀跺埌杩涚墖浠诲姟锛岀粨鏉熸湰娆℃壂鎻忚繘鍗ц浆绔嬩换鍔�");
return;
}
@@ -107,31 +112,35 @@
log.info("涓ゆ潯绾垮崸杞珛鍧囧湪鎵ц浠诲姟锛岀粨鏉熸湰娆℃壂鎻忚繘鍗ц浆绔嬩换鍔�");
return;
}
-// Boolean flag01 = Boolean.FALSE;
-// Boolean flag04 = Boolean.FALSE;
- //鎸夌収绾胯矾鍙婄幓鐠僫d鑾峰彇鐩搁偦涓ゅ潡鐜荤拑 鍗ц浆绔嬩笂鐨勭幓鐠�
- if (StringUtils.isNotBlank(d01Id) && (StringUtils.isBlank(d02State) || !REQUEST_WORD.equals(d03State))) {
+ //鎸夌収绾胯矾鍙婄幓鐠僫d鑾峰彇鐩搁偦涓ゅ潡鐜荤拑 鍗ц浆绔嬩笂鐨勭幓鐠�: 鐘舵�佷负0涓嶆搷浣滐紙D01閫佺墖锛�0涓嶆搷浣滐紝1鍏佽閫佺墖锛夛紝璇锋眰瀛椾负1锛� 锛�02鐜荤拑id涓虹┖鎴栬�呭崸杞珛鏈惎鍔級
+ if (!REQUEST_WORD.equals(mesD01Value) && REQUEST_WORD.equals(d01ToMES) && (StringUtils.isBlank(d02State) || !REQUEST_WORD.equals(d03State))) {
judgeGlassTypeStatus(d01Id, Const.A09_OUT_TARGET_POSITION, mesD01Address);
}
- if (StringUtils.isNotBlank(d04Id) && !REQUEST_WORD.equals(d05State)) {
+// 鐘舵�佷负0涓嶆搷浣滐紙D01閫佺墖锛�0涓嶆搷浣滐紝1鍏佽閫佺墖锛夛紝璇锋眰瀛椾负1锛� 鍗ц浆绔嬫湭鍚姩
+ if (!REQUEST_WORD.equals(mesD04Value) && REQUEST_WORD.equals(d04ToMES) && !REQUEST_WORD.equals(d05State)) {
judgeGlassTypeStatus(d04Id, Const.A10_OUT_TARGET_POSITION, mesD04Address);
}
- log.info("缁撴潫鎵爜浠诲姟");
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩鎵爜浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
}
@Scheduled(fixedDelay = 300)
public void plcToHomeEdgFreeCarTask() {
+ Date startDate = new Date();
+ log.info("澶х悊鐗囩绌鸿溅杩涚墖浠诲姟寮�濮嬫墽琛屾椂闂达細{}", startDate);
PlcParameterObject plcParameterObject = S7object.getinstance().PlcMesObject;
String e01Status = plcParameterObject.getPlcParameter("E01State").getValue();
String d03ToMES = plcParameterObject.getPlcParameter("D03ToMES").getValue();
String d05ToMES = plcParameterObject.getPlcParameter("D05ToMES").getValue();
log.info("鎵ц绌鸿溅閫佺墖浠诲姟锛岃幏鍙栧埌鐨勫ぇ杞︾姸鎬佷负{}锛屽崸杞珛鐘舵�佸垎鍒负d03:{}锛宒05:{}", e01Status, d03ToMES, d05ToMES);
if (REQUEST_WORD.equals(e01Status)) {
- log.info("杩涚墖澶ц溅闈炵┖闂诧紝缁撴潫閫佺墖浠诲姟");
+ Date endDate = new Date();
+ log.info("杩涚墖澶ц溅闈炵┖闂诧紝缁撴潫閫佺墖浠诲姟锛屼换鍔$粨鏉熸椂闂达細{}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
}
if (!REQUEST_WORD.equals(d03ToMES) && !REQUEST_WORD.equals(d05ToMES)) {
- log.info("鍗ц浆绔嬫病鏈夐�佺墖璇锋眰锛岀粨鏉熼�佺墖浠诲姟");
+ Date endDate = new Date();
+ log.info("鍗ц浆绔嬫病鏈夐�佺墖璇锋眰锛岀粨鏉熼�佺墖浠诲姟锛屼换鍔$粨鏉熸椂闂达細{}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
}
LambdaQueryWrapper<BigStorageCageFeedTask> wrapper = new LambdaQueryWrapper<BigStorageCageFeedTask>()
@@ -142,14 +151,15 @@
if (CollectionUtils.isNotEmpty(feedTaskList)) {
if (feedTaskList.size() == 1) {
computeTargetByLine(feedTaskList.get(0).getLine());
- return;
} else {
//姣旇緝鏈�鏃╀竴鐗囦换鍔$殑鐗堝浘id鍙婄増搴� 姹傚嚭鍗ц浆绔嬬殑绾胯矾
Integer startLine = getStartLine();
// //璁$畻鐩爣鏍煎瓙锛屽彂閫佸惎鍔ㄤ换鍔�
computeTargetByLine(startLine);
- return;
}
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩绌鸿溅杩涚墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
+ return;
}
String d01Id = plcParameterObject.getPlcParameter("D01ID").getValue();
String d04Id = plcParameterObject.getPlcParameter("D04ID").getValue();
@@ -162,7 +172,8 @@
//鑾峰彇涓ゆ潯绾垮崸杞珛鏄惁鏈夌幓鐠冿紝涓斾换鍔$姸鎬侀兘涓�2
List<Integer> lineList = bigStorageCageFeedTaskService.querySitToUpGlass();
if (CollectionUtils.isEmpty(lineList)) {
- log.info("涓ゆ潯绾垮崸杞珛涓虹┖鎴栬�呮湁杩涚墖浠诲姟鏈畬鎴愶紝缁撴潫浠诲姟");
+ Date endDate = new Date();
+ log.info("涓ゆ潯绾垮崸杞珛涓虹┖鎴栬�呮湁杩涚墖浠诲姟鏈畬鎴愶紝缁撴潫浠诲姟锛屽ぇ鐞嗙墖绗肩┖杞﹁繘鐗囦换鍔$粨鏉熸椂闂达細{}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
}
Integer lineFirst = lineList.get(0);
@@ -179,6 +190,8 @@
computeTargetByLine(lineFirst);
}
}
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩绌鸿溅杩涚墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
}
//涓ゆ潯鍏堝潎鍙墽琛岃繘鐗囦换鍔★紝鍒ゆ柇涓ゆ潯绾挎槸鍚﹁繘鐗囪姹傛槸鍚﹂兘涓虹┖
@@ -187,6 +200,8 @@
Integer line = getStartLine();
//璁$畻浠诲姟琛ㄨ繘鐗囨牸瀛� 鍙戦�佽繘鐗囦换鍔�
computeTargetByLine(line);
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩绌鸿溅杩涚墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
} else if (StringUtils.isNotBlank(d01Id) && StringUtils.isNotBlank(d04Id)) {
// todo:涓や釜閮芥湁杩涚墖鐜荤拑
@@ -200,6 +215,8 @@
} else if (computeIsRun(Const.A10_OUT_TARGET_POSITION, d04Id)) {
computeTargetByLine(Const.A10_OUT_TARGET_POSITION);
} else {
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩绌鸿溅杩涚墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
}
} else {
@@ -209,11 +226,14 @@
//鑾峰彇杩涚墖璇锋眰鐜荤拑涓虹┖鐨勶紝璁$畻浠诲姟琛ㄨ繘鐗囨牸瀛� 鍙戦�佽繘鐗囦换鍔�
computeTargetByLine(outLine);
}
-
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩绌鸿溅杩涚墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
}
@Scheduled(fixedDelay = 300)
public void plcToHomeEdgOutTask() {
+ Date startDate = new Date();
+ log.info("澶х悊鐗囩绌鸿溅杩涚墖浠诲姟寮�濮嬫墽琛屾椂闂达細{}", startDate);
PlcParameterObject plcMesObject = S7object.getinstance().PlcMesObject;
String mesToPLCAddress = plcMesObject.getPlcParameter("MESToPLC").getAddress();
List<BigStorageCageOutTask> outingList = bigStorageCageOutTaskService.list(new LambdaQueryWrapper<BigStorageCageOutTask>().eq(BigStorageCageOutTask::getTaskState, Const.BIG_STORAGE_OUT_NEW));
@@ -229,13 +249,17 @@
if (CollectionUtils.isNotEmpty(temperingGlassInfoList)) {
log.info("鏈夋鍦ㄥ嚭鐗囩殑閽㈠寲浠诲姟");
computeOutGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress);
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
}
//鏄惁鏈変汉宸ヤ笅鐗囦换鍔� 鏈夌洿鎺ュ嚭
List<BigStorageCageDetails> artificialList = bigStorageCageDetailsService.list(new LambdaQueryWrapper<BigStorageCageDetails>()
.eq(BigStorageCageDetails::getState, Const.GLASS_STATE_ARTIFICIAL).orderByDesc(BigStorageCageDetails::getWidth));
if (CollectionUtils.isNotEmpty(artificialList)) {
- computeOutGlassInfo(temperingGlassInfoList, Boolean.FALSE, mesToPLCAddress);
+ computeOutGlassInfo(artificialList, Boolean.FALSE, mesToPLCAddress);
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
}
//閽㈠寲浼樺厛锛氳幏鍙栫悊鐗囩 鐜荤拑灏忕墖 鐮存崯琛� 鏁伴噺 鍒ゆ柇绗煎唴鐗堝浘鏄惁鍒伴綈
@@ -253,6 +277,8 @@
.eq(GlassInfo::getEngineerId, temperingLayoutDTO.getEngineerId()));
temperingGlassInfoService.saveBatch(temperingGlassInfos);
computeOutGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress);
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
}
//鏈埌榻� 鎵ц鍐呴儴璋冨害浠诲姟
@@ -262,7 +288,7 @@
for (int i = 0; i < slotSequenceList.size() - 1; i++) {
SlotSequenceDTO first = slotSequenceList.get(i);
SlotSequenceDTO second = slotSequenceList.get(i + 1);
- int slotWidth = carWidth - first.getRemainWidth() - galssGap;
+ int slotWidth = carWidth - first.getRemainWidth() - glassGap;
if (first.getMinSequence() == second.getMaxSequence() + 1
&& second.getRemainWidth() > slotWidth) {
List<BigStorageCageDetails> list = bigStorageCageDetailsService.list(new LambdaQueryWrapper<BigStorageCageDetails>()
@@ -272,12 +298,59 @@
bigStorageCageOutTaskService.saveBatch(outTasks);
S7object.getinstance().plccontrol.writeWord(mesToPLCAddress, 1);
log.info("宸插悜plc鍙戦�佸嚭鐗囦换鍔$‘璁わ紝鍦板潃涓猴細{}", mesToPLCAddress);
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
}
}
}
}
+ /**
+ * 澶勭悊鐮存崯琛ㄤ换鍔�
+ */
+ @Scheduled(fixedDelay = 300)
+ public void dealDamageTask() {
+ Date startDate = new Date();
+ log.info("澶х悊鐗囩鐮存崯鐜荤拑娓呴櫎浠诲姟寮�濮嬫墽琛屾椂闂达細{}", startDate);
+ //鑾峰彇杩涚墖浠诲姟琛ㄤ腑鐘舵�佷负鐮存崯鐨勬暟鎹�
+ List<BigStorageCageFeedTask> inDamageTaskInfoList = bigStorageCageFeedTaskService.list(new LambdaQueryWrapper<BigStorageCageFeedTask>()
+ .eq(BigStorageCageFeedTask::getTaskState, Const.BIG_STORAGE_IN_DAMAGE));
+ if (CollectionUtils.isNotEmpty(inDamageTaskInfoList)) {
+ bigStorageCageFeedTaskService.remove(new LambdaQueryWrapper<BigStorageCageFeedTask>().eq(BigStorageCageFeedTask::getTaskState, Const.BIG_STORAGE_IN_DAMAGE));
+ //灏嗙牬鎹熶俊鎭柊澧炲叆鐮存崯琛�
+ for (BigStorageCageFeedTask bigStorageCageFeedTask : inDamageTaskInfoList) {
+ Damage damage = new Damage();
+ damage.setGlassId(bigStorageCageFeedTask.getGlassId());
+ damage.setLine(bigStorageCageFeedTask.getLine());
+ damage.setWorkingProcedure("鍐峰姞宸�");
+ damage.setRemark("杩涚鍓嶅崸杞珛");
+ damage.setStatus(2);
+ damageService.insertDamage(damage);
+ }
+ }
+ //鑾峰彇鍑虹墖浠诲姟琛ㄤ腑鐘舵�佷负鐮存崯鐨勬暟鎹�
+ List<BigStorageCageOutTask> outDamageTaskInfoList = bigStorageCageOutTaskService.list(new LambdaQueryWrapper<BigStorageCageOutTask>()
+ .eq(BigStorageCageOutTask::getTaskState, Const.BIG_STORAGE_OUT_DAMAGE));
+ if (CollectionUtils.isNotEmpty(outDamageTaskInfoList)) {
+ bigStorageCageOutTaskService.remove(new LambdaQueryWrapper<BigStorageCageOutTask>().eq(BigStorageCageOutTask::getTaskState, Const.BIG_STORAGE_IN_DAMAGE));
+ List<String> glassIdList = outDamageTaskInfoList.stream().map(BigStorageCageOutTask::getGlassId).collect(Collectors.toList());
+ temperingGlassInfoService.remove(new LambdaQueryWrapper<TemperingGlassInfo>().in(TemperingGlassInfo::getGlassId, glassIdList));
+ //灏嗙牬鎹熶俊鎭柊澧炲叆鐮存崯琛�
+ for (BigStorageCageOutTask bigStorageCageOutTask : outDamageTaskInfoList) {
+ Damage damage = new Damage();
+ damage.setGlassId(bigStorageCageOutTask.getGlassId());
+ damage.setLine(bigStorageCageOutTask.getEndSlot());
+ damage.setWorkingProcedure("鍐峰姞宸�");
+ damage.setRemark("鍑虹墖鍚庡崸杞珛");
+ damage.setStatus(2);
+ damageService.insertDamage(damage);
+ }
+ }
+ Date endDate = new Date();
+ log.info("澶х悊鐗囩鐮存崯鐜荤拑娓呴櫎浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
+ return;
+ }
/**
* 鎸夌収鐜荤拑id鍒ゆ柇鐜荤拑鐘舵�佸強鍗ц浆绔嬫槸鍚﹀彲鐩存帴鍚姩
@@ -303,10 +376,10 @@
Boolean flag = Boolean.TRUE;
//2銆佽幏鍙栧崸杞珛
- Integer widthFirst = edgGlassTaskInfoList.get(0).getWidth();
+ Integer widthFirst = Math.max(edgGlassTaskInfoList.get(0).getWidth() / 10, edgGlassTaskInfoList.get(0).getHeight() / 10);
if (edgGlassTaskInfoList.size() == 1) {
if (remainWidth >= widthFirst) {
- if (glassCount <= 5) {
+ if (glassCount < inCarMaxSize) {
addFeedTask(glassId, line, Const.BIG_STORAGE_IN_WAIT, widthFirst);
} else {
addFeedTask(glassId, line, Const.BIG_STORAGE_IN_RUN, widthFirst);
@@ -315,10 +388,10 @@
flag = Boolean.FALSE;
}
} else {
- Integer widthSecond = edgGlassTaskInfoList.get(1).getWidth();
+ Integer widthSecond = Math.max(edgGlassTaskInfoList.get(1).getWidth() / 10, edgGlassTaskInfoList.get(1).getHeight() / 10);
if (remainWidth >= widthFirst) {
- if (remainWidth - widthFirst - galssGap >= widthSecond) {
- if (glassCount <= inCarMaxSize - 1) {
+ if (remainWidth - widthFirst - glassGap >= widthSecond) {
+ if (glassCount < inCarMaxSize) {
addFeedTask(glassId, line, Const.BIG_STORAGE_IN_WAIT, widthFirst);
} else {
addFeedTask(glassId, line, Const.BIG_STORAGE_IN_RUN, widthFirst);
@@ -424,6 +497,7 @@
}
private void sendTaskListToPLC(List<BigStorageCageFeedTask> taskList, Integer line) {
+ log.info("閫佺墖浠诲姟鍙戦�佽繘鐗囩幓鐠冧俊鎭�");
S7control s7control = S7object.getinstance().plccontrol;
PlcParameterObject plcMesObject = S7object.getinstance().PlcMesObject;
String mesD03Address = plcMesObject.getPlcParameter("MESToD03").getAddress();
@@ -434,7 +508,7 @@
s7control.writeWord(plcMesObject.getPlcParameter("TargetAddToImport" + i).getAddress(), taskList.get(i - 1).getTargetSlot());
}
s7control.writeWord(outLine, 2);
- log.info("閫佺墖浠诲姟宸插彂閫佸畬鎴愶紝浠诲姟绾胯矾涓猴細{}锛屽惎鍔ㄥ湴鍧�涓簕}", line, outLine);
+ log.info("閫佺墖浠诲姟宸插彂閫佸畬鎴愶紝浠诲姟绾胯矾涓猴細{}锛屽惎鍔ㄥ湴鍧�涓簕},纭瀛椾负{}", line, outLine, 2);
}
private <T extends BigStorageCageBaseInfo> Boolean computeOutGlassInfo(List<T> list, Boolean isTempering, String mesToPLCAddress) {
@@ -446,7 +520,7 @@
if (bigStorageCageOutTaskList.size() > outCarMaxSize || e.getWidth() > remainWidth) {
break;
}
- remainWidth = remainWidth - (int) e.getWidth() - galssGap;
+ remainWidth = remainWidth - (int) e.getWidth() - glassGap;
if (isTempering) {
bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.TEMPERING_OUT_TARGET_POSITION,
(int) e.getWidth() * 10, 0, 0, 1));
@@ -483,7 +557,7 @@
List<Integer> slotList = list.stream().map(T::getSlot).distinct().collect(Collectors.toList());
//鑾峰彇寰呭嚭鍘荤殑鐜荤拑淇℃伅锛堢瓑涓嬭溅鍑哄幓鐨勭幓鐠冿級
Map<Integer, Double> slotRemainMap = list.stream().filter(e -> !taskGlassIds.contains(e.getGlassId()))
- .collect(Collectors.groupingBy(T::getSlot, Collectors.summingDouble(item -> item.getWidth() + galssGap)));
+ .collect(Collectors.groupingBy(T::getSlot, Collectors.summingDouble(item -> item.getWidth() + glassGap)));
if (CollectionUtils.isNotEmpty(slotRemainMap)) {
//鎸夌収鏍煎瓙鍙锋洿鏂板墿浣欏昂瀵�
slotRemainMap.forEach((e, v) -> {
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-cz.yml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-cz.yml
index 608a2ca..6dc9dfd 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-cz.yml
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-cz.yml
@@ -14,10 +14,6 @@
username: sa
password: beibo.123/
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
- salve_hangzhoumes_1:
- url: jdbc:sqlserver://192.168.20.24:1433;databasename=hangzhoumes
- username: sa
- password: beibo.123/
cloud:
nacos:
discovery:
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-dev.yml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-dev.yml
index 23a3bb3..b4d7552 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-dev.yml
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-dev.yml
@@ -14,10 +14,6 @@
username: sa
password: beibo.123/
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
- salve_hangzhoumes_1:
- url: jdbc:sqlserver://127.0.0.1:1433;databasename=hangzhoumes
- username: sa
- password: beibo.123/
cloud:
nacos:
discovery:
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-prod.yml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-prod.yml
index 3bac93d..25593bb 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-prod.yml
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-prod.yml
@@ -14,11 +14,6 @@
username: sa
password: beibo.123/
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
- salve_hangzhoumes_1:
- url: jdbc:sqlserver://10.153.19.150:1433;databasename=hangzhoumes
- username: sa
- password: beibo.123/
- driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
cloud:
nacos:
discovery:
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml
index 9fc2464..d4281e8 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml
@@ -18,4 +18,4 @@
slotWidth: 5000 #澶ц溅瀹藉害
inCarMaxSize: 6 #杩涚墖澶ц溅鏈�澶у瓨鏀剧幓鐠冩暟閲�
outCarMaxSize: 1 #鍑虹墖澶ц溅鏈�澶у瓨鏀剧幓鐠冩暟閲�
- galssGap: 300 #鐜荤拑闂磋窛
\ No newline at end of file
+ glassGap: 300 #鐜荤拑闂磋窛
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageFeedTaskMapper.xml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageFeedTaskMapper.xml
index a0a5902..2776022 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageFeedTaskMapper.xml
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageFeedTaskMapper.xml
@@ -21,11 +21,21 @@
where t.total_count = t.real_count
</select>
<select id="querySitToUpRemainWidth" resultMap="bigStorageDTO">
- SELECT cast(5000 - sum(width + 20) as INT) as REMAIN_WIDTH,
- count(glass_id) as GLASS_COUNT
- FROM big_storage_cage_feed_task
- WHERE line = #{line}
- AND task_state in (1, 2)
+ SELECT CAST
+ (5000 - SUM(MAX_LENGTH + #{glassGap}) AS INT) AS REMAIN_WIDTH,
+ COUNT(GLASS_ID) AS GLASS_COUNT
+ FROM (
+ SELECT GLASS_ID,
+ CASE
+
+ WHEN WIDTH >= HEIGHT THEN
+ WIDTH
+ ELSE HEIGHT
+ END MAX_LENGTH
+ FROM BIG_STORAGE_CAGE_FEED_TASK
+ WHERE LINE = 2002
+ AND TASK_STATE IN (1, 2)
+ ) T
</select>
</mapper>
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java
index f9deff8..3aba6ca 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java
@@ -3,6 +3,8 @@
import com.mes.bigstorage.service.BigStorageCageDetailsService;
import com.mes.bigstorage.service.BigStorageCageService;
import com.mes.common.config.Const;
+import com.mes.damage.entity.Damage;
+import com.mes.damage.service.DamageService;
import com.mes.job.PlcStorageCageTask;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
@@ -29,6 +31,8 @@
PlcStorageCageTask plcStorageCageTask;
@Autowired
BigStorageCageDetailsService bigStorageCageDetailsService;
+ @Autowired
+ DamageService damageService;
@Test
public void testFindPath() {
@@ -82,4 +86,15 @@
log.info("鑾峰彇澶х悊鐗囩淇℃伅锛歿}", bigStorageCageDetailsService.selectBigStorageCageDetails("P24060403|3|6"));
}
+ @Test
+ public void insertDamage() {
+ Damage damage=new Damage();
+ damage.setGlassId("P24060403|3|6");
+ damage.setLine(2001);
+ damage.setWorkingProcedure("鍐峰姞宸�");
+ damage.setRemark("");
+ damage.setStatus(2);
+ damageService.insertDamage(damage);
+
+ }
}
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/pom.xml b/hangzhoumesParent/moduleService/GlassStorageModule/pom.xml
new file mode 100644
index 0000000..3b4c457
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/pom.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <artifactId>moduleService</artifactId>
+ <groupId>com.mes</groupId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>glassStorage</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.poi</groupId>
+ <artifactId>poi-ooxml</artifactId>
+ <version>5.2.4</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.gson</groupId>
+ <artifactId>gson</artifactId>
+ <version>2.8.9</version>
+ <scope>compile</scope>
+ </dependency>
+ </dependencies>
+
+ <properties>
+ <maven.compiler.source>8</maven.compiler.source>
+ <maven.compiler.target>8</maven.compiler.target>
+ </properties>
+
+</project>
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/GlassStorageApplication.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/GlassStorageApplication.java
new file mode 100644
index 0000000..1ac53de
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/GlassStorageApplication.java
@@ -0,0 +1,28 @@
+package com.mes;
+
+import lombok.extern.slf4j.Slf4j;
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
+
+/**
+ * @Author : zhoush
+ * @Date: 2024/4/7 14:36RRRR
+ * @Description:
+ */
+@Slf4j
+@SpringBootApplication
+@EnableSwagger2
+@EnableDiscoveryClient
+@MapperScan(basePackages = "com.mes.*.mapper")
+@EnableScheduling
+public class GlassStorageApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(GlassStorageApplication.class, args);
+ }
+
+}
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/controller/LoadPositionController.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/controller/LoadPositionController.java
new file mode 100644
index 0000000..0516014
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/controller/LoadPositionController.java
@@ -0,0 +1,98 @@
+package com.mes.loadposition.controller;
+
+import com.mes.loadposition.entity.LoadPosition;
+import com.mes.loadposition.service.LoadPositionService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@RestController
+@RequestMapping("/api/loadPosition")
+@Api(tags = " 鎺у埗鍣�")
+public class LoadPositionController {
+
+ @Autowired
+ private LoadPositionService loadPositionService;
+
+ /**
+ * 鍒楄〃鏌ヨ
+ *
+ * @param params
+ * @return
+ */
+ @ApiOperation(value = "鍒楄〃鏌ヨ",notes = "鍒楄〃鏌ヨ",produces = "application/json")
+ @ApiResponses({@ApiResponse(code = 200, message = "鏌ヨ鎴愬姛")})
+ @PostMapping("/findList")
+ public ResponseEntity<List<LoadPosition>> findList(@RequestBody LoadPosition params) {
+ List<LoadPosition> result = loadPositionService.findList(params);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 鏌ヨ
+ *
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "鏌ヨ", notes = "鏌ヨ璇︽儏")
+ @ApiResponses({@ApiResponse(code = 200, message = "鏌ヨ鎴愬姛")})
+ @GetMapping("/{id}")
+ public ResponseEntity<LoadPosition> findById(@PathVariable("id") Long id) {
+ LoadPosition loadPosition = loadPositionService.findById(id);
+ return ResponseEntity.ok(loadPosition);
+ }
+
+ /**
+ * 鏂板
+ *
+ * @param loadPosition
+ * @return
+ */
+ @ApiOperation(value = "鏂板", notes = "鏂板鏁版嵁")
+ @ApiResponses({@ApiResponse(code = 200, message = "鎿嶄綔鎴愬姛")})
+ @PostMapping
+ public ResponseEntity<Boolean> insert( @RequestBody LoadPosition loadPosition) {
+ boolean result = loadPositionService.insert(loadPosition);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 淇敼
+ *
+ * @param loadPosition
+ * @return
+ */
+ @ApiOperation(value = "淇敼", notes = "淇敼鏁版嵁")
+ @ApiResponses({@ApiResponse(code = 200, message = "鎿嶄綔鎴愬姛")})
+ @PutMapping
+ public ResponseEntity<Boolean> update( @RequestBody LoadPosition loadPosition) {
+ boolean result = loadPositionService.update(loadPosition);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "鍒犻櫎", notes = "鍒犻櫎鏁版嵁")
+ @DeleteMapping("/{id}")
+ public ResponseEntity<Integer> delete(@PathVariable("id") Long id) {
+ int result = loadPositionService.delete(id);
+ return ResponseEntity.ok(result);
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/entity/LoadPosition.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/entity/LoadPosition.java
new file mode 100644
index 0000000..68c7382
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/entity/LoadPosition.java
@@ -0,0 +1,134 @@
+package com.mes.loadposition.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@TableName("load_position")
+@ApiModel(value = "LoadPosition", description = " ")
+public class LoadPosition implements Serializable{
+
+ private static final long serialVersionUID=1L;
+
+ /**
+ *
+ */
+ @ApiModelProperty(" ")
+ private Long id;
+
+ /**
+ * 鏋跺瓙缂栧彿
+ */
+ @ApiModelProperty("鏋跺瓙缂栧彿")
+ private String number;
+
+ /**
+ * 鏈哄櫒缂栧彿
+ */
+ @ApiModelProperty("鏈哄櫒缂栧彿")
+ private Long machineId;
+
+ /**
+ * 鍚敤鏍囪
+ */
+ @ApiModelProperty("鍚敤鏍囪")
+ private String flag;
+
+ /**
+ * 宸ヤ綔鐘舵��
+ */
+ @ApiModelProperty("宸ヤ綔鐘舵��")
+ private String state;
+
+ /**
+ * 浠撳偍浠诲姟缂栧彿
+ */
+ @ApiModelProperty("浠撳偍浠诲姟缂栧彿")
+ private Long storageTaskId;
+
+ /**
+ * 涓婄墖浣嶇被鍨�
+ */
+ @ApiModelProperty("涓婄墖浣嶇被鍨�")
+ private Integer typeFlag;
+
+ /**
+ * 绾胯矾
+ */
+ @ApiModelProperty("绾胯矾")
+ private Integer routeGroup;
+
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public String getNumber() {
+ return number;
+ }
+
+ public void setNumber(String number) {
+ this.number = number;
+ }
+
+ public Long getMachineId() {
+ return machineId;
+ }
+
+ public void setMachineId(Long machineId) {
+ this.machineId = machineId;
+ }
+
+ public String getFlag() {
+ return flag;
+ }
+
+ public void setFlag(String flag) {
+ this.flag = flag;
+ }
+
+ public String getState() {
+ return state;
+ }
+
+ public void setState(String state) {
+ this.state = state;
+ }
+
+ public Long getStorageTaskId() {
+ return storageTaskId;
+ }
+
+ public void setStorageTaskId(Long storageTaskId) {
+ this.storageTaskId = storageTaskId;
+ }
+
+ public Integer getTypeFlag() {
+ return typeFlag;
+ }
+
+ public void setTypeFlag(Integer typeFlag) {
+ this.typeFlag = typeFlag;
+ }
+
+ public Integer getRouteGroup() {
+ return routeGroup;
+ }
+
+ public void setRouteGroup(Integer routeGroup) {
+ this.routeGroup = routeGroup;
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/mapper/LoadPositionMapper.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/mapper/LoadPositionMapper.java
new file mode 100644
index 0000000..ecd3ec9
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/mapper/LoadPositionMapper.java
@@ -0,0 +1,18 @@
+package com.mes.loadposition.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.mes.loadposition.entity.LoadPosition;
+
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ *
+ */
+@Mapper
+public interface LoadPositionMapper extends BaseMapper<LoadPosition> {
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/mapper/LoadPositionMapper.xml b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/mapper/LoadPositionMapper.xml
new file mode 100644
index 0000000..5c46518
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/mapper/LoadPositionMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.mes.mapper.LoadPositionMapper">
+
+</mapper>
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/service/LoadPositionService.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/service/LoadPositionService.java
new file mode 100644
index 0000000..b142142
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/service/LoadPositionService.java
@@ -0,0 +1,25 @@
+package com.mes.loadposition.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.mes.loadposition.entity.LoadPosition;
+
+
+import java.util.List;
+
+/**
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+public interface LoadPositionService extends IService<LoadPosition> {
+
+ List<LoadPosition> findList(LoadPosition params);
+
+ LoadPosition findById(Long id);
+
+ boolean insert(LoadPosition loadPosition);
+
+ boolean update(LoadPosition loadPosition);
+
+ int delete(Long id);
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/service/impl/LoadPositionServiceImpl.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/service/impl/LoadPositionServiceImpl.java
new file mode 100644
index 0000000..c3d3516
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/loadposition/service/impl/LoadPositionServiceImpl.java
@@ -0,0 +1,51 @@
+package com.mes.loadposition.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mes.loadposition.entity.LoadPosition;
+
+import com.mes.loadposition.service.LoadPositionService;
+import com.mes.loadposition.mapper.LoadPositionMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@Service
+public class LoadPositionServiceImpl extends ServiceImpl<LoadPositionMapper, LoadPosition> implements LoadPositionService {
+
+ @Autowired
+ private LoadPositionMapper loadPositionMapper;
+
+ @Override
+ public List<LoadPosition> findList(LoadPosition params){
+ LambdaQueryWrapper<LoadPosition> query = Wrappers.lambdaQuery(LoadPosition.class);
+ return loadPositionMapper.selectList(query);
+ }
+
+ @Override
+ public LoadPosition findById(Long id) {
+ return loadPositionMapper.selectById(id);
+ }
+
+ @Override
+ public boolean insert(LoadPosition loadPosition) {
+ return save(loadPosition);
+ }
+
+ @Override
+ public boolean update(LoadPosition loadPosition) {
+ return updateById(loadPosition);
+ }
+
+ @Override
+ public int delete(Long id) {
+ return loadPositionMapper.deleteById(id);
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/controller/RawUsageController.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/controller/RawUsageController.java
new file mode 100644
index 0000000..8c9238e
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/controller/RawUsageController.java
@@ -0,0 +1,101 @@
+package com.mes.rawusage.controller;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import org.springframework.web.bind.annotation.*;
+import com.mes.rawusage.entity.RawUsage;
+import com.mes.rawusage.service.RawUsageService;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import java.util.List;
+
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@RestController
+@RequestMapping("/api/rawUsage")
+@Api(tags = " 鎺у埗鍣�")
+public class RawUsageController {
+
+ @Autowired
+ private RawUsageService rawUsageService;
+
+ /**
+ * 鍒楄〃鏌ヨ
+ *
+ * @param params
+ * @return
+ */
+ @ApiOperation(value = "鍒楄〃鏌ヨ",notes = "鍒楄〃鏌ヨ",produces = "application/json")
+ @ApiResponses({@ApiResponse(code = 200, message = "鏌ヨ鎴愬姛")})
+ @PostMapping("/findList")
+ public ResponseEntity<List<RawUsage>> findList(@RequestBody RawUsage params) {
+ List<RawUsage> result = rawUsageService.findList(params);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 鏌ヨ
+ *
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "鏌ヨ", notes = "鏌ヨ璇︽儏")
+ @ApiResponses({@ApiResponse(code = 200, message = "鏌ヨ鎴愬姛")})
+ @GetMapping("/{id}")
+ public ResponseEntity<RawUsage> findById(@PathVariable("id") Long id) {
+ RawUsage rawUsage = rawUsageService.findById(id);
+ return ResponseEntity.ok(rawUsage);
+ }
+
+ /**
+ * 鏂板
+ *
+ * @param rawUsage
+ * @return
+ */
+ @ApiOperation(value = "鏂板", notes = "鏂板鏁版嵁")
+ @ApiResponses({@ApiResponse(code = 200, message = "鎿嶄綔鎴愬姛")})
+ @PostMapping
+ public ResponseEntity<Boolean> insert( @RequestBody RawUsage rawUsage) {
+ boolean result = rawUsageService.insert(rawUsage);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 淇敼
+ *
+ * @param rawUsage
+ * @return
+ */
+ @ApiOperation(value = "淇敼", notes = "淇敼鏁版嵁")
+ @ApiResponses({@ApiResponse(code = 200, message = "鎿嶄綔鎴愬姛")})
+ @PutMapping
+ public ResponseEntity<Boolean> update( @RequestBody RawUsage rawUsage) {
+ boolean result = rawUsageService.update(rawUsage);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "鍒犻櫎", notes = "鍒犻櫎鏁版嵁")
+ @DeleteMapping("/{id}")
+ public ResponseEntity<Integer> delete(@PathVariable("id") Long id) {
+ int result = rawUsageService.delete(id);
+ return ResponseEntity.ok(result);
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/entity/RawUsage.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/entity/RawUsage.java
new file mode 100644
index 0000000..56e7dac
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/entity/RawUsage.java
@@ -0,0 +1,204 @@
+package com.mes.rawusage.entity;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@TableName("raw_usage")
+@ApiModel(value = "RawUsage", description = " ")
+public class RawUsage implements Serializable{
+
+ private static final long serialVersionUID=1L;
+
+ /**
+ *
+ */
+ @ApiModelProperty(" ")
+ private Long id;
+
+ /**
+ * 鐜荤拑绫诲瀷
+ */
+ @ApiModelProperty("鐜荤拑绫诲瀷")
+ private String rawType;
+
+ /**
+ * 瀹藉害
+ */
+ @ApiModelProperty("瀹藉害")
+ private Float rawWidth;
+
+ /**
+ * 楂樺害
+ */
+ @ApiModelProperty("楂樺害")
+ private Float rawHeight;
+
+ /**
+ * 鍘氬害
+ */
+ @ApiModelProperty("鍘氬害")
+ private Float rawThickness;
+
+ /**
+ * 鐘舵��
+ */
+ @ApiModelProperty("鐘舵��")
+ private String state;
+
+ /**
+ * 棰滆壊
+ */
+ @ApiModelProperty("棰滆壊")
+ private String color;
+
+ /**
+ * 鎬绘暟閲�
+ */
+ @ApiModelProperty("鎬绘暟閲�")
+ private Integer pieces;
+
+ /**
+ * 鍓╀綑鏁伴噺
+ */
+ @ApiModelProperty("鍓╀綑鏁伴噺")
+ private Integer leftPieces;
+
+ /**
+ * 鐗╂枡缂栫爜
+ */
+ @ApiModelProperty("鐗╂枡缂栫爜")
+ private String qrcode;
+
+ /**
+ * 鍒涘缓鏃堕棿
+ */
+ @ApiModelProperty("鍒涘缓鏃堕棿")
+ private Date createTime;
+
+ /**
+ * 鐢熶骇鏃ユ湡
+ */
+ @ApiModelProperty("鐢熶骇鏃ユ湡")
+ private Date productionTime;
+
+ /**
+ * 鎵规鍙�
+ */
+ @ApiModelProperty("鎵规鍙�")
+ private String batchId;
+
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public String getRawType() {
+ return rawType;
+ }
+
+ public void setRawType(String rawType) {
+ this.rawType = rawType;
+ }
+
+ public Float getRawWidth() {
+ return rawWidth;
+ }
+
+ public void setRawWidth(Float rawWidth) {
+ this.rawWidth = rawWidth;
+ }
+
+ public Float getRawHeight() {
+ return rawHeight;
+ }
+
+ public void setRawHeight(Float rawHeight) {
+ this.rawHeight = rawHeight;
+ }
+
+ public Float getRawThickness() {
+ return rawThickness;
+ }
+
+ public void setRawThickness(Float rawThickness) {
+ this.rawThickness = rawThickness;
+ }
+
+ public String getState() {
+ return state;
+ }
+
+ public void setState(String state) {
+ this.state = state;
+ }
+
+ public String getColor() {
+ return color;
+ }
+
+ public void setColor(String color) {
+ this.color = color;
+ }
+
+ public Integer getPieces() {
+ return pieces;
+ }
+
+ public void setPieces(Integer pieces) {
+ this.pieces = pieces;
+ }
+
+ public Integer getLeftPieces() {
+ return leftPieces;
+ }
+
+ public void setLeftPieces(Integer leftPieces) {
+ this.leftPieces = leftPieces;
+ }
+
+ public String getQrcode() {
+ return qrcode;
+ }
+
+ public void setQrcode(String qrcode) {
+ this.qrcode = qrcode;
+ }
+
+ public Date getCreateTime() {
+ return createTime;
+ }
+
+ public void setCreateTime(Date createTime) {
+ this.createTime = createTime;
+ }
+
+ public Date getProductionTime() {
+ return productionTime;
+ }
+
+ public void setProductionTime(Date productionTime) {
+ this.productionTime = productionTime;
+ }
+
+ public String getBatchId() {
+ return batchId;
+ }
+
+ public void setBatchId(String batchId) {
+ this.batchId = batchId;
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/mapper/RawUsageMapper.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/mapper/RawUsageMapper.java
new file mode 100644
index 0000000..513aff2
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/mapper/RawUsageMapper.java
@@ -0,0 +1,16 @@
+package com.mes.rawusage.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.mes.rawusage.entity.RawUsage;
+import org.apache.ibatis.annotations.Mapper;
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ *
+ */
+@Mapper
+public interface RawUsageMapper extends BaseMapper<RawUsage> {
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/mapper/RawUsageMapper.xml b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/mapper/RawUsageMapper.xml
new file mode 100644
index 0000000..e276227
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/mapper/RawUsageMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.mes.rawusage.mapper.RawUsageMapper">
+
+</mapper>
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/service/RawUsageService.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/service/RawUsageService.java
new file mode 100644
index 0000000..df9ec60
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/service/RawUsageService.java
@@ -0,0 +1,23 @@
+package com.mes.rawusage.service;
+
+import com.mes.rawusage.entity.RawUsage;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+/**
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+public interface RawUsageService extends IService<RawUsage> {
+
+ List<RawUsage> findList(RawUsage params);
+
+ RawUsage findById(Long id);
+
+ boolean insert(RawUsage rawUsage);
+
+ boolean update(RawUsage rawUsage);
+
+ int delete(Long id);
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/service/impl/RawUsageServiceImpl.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/service/impl/RawUsageServiceImpl.java
new file mode 100644
index 0000000..80c43f5
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawusage/service/impl/RawUsageServiceImpl.java
@@ -0,0 +1,49 @@
+package com.mes.rawusage.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mes.rawusage.mapper.RawUsageMapper;
+import com.mes.rawusage.entity.RawUsage;
+import com.mes.rawusage.service.RawUsageService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import java.util.List;
+
+/**
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@Service
+public class RawUsageServiceImpl extends ServiceImpl<RawUsageMapper, RawUsage> implements RawUsageService {
+
+ @Autowired
+ private RawUsageMapper rawUsageMapper;
+
+ @Override
+ public List<RawUsage> findList(RawUsage params){
+ LambdaQueryWrapper<RawUsage> query = Wrappers.lambdaQuery(RawUsage.class);
+ return rawUsageMapper.selectList(query);
+ }
+
+ @Override
+ public RawUsage findById(Long id) {
+ return rawUsageMapper.selectById(id);
+ }
+
+ @Override
+ public boolean insert(RawUsage rawUsage) {
+ return save(rawUsage);
+ }
+
+ @Override
+ public boolean update(RawUsage rawUsage) {
+ return updateById(rawUsage);
+ }
+
+ @Override
+ public int delete(Long id) {
+ return rawUsageMapper.deleteById(id);
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/controller/ShelfRackController.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/controller/ShelfRackController.java
new file mode 100644
index 0000000..9d6c6dd
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/controller/ShelfRackController.java
@@ -0,0 +1,101 @@
+package com.mes.shelfrack.controller;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import org.springframework.web.bind.annotation.*;
+import com.mes.shelfrack.entity.ShelfRack;
+import com.mes.shelfrack.service.ShelfRackService;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import java.util.List;
+
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@RestController
+@RequestMapping("/api/shelfRack")
+@Api(tags = " 鎺у埗鍣�")
+public class ShelfRackController {
+
+ @Autowired
+ private ShelfRackService shelfRackService;
+
+ /**
+ * 鍒楄〃鏌ヨ
+ *
+ * @param params
+ * @return
+ */
+ @ApiOperation(value = "鍒楄〃鏌ヨ",notes = "鍒楄〃鏌ヨ",produces = "application/json")
+ @ApiResponses({@ApiResponse(code = 200, message = "鏌ヨ鎴愬姛")})
+ @PostMapping("/findList")
+ public ResponseEntity<List<ShelfRack>> findList(@RequestBody ShelfRack params) {
+ List<ShelfRack> result = shelfRackService.findList(params);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 鏌ヨ
+ *
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "鏌ヨ", notes = "鏌ヨ璇︽儏")
+ @ApiResponses({@ApiResponse(code = 200, message = "鏌ヨ鎴愬姛")})
+ @GetMapping("/{id}")
+ public ResponseEntity<ShelfRack> findById(@PathVariable("id") Long id) {
+ ShelfRack shelfRack = shelfRackService.findById(id);
+ return ResponseEntity.ok(shelfRack);
+ }
+
+ /**
+ * 鏂板
+ *
+ * @param shelfRack
+ * @return
+ */
+ @ApiOperation(value = "鏂板", notes = "鏂板鏁版嵁")
+ @ApiResponses({@ApiResponse(code = 200, message = "鎿嶄綔鎴愬姛")})
+ @PostMapping
+ public ResponseEntity<Boolean> insert( @RequestBody ShelfRack shelfRack) {
+ boolean result = shelfRackService.insert(shelfRack);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 淇敼
+ *
+ * @param shelfRack
+ * @return
+ */
+ @ApiOperation(value = "淇敼", notes = "淇敼鏁版嵁")
+ @ApiResponses({@ApiResponse(code = 200, message = "鎿嶄綔鎴愬姛")})
+ @PutMapping
+ public ResponseEntity<Boolean> update( @RequestBody ShelfRack shelfRack) {
+ boolean result = shelfRackService.update(shelfRack);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "鍒犻櫎", notes = "鍒犻櫎鏁版嵁")
+ @DeleteMapping("/{id}")
+ public ResponseEntity<Integer> delete(@PathVariable("id") Long id) {
+ int result = shelfRackService.delete(id);
+ return ResponseEntity.ok(result);
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/entity/ShelfRack.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/entity/ShelfRack.java
new file mode 100644
index 0000000..b93003e
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/entity/ShelfRack.java
@@ -0,0 +1,106 @@
+package com.mes.shelfrack.entity;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@TableName("shelf_rack")
+@ApiModel(value = "ShelfRack", description = " ")
+public class ShelfRack implements Serializable{
+
+ private static final long serialVersionUID=1L;
+
+ /**
+ *
+ */
+ @ApiModelProperty(" ")
+ private Long id;
+
+ /**
+ * 鏋跺瓙缂栧彿
+ */
+ @ApiModelProperty("鏋跺瓙缂栧彿")
+ private String number;
+
+ /**
+ * 宸ヤ綔鐘舵��
+ */
+ @ApiModelProperty("宸ヤ綔鐘舵��")
+ private String state;
+
+ /**
+ * 鍖呭彿缂栧彿
+ */
+ @ApiModelProperty("鍖呭彿缂栧彿")
+ private Long rawPackageId;
+
+ /**
+ * 淇敼鏃堕棿
+ */
+ @ApiModelProperty("淇敼鏃堕棿")
+ private Date modTime;
+
+ /**
+ * 鍚敤鐘舵��
+ */
+ @ApiModelProperty("鍚敤鐘舵��")
+ private String enableState;
+
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public String getNumber() {
+ return number;
+ }
+
+ public void setNumber(String number) {
+ this.number = number;
+ }
+
+ public String getState() {
+ return state;
+ }
+
+ public void setState(String state) {
+ this.state = state;
+ }
+
+ public Long getRawPackageId() {
+ return rawPackageId;
+ }
+
+ public void setRawPackageId(Long rawPackageId) {
+ this.rawPackageId = rawPackageId;
+ }
+
+ public Date getModTime() {
+ return modTime;
+ }
+
+ public void setModTime(Date modTime) {
+ this.modTime = modTime;
+ }
+
+ public String getEnableState() {
+ return enableState;
+ }
+
+ public void setEnableState(String enableState) {
+ this.enableState = enableState;
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/mapper/ShelfRackMapper.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/mapper/ShelfRackMapper.java
new file mode 100644
index 0000000..3570a5a
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/mapper/ShelfRackMapper.java
@@ -0,0 +1,16 @@
+package com.mes.shelfrack.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.mes.shelfrack.entity.ShelfRack;
+import org.apache.ibatis.annotations.Mapper;
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ *
+ */
+@Mapper
+public interface ShelfRackMapper extends BaseMapper<ShelfRack> {
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/mapper/ShelfRackMapper.xml b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/mapper/ShelfRackMapper.xml
new file mode 100644
index 0000000..719ef59
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/mapper/ShelfRackMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.mes.shelfrack.mapper.ShelfRackMapper">
+
+</mapper>
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/service/ShelfRackService.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/service/ShelfRackService.java
new file mode 100644
index 0000000..4985adf
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/service/ShelfRackService.java
@@ -0,0 +1,23 @@
+package com.mes.shelfrack.service;
+
+import com.mes.shelfrack.entity.ShelfRack;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+/**
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+public interface ShelfRackService extends IService<ShelfRack> {
+
+ List<ShelfRack> findList(ShelfRack params);
+
+ ShelfRack findById(Long id);
+
+ boolean insert(ShelfRack shelfRack);
+
+ boolean update(ShelfRack shelfRack);
+
+ int delete(Long id);
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/service/impl/ShelfRackServiceImpl.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/service/impl/ShelfRackServiceImpl.java
new file mode 100644
index 0000000..e8771e0
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/shelfrack/service/impl/ShelfRackServiceImpl.java
@@ -0,0 +1,49 @@
+package com.mes.shelfrack.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mes.shelfrack.mapper.ShelfRackMapper;
+import com.mes.shelfrack.entity.ShelfRack;
+import com.mes.shelfrack.service.ShelfRackService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import java.util.List;
+
+/**
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@Service
+public class ShelfRackServiceImpl extends ServiceImpl<ShelfRackMapper, ShelfRack> implements ShelfRackService {
+
+ @Autowired
+ private ShelfRackMapper shelfRackMapper;
+
+ @Override
+ public List<ShelfRack> findList(ShelfRack params){
+ LambdaQueryWrapper<ShelfRack> query = Wrappers.lambdaQuery(ShelfRack.class);
+ return shelfRackMapper.selectList(query);
+ }
+
+ @Override
+ public ShelfRack findById(Long id) {
+ return shelfRackMapper.selectById(id);
+ }
+
+ @Override
+ public boolean insert(ShelfRack shelfRack) {
+ return save(shelfRack);
+ }
+
+ @Override
+ public boolean update(ShelfRack shelfRack) {
+ return updateById(shelfRack);
+ }
+
+ @Override
+ public int delete(Long id) {
+ return shelfRackMapper.deleteById(id);
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/controller/StorageTaskController.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/controller/StorageTaskController.java
new file mode 100644
index 0000000..16574db
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/controller/StorageTaskController.java
@@ -0,0 +1,101 @@
+package com.mes.storagetask.controller;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import org.springframework.web.bind.annotation.*;
+import com.mes.storagetask.entity.StorageTask;
+import com.mes.storagetask.service.StorageTaskService;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import java.util.List;
+
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@RestController
+@RequestMapping("/api/storageTask")
+@Api(tags = " 鎺у埗鍣�")
+public class StorageTaskController {
+
+ @Autowired
+ private StorageTaskService storageTaskService;
+
+ /**
+ * 鍒楄〃鏌ヨ
+ *
+ * @param params
+ * @return
+ */
+ @ApiOperation(value = "鍒楄〃鏌ヨ",notes = "鍒楄〃鏌ヨ",produces = "application/json")
+ @ApiResponses({@ApiResponse(code = 200, message = "鏌ヨ鎴愬姛")})
+ @PostMapping("/findList")
+ public ResponseEntity<List<StorageTask>> findList(@RequestBody StorageTask params) {
+ List<StorageTask> result = storageTaskService.findList(params);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 鏌ヨ
+ *
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "鏌ヨ", notes = "鏌ヨ璇︽儏")
+ @ApiResponses({@ApiResponse(code = 200, message = "鏌ヨ鎴愬姛")})
+ @GetMapping("/{id}")
+ public ResponseEntity<StorageTask> findById(@PathVariable("id") Long id) {
+ StorageTask storageTask = storageTaskService.findById(id);
+ return ResponseEntity.ok(storageTask);
+ }
+
+ /**
+ * 鏂板
+ *
+ * @param storageTask
+ * @return
+ */
+ @ApiOperation(value = "鏂板", notes = "鏂板鏁版嵁")
+ @ApiResponses({@ApiResponse(code = 200, message = "鎿嶄綔鎴愬姛")})
+ @PostMapping
+ public ResponseEntity<Boolean> insert( @RequestBody StorageTask storageTask) {
+ boolean result = storageTaskService.insert(storageTask);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 淇敼
+ *
+ * @param storageTask
+ * @return
+ */
+ @ApiOperation(value = "淇敼", notes = "淇敼鏁版嵁")
+ @ApiResponses({@ApiResponse(code = 200, message = "鎿嶄綔鎴愬姛")})
+ @PutMapping
+ public ResponseEntity<Boolean> update( @RequestBody StorageTask storageTask) {
+ boolean result = storageTaskService.update(storageTask);
+ return ResponseEntity.ok(result);
+ }
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "鍒犻櫎", notes = "鍒犻櫎鏁版嵁")
+ @DeleteMapping("/{id}")
+ public ResponseEntity<Integer> delete(@PathVariable("id") Long id) {
+ int result = storageTaskService.delete(id);
+ return ResponseEntity.ok(result);
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/entity/StorageTask.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/entity/StorageTask.java
new file mode 100644
index 0000000..76da660
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/entity/StorageTask.java
@@ -0,0 +1,134 @@
+package com.mes.storagetask.entity;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@TableName("storage_task")
+@ApiModel(value = "StorageTask", description = " ")
+public class StorageTask implements Serializable{
+
+ private static final long serialVersionUID=1L;
+
+ /**
+ *
+ */
+ @ApiModelProperty(" ")
+ private Long id;
+
+ /**
+ * 浠诲姟绫诲瀷
+ */
+ @ApiModelProperty("浠诲姟绫诲瀷")
+ private String taskType;
+
+ /**
+ * 宸ヤ綔鐘舵��
+ */
+ @ApiModelProperty("宸ヤ綔鐘舵��")
+ private String taskState;
+
+ /**
+ * 浠撳偍鏋跺彿
+ */
+ @ApiModelProperty("浠撳偍鏋跺彿")
+ private String shelfRack;
+
+ /**
+ * 涓婄墖浣嶇紪鍙�
+ */
+ @ApiModelProperty("涓婄墖浣嶇紪鍙�")
+ private String loadRack;
+
+ /**
+ * 绾胯矾
+ */
+ @ApiModelProperty("绾胯矾")
+ private Integer routeGroup;
+
+ /**
+ * 鍒涘缓鏃堕棿
+ */
+ @ApiModelProperty("鍒涘缓鏃堕棿")
+ private Date startTime;
+
+ /**
+ * 瀹屾垚鏃堕棿
+ */
+ @ApiModelProperty("瀹屾垚鏃堕棿")
+ private Date finishTime;
+
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public String getTaskType() {
+ return taskType;
+ }
+
+ public void setTaskType(String taskType) {
+ this.taskType = taskType;
+ }
+
+ public String getTaskState() {
+ return taskState;
+ }
+
+ public void setTaskState(String taskState) {
+ this.taskState = taskState;
+ }
+
+ public String getShelfRack() {
+ return shelfRack;
+ }
+
+ public void setShelfRack(String shelfRack) {
+ this.shelfRack = shelfRack;
+ }
+
+ public String getLoadRack() {
+ return loadRack;
+ }
+
+ public void setLoadRack(String loadRack) {
+ this.loadRack = loadRack;
+ }
+
+ public Integer getRouteGroup() {
+ return routeGroup;
+ }
+
+ public void setRouteGroup(Integer routeGroup) {
+ this.routeGroup = routeGroup;
+ }
+
+ public Date getStartTime() {
+ return startTime;
+ }
+
+ public void setStartTime(Date startTime) {
+ this.startTime = startTime;
+ }
+
+ public Date getFinishTime() {
+ return finishTime;
+ }
+
+ public void setFinishTime(Date finishTime) {
+ this.finishTime = finishTime;
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/mapper/StorageTaskMapper.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/mapper/StorageTaskMapper.java
new file mode 100644
index 0000000..43a8507
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/mapper/StorageTaskMapper.java
@@ -0,0 +1,16 @@
+package com.mes.storagetask.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.mes.storagetask.entity.StorageTask;
+import org.apache.ibatis.annotations.Mapper;
+/**
+ *
+ *
+ * @author system
+ * @since 2024-07-09 14:51:27
+ *
+ */
+@Mapper
+public interface StorageTaskMapper extends BaseMapper<StorageTask> {
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/mapper/StorageTaskMapper.xml b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/mapper/StorageTaskMapper.xml
new file mode 100644
index 0000000..69ad537
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/mapper/StorageTaskMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.mes.storagetask.mapper.StorageTaskMapper">
+
+</mapper>
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/service/StorageTaskService.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/service/StorageTaskService.java
new file mode 100644
index 0000000..db70800
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/service/StorageTaskService.java
@@ -0,0 +1,23 @@
+package com.mes.storagetask.service;
+
+import com.mes.storagetask.entity.StorageTask;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+/**
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+public interface StorageTaskService extends IService<StorageTask> {
+
+ List<StorageTask> findList(StorageTask params);
+
+ StorageTask findById(Long id);
+
+ boolean insert(StorageTask storageTask);
+
+ boolean update(StorageTask storageTask);
+
+ int delete(Long id);
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/service/impl/StorageTaskServiceImpl.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/service/impl/StorageTaskServiceImpl.java
new file mode 100644
index 0000000..0ef7807
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/storagetask/service/impl/StorageTaskServiceImpl.java
@@ -0,0 +1,49 @@
+package com.mes.storagetask.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mes.storagetask.mapper.StorageTaskMapper;
+import com.mes.storagetask.entity.StorageTask;
+import com.mes.storagetask.service.StorageTaskService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import java.util.List;
+
+/**
+ * @author system
+ * @since 2024-07-09 14:51:27
+ */
+@Service
+public class StorageTaskServiceImpl extends ServiceImpl<StorageTaskMapper, StorageTask> implements StorageTaskService {
+
+ @Autowired
+ private StorageTaskMapper storageTaskMapper;
+
+ @Override
+ public List<StorageTask> findList(StorageTask params){
+ LambdaQueryWrapper<StorageTask> query = Wrappers.lambdaQuery(StorageTask.class);
+ return storageTaskMapper.selectList(query);
+ }
+
+ @Override
+ public StorageTask findById(Long id) {
+ return storageTaskMapper.selectById(id);
+ }
+
+ @Override
+ public boolean insert(StorageTask storageTask) {
+ return save(storageTask);
+ }
+
+ @Override
+ public boolean update(StorageTask storageTask) {
+ return updateById(storageTask);
+ }
+
+ @Override
+ public int delete(Long id) {
+ return storageTaskMapper.deleteById(id);
+ }
+
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application-dev.yml b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application-dev.yml
new file mode 100644
index 0000000..3097382
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application-dev.yml
@@ -0,0 +1,25 @@
+spring:
+ datasource:
+ dynamic:
+ primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster
+ strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�.
+ datasource:
+ hangzhoumes:
+ url: jdbc:mysql://127.0.0.1:3306/hangzhoumes?serverTimezone=GMT%2b8
+ username: root
+ password: beibo.123/
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ salve_hangzhoumes:
+ url: jdbc:sqlserver://127.0.0.1:1433;databasename=hangzhoumes
+ username: sa
+ password: beibo.123/
+ driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
+ cloud:
+ nacos:
+ discovery:
+ server-addr: 127.0.0.1:8848
+ redis:
+ database: 0
+ host: 127.0.0.1
+ port: 6379
+ password: 123456
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application-prod.yml b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application-prod.yml
new file mode 100644
index 0000000..0c3ff07
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application-prod.yml
@@ -0,0 +1,30 @@
+spring:
+ datasource:
+ dynamic:
+ primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster
+ strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�.
+ datasource:
+ hangzhoumes:
+ url: jdbc:mysql://127.0.0.1:3306/hangzhoumes?serverTimezone=GMT%2b8
+ username: root
+ password: beibo.123/
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ salve_hangzhoumes:
+ url: jdbc:sqlserver://10.153.19.150:1433;databasename=hangzhoumes
+ username: sa
+ password: beibo.123/
+ driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
+ pp:
+ url: jdbc:mysql://10.153.19.150:3306/pp?serverTimezone=GMT%2b8
+ username: root
+ password: beibo.123/
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ cloud:
+ nacos:
+ discovery:
+ server-addr: 10.153.19.150:8848
+ redis:
+ database: 0
+ host: 10.153.19.150
+ port: 6379
+ password: 123456
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application.yml
new file mode 100644
index 0000000..5a26257
--- /dev/null
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/resources/application.yml
@@ -0,0 +1,16 @@
+server:
+ port: 8086
+
+spring:
+ profiles:
+ active: prod
+ application:
+ name: glassStorage
+
+
+mybatis-plus:
+ mapper-locations: classpath*:mapper/*.xml
+ configuration:
+ log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+
+
diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-cz.yml b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-cz.yml
index 1d19003..a3fcabe 100644
--- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-cz.yml
+++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-cz.yml
@@ -15,10 +15,10 @@
password: beibo.123/
driver-class-name: com.mysql.cj.jdbc.Driver
sd:
- url: jdbc:mysql://192.168.1.199:3306/sd?serverTimezone=GMT%2b8
- username: root
- password: beibo.123/
- driver-class-name: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://192.168.1.199:3306/sd?serverTimezone=GMT%2b8
+ username: root
+ password: beibo.123/
+ driver-class-name: com.mysql.cj.jdbc.Driver
cloud:
nacos:
discovery:
diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-prod.yml b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-prod.yml
index a218f03..c5a981e 100644
--- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-prod.yml
+++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-prod.yml
@@ -15,10 +15,10 @@
password: beibo.123/
driver-class-name: com.mysql.cj.jdbc.Driver
sd:
- url: jdbc:mysql://10.153.19.150:3306/sd?serverTimezone=GMT%2b8
- username: root
- password: beibo.123/
- driver-class-name: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://10.153.19.150:3306/sd?serverTimezone=GMT%2b8
+ username: root
+ password: beibo.123/
+ driver-class-name: com.mysql.cj.jdbc.Driver
cloud:
nacos:
discovery:
diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-cz.yml b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-cz.yml
index 870e2c8..34f72c9 100644
--- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-cz.yml
+++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-cz.yml
@@ -14,6 +14,16 @@
username: sa
password: beibo.123/
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
+ pp:
+ url: jdbc:mysql://192.168.1.199:3306/pp?serverTimezone=GMT%2b8
+ username: root
+ password: beibo.123/
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ sd:
+ url: jdbc:mysql://192.168.1.199:3306/sd?serverTimezone=GMT%2b8
+ username: root
+ password: beibo.123/
+ driver-class-name: com.mysql.cj.jdbc.Driver
cloud:
nacos:
discovery:
diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-dev.yml b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-dev.yml
index 7a1a916..18d4c7e 100644
--- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-dev.yml
+++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-dev.yml
@@ -4,23 +4,13 @@
primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster
strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�.
datasource:
-# hangzhoumes:
-# url: jdbc:mysql://127.0.0.1:3306/hangzhoumes?serverTimezone=GMT%2b8
-# username: root
-# password: beibo.123/
-# driver-class-name: com.mysql.cj.jdbc.Driver
-# salve_hangzhoumes:
-# url: jdbc:sqlserver://127.0.0.1:1433;databasename=hangzhoumes
-# username: sa
-# password: beibo.123/
-# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
hangzhoumes:
- url: jdbc:mysql:10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8
+ url: jdbc:mysql://127.0.0.1:3306/hangzhoumes?serverTimezone=GMT%2b8
username: root
password: beibo.123/
driver-class-name: com.mysql.cj.jdbc.Driver
salve_hangzhoumes:
- url: jdbc:sqlserver://10.153.19.150:1433;databasename=hangzhoumes
+ url: jdbc:sqlserver://127.0.0.1:1433;databasename=hangzhoumes
username: sa
password: beibo.123/
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-prod.yml b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-prod.yml
index d00e665..3fc6fbb 100644
--- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-prod.yml
+++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-prod.yml
@@ -9,7 +9,6 @@
username: root
password: beibo.123/
driver-class-name: com.mysql.cj.jdbc.Driver
-
salve_hangzhoumes:
url: jdbc:sqlserver://10.153.19.150:1433;databasename=hangzhoumes
username: sa
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/S7object.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/S7object.java
index 670d12c..dd753b9 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/S7object.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/S7object.java
@@ -52,7 +52,9 @@
}
byte[] getplcvlues = plccontrol.readByte(PlcMesObject.getPlcAddressBegin(), PlcMesObject.getPlcAddressLength());
- PlcMesObject.setPlcParameterList(getplcvlues);
+ if (getplcvlues != null) {
+ PlcMesObject.setPlcParameterList(getplcvlues);
+ }
}
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassTask.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassTask.java
index 79f62f9..e2da1a1 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassTask.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassTask.java
@@ -81,7 +81,7 @@
/**
* 浠诲姟鐘舵�� 0 鏈紑濮� 1姝e湪杩涜 2瀹屾垚
*/
- private Integer taskStauts;
+ private Integer taskStatus;
/**
* 鍒涘缓鏃堕棿
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/downglassinfo/service/impl/DownGlassTaskServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java
index c66855e..17f9ba1 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java
@@ -7,16 +7,15 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mes.downglassinfo.entity.DownGlassInfo;
import com.mes.downglassinfo.entity.DownGlassTask;
-import com.mes.downglassinfo.mapper.DownGlassInfoMapper;
import com.mes.downglassinfo.mapper.DownGlassTaskMapper;
import com.mes.downglassinfo.service.DownGlassInfoService;
import com.mes.downglassinfo.service.DownGlassTaskService;
-import com.mes.downworkstation.entity.DownWorkstation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@@ -36,7 +35,7 @@
@Autowired
private DownGlassInfoService downGlassInfoService; // MySQL Mapper
- @Autowired
+ @Resource
private DownGlassTaskMapper downGlassTaskMapper; // SQL Server Mapper
@Override
@@ -47,7 +46,7 @@
// Step 2: 浠� SQL Server 涓繃婊ゆ帀杩欎簺鐜荤拑 ID 骞舵煡璇换鍔�
QueryWrapper<DownGlassTask> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("task_stauts", 1)
+ queryWrapper.eq("task_status", 1)
.and(qw -> qw.eq("task_type", 2).or().eq("task_type", 3));
List<DownGlassInfo> excludedGlassIds = downGlassInfoService.list();
@@ -63,7 +62,7 @@
@Override
public void updateTaskState(String id) {
UpdateWrapper<DownGlassTask> updateWrapper = new UpdateWrapper<>();
- updateWrapper.set("task_stauts", 2).eq("id", id);
+ updateWrapper.set("task_status", 2).eq("id", id);
baseMapper.update(new DownGlassTask(), updateWrapper);
}
@@ -99,7 +98,7 @@
// 濡傛灉涓婚敭鍊间笉瀛樺湪锛屽垯杩涜鎻掑叆鎿嶄綔
DownGlassTask newDownGlassTask = new DownGlassTask();
BeanUtils.copyProperties(downGlassTask, newDownGlassTask);
- newDownGlassTask.setTaskStauts(1); // 榛樿浠诲姟鐘舵�佷负1
+ newDownGlassTask.setTaskStatus(1); // 榛樿浠诲姟鐘舵�佷负1
newDownGlassTask.setCreateTime(new Date());
int rows = baseMapper.insert(newDownGlassTask);
return rows > 0 ? rows : null;
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java
index 29c215b..a5a3a3c 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java
@@ -71,7 +71,7 @@
*/
boolean DirectConnection(GlassInfo glassInfo);
- DownStorageCageDetails getGlassInfoMaxCount();
+ String getGlassInfoMaxCount(String glassId);
/**
* @param glassId
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java
index aaaebcc..5281217 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java
@@ -52,6 +52,7 @@
*/
List<Map<String, Object>> selectDownStorageCages();
+ List<DownStorageCageDetails> selectCacheMax();
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java
index 1b3d559..027a0a0 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java
@@ -3,19 +3,14 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.github.yulichang.query.MPJLambdaQueryWrapper;
-import com.github.yulichang.query.MPJQueryWrapper;
-
-
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-
+import com.github.yulichang.query.MPJLambdaQueryWrapper;
import com.github.yulichang.toolkit.JoinWrappers;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.mes.common.config.Const;
import com.mes.downstorage.entity.DownStorageCage;
import com.mes.downstorage.entity.DownStorageCageDetails;
import com.mes.downstorage.mapper.DownStorageCageDetailsMapper;
-
import com.mes.downstorage.mapper.DownStorageCageMapper;
import com.mes.downstorage.service.DownStorageCageDetailsService;
import com.mes.downworkstation.entity.DownWorkstation;
@@ -198,8 +193,9 @@
}
@Override
- public DownStorageCageDetails getGlassInfoMaxCount() {
- return baseMapper.getGlassInfoMaxCount();
+ public String getGlassInfoMaxCount(String glassId) {
+ DownStorageCageDetails glassInfoMaxCount = baseMapper.getGlassInfoMaxCount();
+ return null == glassInfoMaxCount ? glassId : glassInfoMaxCount.getGlassId();
}
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 40f9793..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
@@ -2,22 +2,21 @@
import com.mes.downworkstation.entity.DownWorkstation;
+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
@@ -33,73 +32,48 @@
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);
}
}
-
-//缁戝畾鏋跺瓙
-@ApiOperation("缁戝畾鏋跺瓙")
+ //缁戝畾鏋跺瓙
+ @ApiOperation("缁戝畾鏋跺瓙")
@PostMapping("/updateFlowCardId")
- public ResponseEntity<Map<String, Object>> updateFlowCardId(@RequestBody Map<String, Object> requestData) {
- // 浠� requestData 涓幏鍙栦紶鍏ョ殑 flowCardId
- String flowCardId = (String) requestData.get("flowCardId");
- int workstationId = (int) requestData.get("workstationId");
+ public Result updateFlowCardId(@RequestBody DownWorkRequest request) {
- // 鏌ヨ瀵瑰簲 flowCardId 鐨勭幓鐠冧俊鎭�绘暟閲�
- int glassInfoCount = glassInfoService.getGlassInfoCountByFlowCardId(flowCardId);
+ // 缁戝畾鏋跺瓙
+ downWorkstationService.updateFlowCardIdAndCount(request.getFlowCardId(), request.getWorkstationId(), request.getLayer());
- // 鏇存柊 down_workstation 琛ㄤ腑鐨勬�绘暟閲�
- downWorkstationService.updateFlowCardIdAndCount(flowCardId, glassInfoCount, workstationId);
-
- // 鏋勫缓鍝嶅簲鏁版嵁
- 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");
@@ -109,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);
}
@@ -129,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 7afc44a..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
@@ -1,7 +1,6 @@
package com.mes.downworkstation.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;
@@ -62,14 +61,16 @@
/**
* 鎬绘暟閲�
*/
- @TableField("total_quantity")
- private Integer totalquantity;
+ private Integer totalQuantity;
/**
* 钀芥灦鏁伴噺
*/
- @TableField("racks_number")
- private Integer Racksnumber;
+ private Integer racksNumber;
+ /**
+ * 浜哄伐涓嬬墖鏁伴噺
+ */
+ private Integer otherNumber;
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstionAndDownGlassinfo.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstionAndDownGlassinfo.java
index 1229f98..c79112f 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstionAndDownGlassinfo.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstionAndDownGlassinfo.java
@@ -1,7 +1,6 @@
package com.mes.downworkstation.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;
@@ -17,8 +16,7 @@
@Data
@EqualsAndHashCode(callSuper = false)
-public class DownWorkstionAndDownGlassinfo
-{
+public class DownWorkstionAndDownGlassinfo {
/**
* 涓嬬墖宸ヤ綅琛╥d
*/
@@ -51,14 +49,9 @@
private Integer workState;
- @TableField("total_quantity")
- private Integer totalquantity;
+ private Integer totalQuantity;
- @TableField("racks_number")
- private Integer Racksnumber;
-
-
-
+ private Integer racksNumber;
/**
* 椤哄簭
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/entity/request/DownWorkRequest.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/request/DownWorkRequest.java
new file mode 100644
index 0000000..9a72eae
--- /dev/null
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/request/DownWorkRequest.java
@@ -0,0 +1,28 @@
+package com.mes.downworkstation.entity.request;
+
+import lombok.Data;
+
+/**
+ * @Author : zhoush
+ * @Date: 2024/7/10 14:10
+ * @Description:
+ */
+@Data
+public class DownWorkRequest {
+
+
+ /**
+ * 娴佺▼鍗″彿
+ */
+ private String flowCardId;
+
+ /**
+ * 宸ヤ綅id
+ */
+ private int workstationId;
+
+ /**
+ * 灞傛暟
+ */
+ private int layer;
+}
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 8a4ba9d..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
@@ -49,11 +49,11 @@
/**
* @param flowCardId
- * @param glassInfoCount
+ *
* @param workstationId
* @return 鏇存柊鏋跺瓙鍜屾暟閲�
*/
- int updateFlowCardIdAndCount(String flowCardId, int glassInfoCount, int workstationId);
+ 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 a602f88..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
@@ -4,11 +4,13 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.query.MPJQueryWrapper;
+import com.mes.damage.entity.Damage;
+import com.mes.damage.service.DamageService;
import com.mes.downglassinfo.entity.DownGlassInfo;
-import com.mes.downglassinfo.entity.DownGlassTask;
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;
@@ -16,6 +18,7 @@
import com.mes.downworkstation.mapper.DownWorkstationTaskMapper;
import com.mes.downworkstation.service.DownWorkstationService;
import com.mes.downworkstation.service.DownWorkstationTaskService;
+import com.mes.glassinfo.service.GlassInfoService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -40,7 +43,10 @@
private DownGlassInfoMapper downGlassInfoMapper;
@Autowired
private DownGlassTaskService downGlassTaskService;
-
+ @Autowired
+ private GlassInfoService glassInfoService;
+ @Autowired
+ private DamageService damageservice;
@Autowired
private DownWorkstationTaskService downWorkstationTaskService;
@@ -53,10 +59,10 @@
@Override
public int getTotalQuantity(int workstationId) {
DownWorkstation result = baseMapper.selectOne(new QueryWrapper<DownWorkstation>().lambda()
- .select(DownWorkstation::getTotalquantity)
+ .select(DownWorkstation::getTotalQuantity)
.eq(DownWorkstation::getWorkstationId, workstationId));
- return result != null ? result.getTotalquantity() : 0;
+ return result != null ? result.getTotalQuantity() : 0;
}
@@ -111,7 +117,7 @@
.eq("workstation_id", workstationId);
DownWorkstation result = baseMapper.selectOne(queryWrapper);
- return result != null ? result.getRacksnumber() : 0;
+ return result != null ? result.getRacksNumber() : 0;
}
//鏍规嵁鏉′欢鑾峰彇宸ヤ綅鐜荤拑淇℃伅
@@ -136,13 +142,22 @@
@Override
- public int updateFlowCardIdAndCount(String flowCardId, int glassInfoCount, int workstationId) {
+ 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 otherNumber=damageservice.count(queryWrapper);
UpdateWrapper<DownWorkstation> updateWrapper = new UpdateWrapper<>();
updateWrapper.set("total_quantity", glassInfoCount)
.set("flow_card_id", flowCardId)
+ .set("layer", layer)
+ .set("other_number", otherNumber)
.eq("workstation_id", workstationId);
- return baseMapper.update(new DownWorkstation(), updateWrapper);
+ this.update(updateWrapper);
+
}
@Override
@@ -180,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 f562122..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);
- 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 e890fb3..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
@@ -4,6 +4,7 @@
import cn.smallbun.screw.core.util.CollectionUtils;
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.common.S7object;
import com.mes.common.config.Const;
import com.mes.device.PlcParameterObject;
@@ -29,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;
/**
@@ -72,8 +70,14 @@
@Value("${mes.maxHeight}")
private Integer maxHeight;
+ @Value("${mes.minWidth}")
+ private Integer minWidth;
- @Scheduled(fixedDelay = 1000)
+ @Value("${mes.minHeight}")
+ private Integer minHeight;
+
+
+ @Scheduled(fixedDelay = 3000)
public void plcHomeEdgTask() {
PlcParameterObject plcParameterObject = S7object.getinstance().PlcMesObject;
String requestWord = plcParameterObject.getPlcParameter("requestWord").getValue();
@@ -86,6 +90,7 @@
String confirmationWrodValue = plcParameterObject.getPlcParameter("confirmationWord").getValue();
String confirmationWrodAddress = plcParameterObject.getPlcParameter("confirmationWord").getAddress();
String currentSlot = plcParameterObject.getPlcParameter("currentCell").getValue();
+
log.info("1銆佽幏鍙栧埌鐨勮姹傚瓧涓猴細{}锛岃幏鍙栧埌鐨勬壂鎻廔D涓猴細{}锛岃幏鍙栧埌鐨勭‘璁ゅ瓧涓猴細{}锛岃幏鍙栧埌鐨勫嚭鐗囩姸鎬佸垎鍒负锛歡06:{}銆乬08:{}銆乬11:{}銆乬13:{},褰撳墠鏍煎瓙鍙蜂负锛歿}",
requestWord, glassIdeValue, confirmationWrodValue, out06Glassstate, out08Glassstate, out11Glassstate, out13Glassstate, currentSlot);
@@ -108,7 +113,7 @@
inTo(glassIdeValue, requestWord, currentSlot);
} else if ("2".equals(requestWord)) {
//09绌洪棽 锛�1 10绌洪棽 锛�2 閮界┖闂诧細3 鍏朵粬0
- log.info("2銆佸嚭鐗囪姹傦紝涓旂‘璁ゅ瓧涓�0锛屾墽琛岃繘鐗囦换鍔�");
+ log.info("2銆佸嚭鐗囪姹傦紝涓旂‘璁ゅ瓧涓�0锛屾墽琛屽嚭鐗囦换鍔�");
outTo(out06Glassstate, out08Glassstate, out11Glassstate, out13Glassstate, glassIdeValue, currentSlot);
} else if ("3".equals(requestWord)) {
log.info("2銆佽繘鐗囧拰鍑虹墖閮界┖闂诧紝鎵ц鍑虹墖浠诲姟");
@@ -135,8 +140,8 @@
}
Boolean checkFlag = Boolean.FALSE;
//鐜荤拑灏哄鏄惁璧颁汉宸ヤ笅鐗�
- if (glassInfo.getWidth() > maxWidth || glassInfo.getHeight() > maxHeight) {
- log.info("璇ョ幓鐠冨昂瀵歌蛋浜哄伐涓嬬墖,鐩存帴杩涚墖");
+ if (glassInfo.getWidth() > maxWidth || glassInfo.getHeight() > maxHeight || glassInfo.getWidth() < minWidth || glassInfo.getHeight() < minHeight) {
+ log.info("璇ョ幓鐠冨昂瀵镐笉绗﹀悎瑕佹眰锛岄渶瑕佽蛋浜哄伐涓嬬墖鐩存帴杩涚墖");
} else {
log.info("璇ョ幓鐠冨昂瀵搁潪浜哄伐涓嬬墖");
//鑾峰彇璇ョ幓鐠冪殑娴佺▼鍗℃槸鍚﹀凡缁戝畾鏋跺瓙
@@ -152,14 +157,11 @@
if (!checkFlag && !isBind) {
log.info("璇ョ幓鐠冪殑娴佺▼鍗℃湭缁戝畾鏋跺瓙锛岃幏鍙栨槸鍚︽湁绌烘灦瀛�");
List<DownWorkstation> list = downWorkstationService.list(new LambdaQueryWrapper<DownWorkstation>()
- .isNull(DownWorkstation::getFlowCardId));
+ .isNull(DownWorkstation::getFlowCardId).orderByDesc(DownWorkstation::getWorkstationId));
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;
}
}
@@ -174,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;
}
}
}
@@ -207,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;
@@ -236,8 +241,8 @@
return Boolean.FALSE;
}
Boolean flag08 = "1".equals(out08Glassstate) ? Boolean.TRUE : Boolean.FALSE;
- if (!generateTaskByShelf(glassStatus11, flag08, glassStatus13, tempList, cageDetails)) {
- return generateTaskByShelf(glassStatus11, !flag08, glassStatus13, tempList, cageDetails);
+ if (!generateTaskByShelf(glassStatus06, glassStatus11, flag08, glassStatus13, tempList, cageDetails, glassId)) {
+ return generateTaskByShelf(glassStatus06, glassStatus11, !flag08, glassStatus13, tempList, cageDetails, glassId);
}
return Boolean.TRUE;
}
@@ -279,16 +284,17 @@
}
}
- private Boolean generateTaskByShelf(String glassStatus, Boolean flag08, String glassStatus13, List<DownStorageCageDetails> tempList, DownStorageCageDetails cageDetails) {
+ private Boolean generateTaskByShelf(String glassStatus06, String glassStatus11, Boolean flag08, String
+ glassStatus13, List<DownStorageCageDetails> tempList, DownStorageCageDetails cageDetails, String glassId) {
//鑾峰彇2涓満姊拌噦鑼冨洿鍐呯殑鏋跺瓙缁戝畾鐨勬祦绋嬪崱淇℃伅
List<Integer> workList = new ArrayList();
if (flag08) {
- if (!"2".equals(glassStatus)) {
+ if (!"2".equals(glassStatus11)) {
workList.addAll(Const.G11_WORK_STATION);
}
} else {
- if (!"2".equals(glassStatus)) {
+ if (!"2".equals(glassStatus06)) {
workList.addAll(Const.G06_WORK_STATION);
}
}
@@ -297,7 +303,7 @@
//瀵圭鍐呯幓鐠冭繘琛岃繃婊わ紝浠呭嚭绗﹀悎閫昏緫鐨勭幓鐠�
if (CollectionUtils.isNotEmpty(workList)) {
List<DownWorkstation> downWorkstationList = downWorkstationService.list(new LambdaQueryWrapper<DownWorkstation>()
- .eq(DownWorkstation::getEnableState, 0).in(DownWorkstation::getWorkstationId, workList));
+ .eq(DownWorkstation::getEnableState, Const.SLOT_ON).in(DownWorkstation::getWorkstationId, workList));
log.info("鏋跺瓙琚鐢紝鏃犳硶鍑虹墖钀芥灦");
if (CollectionUtils.isEmpty(downWorkstationList)) {
log.info("绗煎瓙琚鐢紝鏃犳硶璧版満姊拌噦涓嬬墖");
@@ -348,10 +354,8 @@
List<DownGlassInfoDTO> downGlassInfoDTOList = downGlassInfoService.queryWorkStationIsIn(Boolean.TRUE);
List<String> downGlassFlowList = downGlassInfoDTOList.stream().map(item -> item.getFlowCardId() + ":" + item.getLayer()).collect(Collectors.toList());
if (CollectionUtils.isEmpty(downGlassFlowList)) {
- //鏋跺瓙閮芥湭缁戝畾娴佺▼鍗★紝鍑虹鍐呭瓙鏁伴噺鏈�澶氬昂瀵告渶澶х殑鐜荤拑
- DownStorageCageDetails downStorageCageDetails = downStorageCageDetailsService.getGlassInfoMaxCount();
- //缁戝畾娴佺▼鍗★紝鏇存柊鐜荤拑鐘舵�侊紝鐢熸垚鍑虹墖浠诲姟锛�
- tempGlassId = downStorageCageDetails.getGlassId();
+ //鏋跺瓙閮芥湭缁戝畾娴佺▼鍗★紝鍑虹鍐呭瓙鏁伴噺鏈�澶氬昂瀵告渶澶х殑鐜荤拑id,鏃� 鍒欒繑鍥炴壂鎻忔壂鍒扮殑鐜荤拑id杩涜鍑虹墖
+ tempGlassId = downStorageCageDetailsService.getGlassInfoMaxCount(glassId);
isBind = Boolean.TRUE;
break loop;
}
@@ -362,9 +366,8 @@
// List<DownWorkstation> emptyShelfList = downWorkstationService.list(new LambdaQueryWrapper<DownWorkstation>()
// .isNull(DownWorkstation::getFlowCardId));
if (isEmptyShelf) {
- DownStorageCageDetails downStorageCageDetails = downStorageCageDetailsService.getGlassInfoMaxCount();
- //缁戝畾娴佺▼鍗★紝鏇存柊鐜荤拑鐘舵�侊紝鐢熸垚鍑虹墖浠诲姟
- tempGlassId = downStorageCageDetails.getGlassId();
+ //鏋跺瓙閮芥湭缁戝畾娴佺▼鍗★紝鍑虹鍐呭瓙鏁伴噺鏈�澶氬昂瀵告渶澶х殑鐜荤拑id,鏃� 鍒欒繑鍥炴壂鎻忔壂鍒扮殑鐜荤拑id杩涜鍑虹墖
+ tempGlassId = downStorageCageDetailsService.getGlassInfoMaxCount(glassId);
isBind = Boolean.TRUE;
break loop;
}
@@ -435,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())) {
@@ -443,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;
@@ -453,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("娌℃湁绌烘灦瀛愪俊鎭紝鏃犳硶缁戝畾娴佺▼鍗�");
@@ -475,6 +477,13 @@
return Boolean.FALSE;
}
//鏇存柊钀芥灦鐜荤拑鏁伴噺
+ if (endCell == 7) {
+ downWorkstationService.update(new UpdateWrapper<DownWorkstation>().eq("flow_card_id", downStorageCageDetails.getFlowCardId())
+ .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"));
+ }
//鐢熸垚浠诲姟淇℃伅
DownGlassInfo downGlassInfo = new DownGlassInfo();
@@ -497,7 +506,7 @@
downGlassTask.setHeight((int) glassInfo.getHeight());
downGlassTask.setFlowCardId(glassInfo.getFlowCardId());
downGlassTask.setLayer(glassInfo.getLayer());
- downGlassTask.setTaskStauts(0);
+ downGlassTask.setTaskStatus(0);
downGlassTask.setCreateTime(new Date());
downGlassTaskService.save(downGlassTask);
//鍚憄lc鍙戦�佸懡浠�
@@ -505,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/JsonFile/PlcdownGlass.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json
index ac8379f..de826b1 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json
@@ -12,7 +12,7 @@
{
"codeId": "requestID",
"addressIndex": "2",
- "addressLenght": "30"
+ "addressLenght": "20"
},
{
"codeId": "currentCell",
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-cz.yml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-cz.yml
index 3149cc6..c4c456e 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-cz.yml
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-cz.yml
@@ -10,7 +10,7 @@
password: beibo.123/
driver-class-name: com.mysql.cj.jdbc.Driver
salve_hangzhoumes:
- url: jdbc:sqlserver://192.168.30.101:1433;databasename=hangzhoumes
+ url: jdbc:sqlserver://192.168.10.2:1433;databasename=hangzhoumes
username: sa
password: beibo.123/
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-dev.yml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-dev.yml
index 3097382..f89522e 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-dev.yml
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-dev.yml
@@ -14,6 +14,11 @@
username: sa
password: beibo.123/
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
+ pp:
+ url: jdbc:mysql://127.0.0.1:3306/pp?serverTimezone=GMT%2b8
+ username: root
+ password: beibo.123/
+ driver-class-name: com.mysql.cj.jdbc.Driver
cloud:
nacos:
discovery:
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml
index b13162f..d3918be 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml
@@ -3,7 +3,7 @@
spring:
profiles:
- active: dev
+ active: cz
application:
name: unLoadGlass
@@ -14,8 +14,10 @@
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
mes:
- maxWidth: 1000 #涓嬬墖鐨勬渶澶у搴�
- maxHeight: 1000 #涓嬬墖鐨勬渶澶ч珮搴�
+ maxWidth: 2500 #涓嬬墖鐨勬渶澶у搴�
+ maxHeight: 2000 #涓嬬墖鐨勬渶澶ч珮搴�
+ minWidth: 400 #涓嬬墖鐨勬渶澶у搴�
+ minHeight: 400 #涓嬬墖鐨勬渶澶ч珮搴�
throughWidth: 3000
- throughHeight: 3000
+ throughHeight: 2500
threshold: 5 #涓嬬墖鐨勬渶澶ч槇鍊�
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 11128bc..395722b 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java
@@ -15,6 +15,7 @@
import com.mes.downworkstation.service.DownWorkstationService;
import com.mes.downworkstation.service.impl.DownWorkstationServiceImpl;
import com.mes.glassinfo.service.impl.GlassInfoServiceImpl;
+import com.mes.job.DownLoadCacheGlassTask;
import com.mes.utils.Result;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
@@ -97,14 +98,14 @@
@Test
public void testupdateFlowCardIdAndCount() {
log.info("缁戝畾娴佺▼鍗″彿鍜屾暟閲�");
- downWorkstationServiceImpl.updateFlowCardIdAndCount("1", 1, 1);
+ downWorkstationServiceImpl.updateFlowCardIdAndCount("NG24060401A020", 1, 2);
}
@Test
public void testplc() {
log.info("娴嬭瘯");
- glassInfoServiceImpl.getGlassInfoCountByFlowCardId("NG24030702A01");
+ glassInfoServiceImpl.getGlassInfoCountByFlowCardId("NG24030702A01",1);
}
@@ -194,11 +195,15 @@
DownStorageCage downStorageCage= new DownStorageCage();
- downStorageCage.setEnableState("0");
+ downStorageCage.setEnableState(0);
downStorageCage.setId(1);
downStorageCageService.updateDownStorageCage(downStorageCage);
}*/
+
+
+
+
}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/pom.xml b/hangzhoumesParent/moduleService/pom.xml
index 005b896..55ea5f6 100644
--- a/hangzhoumesParent/moduleService/pom.xml
+++ b/hangzhoumesParent/moduleService/pom.xml
@@ -18,6 +18,7 @@
<module>LoadGlassModule</module>
<module>TemperingGlassModule</module>
<module>UnLoadGlassModule</module>
+ <module>GlassStorageModule</module>
</modules>
<properties>
--
Gitblit v1.8.0