From b365a0879edc787655b908b0dbb65b5e966bb23b Mon Sep 17 00:00:00 2001 From: 严智鑫 <test> Date: 星期二, 07 五月 2024 09:03:08 +0800 Subject: [PATCH] 公共yml文件 ip 改回10.153.19.150 --- hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java | 77 hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/filter/JwtAuthenticationTokenFilter.java | 2 UI-Project/src/views/Returns/returns.vue | 120 + hangzhoumesParent/gateway/src/main/resources/application.yml | 6 hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java | 47 hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/mapper/xml/GlassInfoMapper.xml | 5 hangzhoumesParent/common/springsecurity/src/main/resources/application-dev.yml | 15 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml | 21 hangzhoumesParent.zip | 0 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java | 29 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-prod.yml | 25 hangzhoumesParent/moduleService/LoadGlassModule/src/test/java/com/mes/LoadGlassModuleApplicationTest.java | 13 UI-Project/src/views/LoginView.vue | 9 UI-Project/src/views/Caching/caching.vue | 217 -- hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/entity/GlassInfo.java | 4 hangzhoumesParent/common/springsecurity/src/main/resources/application-loc.yml | 15 hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/controller/GlassInfoController.java | 21 UI-Project/src/assets/lp.png | 0 hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/entity/OptimizeGlassinfo.java | 82 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationTaskServiceImpl.java | 14 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstationTask.java | 11 hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml | 4 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/entity/DownStorageCageDetails.java | 2 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml | 26 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/UnLoadGlassApplication.java | 2 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationService.java | 34 hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/service/UpWorkstationService.java | 2 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-prod.yml | 20 hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/service/impl/UpWorkstationServiceImpl.java | 19 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/mapper/TemperingGlassInfoMapper.java | 3 hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java | 1 hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/controller/UpWorkstationController.java | 16 UI-Project/src/assets/lpa.png | 0 hangzhoumesParent/common/servicebase/src/main/java/com/mes/tools/CodeGet.java | 6 hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-prod.yml | 27 hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/mapper/GlassInfoMapper.java | 17 hangzhoumesParent/gateway/src/main/resources/application-prod.yml | 5 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java | 221 -- hangzhoumesParent/gateway/src/main/resources/application-dev.yml | 5 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassTask.java | 5 hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java | 33 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/Plcdownglass.java | 84 UI-Project/src/router/index.js | 46 hangzhoumesParent/common/springsecurity/src/main/resources/application.yml | 6 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/TemperingAgoService.java | 23 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-prod.yml | 25 hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-loc.yml | 27 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java | 114 + UI-Project/src/layout/MainErpView.vue | 3 UI-Project/src/views/Identify/identify.vue | 332 +-- hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-dev.yml | 25 hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/impl/UpPattenUsageServiceImpl.java | 47 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/PlcHomeEdg.java | 2 UI-Project/src/views/Caching/cachingbefore.vue | 249 ++ hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/utils/JwtUtil.java | 121 - hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/entity/OptimizeUpPattenUsage.java | 68 hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application.yml | 27 UI-Project/src/views/Caching/cachingun.vue | 196 ++ hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java | 60 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassInfoService.java | 7 hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/entity/GlassInfo.java | 135 + hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-loc.yml | 25 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/controller/TemperingGlassInfoController.java | 43 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java | 24 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationTaskService.java | 9 UI-Project/config.js | 2 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-dev.yml | 25 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-loc.yml | 25 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-loc.yml | 22 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml | 26 hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/UpPattenUsageService.java | 4 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-dev.yml | 22 hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-prod.yml | 25 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java | 39 UI-Project/src/views/Slicecage/slicecage.vue | 1215 ++++++++----- hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/controller/UpPattenUsageController.java | 98 hangzhoumesParent/common/springsecurity/src/main/resources/application-prod.yml | 15 /dev/null | 20 hangzhoumesParent/moduleService/TemperingGlassModule/src/test/java/com/mes/TemperingApplicationTest.java | 55 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/entity/DownStorageCage.java | 2 hangzhoumesParent/moduleService/CacheVerticalGlassModule/pom.xml | 6 hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-dev.yml | 27 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/impl/TemperingAgoServiceImpl.java | 55 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassTaskService.java | 44 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-loc.yml | 25 hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java | 2 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/controller/DownStorageCageDetailsController.java | 2 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java | 42 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java | 11 hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/GlassInfoService.java | 19 hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-dev.yml | 25 UI-Project/src/views/PurchaseReturn/purchaseReturn.vue | 252 ++- UI-Project/vite.config.js | 2 93 files changed, 3,222 insertions(+), 1,764 deletions(-) diff --git a/UI-Project/config.js b/UI-Project/config.js index 788923e..bf51358 100644 --- a/UI-Project/config.js +++ b/UI-Project/config.js @@ -1,5 +1,5 @@ export default { - serverUrl: "10.153.19.150:88/api", + serverUrl: "127.0.0.1:88/api", //serverUrl: "localhost:88/api/", serverUrl2: "10.153.19.150:88" //serverUrl:"res.abeim.cn" diff --git a/UI-Project/src/assets/lp.png b/UI-Project/src/assets/lp.png new file mode 100644 index 0000000..fac27df --- /dev/null +++ b/UI-Project/src/assets/lp.png Binary files differ diff --git a/UI-Project/src/assets/lpa.png b/UI-Project/src/assets/lpa.png new file mode 100644 index 0000000..fac27df --- /dev/null +++ b/UI-Project/src/assets/lpa.png Binary files differ diff --git a/UI-Project/src/layout/MainErpView.vue b/UI-Project/src/layout/MainErpView.vue index d2e3ed7..65858e0 100644 --- a/UI-Project/src/layout/MainErpView.vue +++ b/UI-Project/src/layout/MainErpView.vue @@ -23,7 +23,8 @@ //鎻愬彇鑿滃崟妯″潡鍒楄〃 let menuList = $ref([]) -request.get('/loadGlass/menu/sysMenu/list').then((res) => { +// request.get('/loadGlass/menu/sysMenu/list').then((res) => { +request.get('/loadGlass/sys/menu/getMenuTree').then((res) => { if (res.code == 200) { menuList = deepClone(res.data) } else { diff --git a/UI-Project/src/router/index.js b/UI-Project/src/router/index.js index 2ecd57e..ceeccbb 100644 --- a/UI-Project/src/router/index.js +++ b/UI-Project/src/router/index.js @@ -1,8 +1,11 @@ -import { createRouter, createWebHistory } from 'vue-router' -import HomeView from '../views/HomeView.vue' +import {createRouter, createWebHashHistory} from 'vue-router' + +import User from '../views/sys/User.vue' +import Role from '../views/sys/Role.vue' +import Menu from '../views/sys/Menu.vue' const router = createRouter({ - history: createWebHistory(import.meta.env.BASE_URL), + history: createWebHashHistory(), routes: [ { path: '/', @@ -95,9 +98,14 @@ component: () => import('../views/Caching/caching.vue'), children:[ { - path: '/Caching/caching', - name: 'caching', - component: () => import('../views/Caching/caching.vue') + path: '/Caching/cachingbefore', + name: 'cachingbefore', + component: () => import('../views/Caching/cachingbefore.vue') + }, + { + path: '/Caching/cachingun', + name: 'cachingun', + component: () => import('../views/Caching/cachingun.vue') }, ] }, @@ -196,10 +204,34 @@ component: () => import('../views/Visualization/screenthree.vue') } ] + }, + + /*----------- 绠$悊绯荤粺 ----------------*/ + { + path: 'sys', + name: 'screen', + component: () => import('../views/Visualization/screen.vue'), + children: [ + { + path: '/sys/users', + name: 'SysUser', + component: User + }, + { + path: '/sys/roles', + name: 'SysRole', + component: Role + }, + { + path: '/sys/menus', + name: 'SysMenu', + component: Menu + }, + ] }, { path: '', - redirect:'/Slicecage/slicecage' + redirect: '/Slicecage/slicecage' } ] }, diff --git a/UI-Project/src/views/Caching/caching.vue b/UI-Project/src/views/Caching/caching.vue index 7ed5e6a..d0567d3 100644 --- a/UI-Project/src/views/Caching/caching.vue +++ b/UI-Project/src/views/Caching/caching.vue @@ -1,196 +1,49 @@ <script setup> -import {Search} from "@element-plus/icons-vue"; -import {reactive} from "vue"; -import {useRouter} from "vue-router" -const router = useRouter() - -import request from "@/utils/request" -import { ref, onMounted } from "vue"; -// import { ref } from 'vue' -import { ElMessage, ElMessageBox } from 'element-plus' -// import LanguageMixin from './lang/LanguageMixin' - -const tableData = ref([]) - -// 鍙戦�佽幏鍙栬〃鏍兼暟鎹殑璇锋眰 -// const fetchTableData = async () => { -// try { -// // 鍙戦�佽幏鍙栬〃鏍兼暟鎹殑璇锋眰锛屽苟绛夊緟鍝嶅簲 -// // const response = await request.post("/loadGlass/optimizeProject/listByState", requestData); -// const response = await request.get("unLoadGlass/downStorage/selectStorageCage"); - -// // 妫�鏌ュ搷搴旂姸鎬� -// if (response.code === 200) { -// // 鏇存柊琛ㄦ牸鏁版嵁 -// console.log('鎴愬姛鑾峰彇琛ㄦ牸鏁版嵁:', response.data); -// tableData.splice(0, tableData.length, ...response.data); -// } else { -// // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭� -// ElMessage.error(response.msg); -// } -// } catch (error) { -// // 澶勭悊璇锋眰澶辫触鐨勬儏鍐� -// ElMessage.error('鑾峰彇琛ㄦ牸鏁版嵁澶辫触锛岃閲嶈瘯'); -// } -// }; -// onMounted(fetchTableData); - - - -request.get("unLoadGlass/downStorage/selectStorageCage").then((res) => { - if (res.code == 200) { - console.log(res.data); - tableData.value = res.data - } else { - ElMessage.warning(res.msg) - - } - }); - -const dialogForm = () => { - ElMessageBox.confirm( - '鏄惁鎶ョ己?', - '鎻愮ず', - { - confirmButtonText: '鏄�', - cancelButtonText: '鍙栨秷', - type: 'warning', - } - ) - .then(() => { - // this.boxa = true - // this.box = false - - }) +import {ArrowLeftBold, ArrowRight, Search} from "@element-plus/icons-vue" +import {useRouter} from "vue-router"; +let indexFlag=$ref(1) +function changeRouter(index){ + indexFlag=index } -const open = () => { - ElMessageBox.confirm( - '鏄惁鍒犻櫎璇ユ潯淇℃伅?', - '鎻愮ず', - { - confirmButtonText: '鏄�', - cancelButtonText: '鍙栨秷', - type: 'warning', - } - ) - .then(() => { - ElMessage({ - type: 'success', - message: '鍒犻櫎鎴愬姛锛�', - }) - }) - .catch(() => { - ElMessage({ - type: 'info', - message: '鍒犻櫎澶辫触', - }) - }) -} -const getTableRow = (row,type) =>{ - switch (type) { - case 'edit' :{ - //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅') - router.push({path: '/main/returns/createReturns', query: { ReturnID: 'TH24010101' }}) - break - } - case 'delete':{ - alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅') - break - } - } -} - -const gridOptions = reactive({ - border: "full",//琛ㄦ牸鍔犺竟妗� - keepSource: true,//淇濇寔婧愭暟鎹� - align: 'center',//鏂囧瓧灞呬腑 - stripe:true,//鏂戦┈绾� - rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒 - id: 'OrderList', - showFooter: true,//鏄剧ず鑴� - printConfig: {}, - importConfig: {}, - exportConfig: {}, - scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔� - showOverflow:true, - columnConfig: { - resizable: true, - useKey: true - }, - filterConfig: { //绛涢�夐厤缃」 - remote: true - }, - customConfig: { - storage: true - }, - editConfig: { - trigger: 'click', - mode: 'row', - showStatus: true - }, - data: [ - { - 'id': '1', - 'long': '5', - 'wide': '1005', - 'thick': '183.6', - } - ] - -}) - - </script> <template> - <div> - <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" v-loading="loading"> - <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;"> - <el-table height="240" ref="table" - @selection-change="handleSelectionChange" - :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> - <el-table-column prop="id" align="center" label="鐜荤拑ID" min-width="80" /> - <el-table-column prop="sequence" align="center" label="浣嶇疆" min-width="120" /> - <el-table-column prop="width" align="center" label="瀹�" min-width="120" /> - <el-table-column prop="height" align="center" label="闀�" min-width="120" /> - <el-table-column fixed="right" label="鎿嶄綔" align="center" width="200"> - <template #default> - <el-button size="mini" type="text" plain @click="dialogForm">鎶ョ己</el-button> - </template> - </el-table-column> - </el-table> - </div> - </el-card> + <!-- <div id="main-div"> --> - </div> - <div id="awatch"> - <img src="../../assets/woshihuancun.png" alt="" style="width: 60%;height: 90%;margin-left: 260px;margin-top: 20px;"> -<div style="width: 100px;height: 10px;background-color: #409EFF;margin-top: -124px;margin-left: 480px;"></div> -<div style="width: 100px;height: 10px;background-color: #409EFF;margin-top: -30px;margin-left: 850px;"></div> -<div style="width: 100px;height: 10px;background-color: #409EFF;margin-top: 30px;margin-left: 695px;"></div> -</div> + + <div id="main-body"> + <router-view /> + </div> + <!-- </div> --> </template> <style scoped> - -#dt { display:block; float:left;line-height: 20px;margin-left: 100px;} -#dta { display:block; float:left;line-height: 20px;margin-left: 80%;} -#dialog-footer{ - text-align: center; - margin-top: -15px; +#main-div{ + width: 100%; + height: 100%; } -#message{ - text-align: center; - align-items: center; - color: black; - width: 200px; - height: 100px; - background-color: #337ecc; - margin-left: 28%; +#div-title{ + height: 2%; + width: 100%; } -#awatch{ - height: 460px; - /* margin-top: -60px; */ +#searchButton{ + margin-top: -5px; + margin-left: 1rem; +} +/* #searchButton1{ +//margin-left: 10rem; +} */ +/*main-body鏍峰紡*/ +#main-body{ + width: 100%; + height: 95%; + /* margin-top: 1%; */ +} +#select{ + margin-left:0.5rem; +} +:deep(.indexTag .el-breadcrumb__inner){ + color: #5CADFE !important; } </style> \ No newline at end of file diff --git a/UI-Project/src/views/Caching/cachingbefore.vue b/UI-Project/src/views/Caching/cachingbefore.vue new file mode 100644 index 0000000..5cf4a38 --- /dev/null +++ b/UI-Project/src/views/Caching/cachingbefore.vue @@ -0,0 +1,249 @@ +<script setup> +import {Search} from "@element-plus/icons-vue"; +import {reactive} from "vue"; +import {useRouter} from "vue-router" +const router = useRouter() +const adda = ref(false) + +import request from "@/utils/request" +import { ref, onMounted } from "vue"; +// import { ref } from 'vue' +import { ElMessage, ElMessageBox } from 'element-plus' +// import LanguageMixin from './lang/LanguageMixin' + +const tableData = ref([]) +const slot = ref('') + + +request.post("/cacheGlass/edgStorageCage/selectEdgStorageCage").then((res) => { + if (res.code == 200) { + + console.log(res.data); + tableData.value = res.data + console.log(res.data[0].slot); + } else { + ElMessage.warning(res.msg) + + } + }); + +// const getTableRow = (row,type) =>{ +// switch (type) { +// case 'delete':{ +// let flowData = ref({ +// id:0, +// slot:row.slot +// }) +// request.post("/cacheGlass/edgStorageCage/edgStorageCageGlass",flowData.value).then((res) => { +// if(res.code==200){ +// ElMessage.success(t('searchOrder.msgDeleteSuccess')) +// router.push({path:'/main/delivery/selectDelivery',query:{random:Math.random()}}) +// }else{ +// ElMessage.warning(res.msg) +// router.push("/login") +// } +// }) + +// return +// } +// } +// } +// let slots = ref({ +// id:0, +// slot: slot.value +// }) +const open = async(row) => { + try { + const confirmResult = await ElMessageBox.confirm( + '鏄惁鍒犻櫎璇ユ潯淇℃伅?', + '鎻愮ず', + { + confirmButtonText: '鏄�', + cancelButtonText: '鍙栨秷', + type: 'warning', + } + ); + if (confirmResult === 'confirm') { + // 鐢ㄦ埛鐐瑰嚮浜嗏�滄槸鈥濓紝鐜板湪璋冪敤鍒犻櫎鎺ュ彛 + const deleteResponse = await request.post("/cacheGlass/edgStorageCage/edgStorageCageGlass", { + id:0, + slot: row.slot + }) + if (response.code == 200) { + // 鍒犻櫎鎴愬姛锛屾偍鍙互鏍规嵁闇�瑕佸鐞嗘垚鍔熺殑鎯呭喌 + alert('鍒犻櫎鎴愬姛锛�'); + } else { + // 鍒犻櫎澶辫触锛屾偍鍙互澶勭悊閿欒鎴栨樉绀洪敊璇俊鎭粰鐢ㄦ埛 + alert('鍒犻櫎澶辫触锛�' + deleteResponse.message); + } + } + } catch (error) { + // 澶勭悊鍙兘鍑虹幇鐨勯敊璇紝姣斿 ElMessageBox 鎶涘嚭鐨勫紓甯哥瓑 + console.error('鍙戠敓閿欒:', error); + } +}; +// const open = () => { +// ElMessageBox.confirm( +// '鏄惁鍒犻櫎璇ユ潯淇℃伅?', +// '鎻愮ず', +// { +// confirmButtonText: '鏄�', +// cancelButtonText: '鍙栨秷', +// type: 'warning', +// } +// ) +// .then(() => { +// ElMessage({ +// type: 'success', +// message: '鍒犻櫎鎴愬姛锛�', +// }) +// }) +// .catch(() => { +// ElMessage({ +// type: 'info', +// message: '鍒犻櫎澶辫触', +// }) +// }) +// } +// 鍒犻櫎 +// const handleBindRacka = (row) => { +// adda.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗� +// }; +// // 鍒犻櫎 +// const handleConfirma = async () => { +// try { +// window.localStorage.setItem('slot', res.data.slot) +// let slot = window.localStorage.getItem('slot') +// const response = await request.post('/cacheGlass/edgStorageCage/edgStorageCageGlass', { +// slot: slot.value, +// id: 0 +// }); + +// if (response.code == 200) { +// // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫 +// ElMessage.success(response.message); +// adda.value = false; +// } else { +// // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭� +// ElMessage.error(response.msg); +// } +// } catch (error) { +// // 澶勭悊閿欒 +// console.error(error); +// } +// }; + +const gridOptions = reactive({ + border: "full",//琛ㄦ牸鍔犺竟妗� + keepSource: true,//淇濇寔婧愭暟鎹� + align: 'center',//鏂囧瓧灞呬腑 + stripe:true,//鏂戦┈绾� + rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒 + id: 'OrderList', + showFooter: true,//鏄剧ず鑴� + printConfig: {}, + importConfig: {}, + exportConfig: {}, + scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔� + showOverflow:true, + columnConfig: { + resizable: true, + useKey: true + }, + filterConfig: { //绛涢�夐厤缃」 + remote: true + }, + customConfig: { + storage: true + }, + editConfig: { + trigger: 'click', + mode: 'row', + showStatus: true + }, + data: [ + { + 'id': '1', + 'long': '5', + 'wide': '1005', + 'thick': '183.6', + } + ] + +}) + + + +</script> + +<template> + <div> + <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" v-loading="loading"> + <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;"> + <el-table height="240" ref="table" + @selection-change="handleSelectionChange" + :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> + <el-table-column prop="slot" align="center" label="鏍呮牸鍙�" min-width="80" /> + <el-table-column prop="glass_id" align="center" label="鐜荤拑缂栧彿" min-width="80" /> + <el-table-column prop="width" align="center" label="瀹�" min-width="120" /> + <el-table-column prop="height" align="center" label="楂�" min-width="120" /> + <el-table-column + align="center" + label="鍚敤鐘舵��" + min-width="80" + prop="enable_state" + > + <template #default="scope"> + <el-tag type="success" >{{ scope.row.enable_state==1?"鍚敤":"鏈惎鐢�" }}</el-tag> + </template> + </el-table-column> + <el-table-column fixed="right" label="鎿嶄綔" align="center" width="200"> + <template #default="scope"> + <!-- <el-button size="mini" type="text" plain @click="handleBindRacka(scope.row)">鎶ョ己</el-button> --> + <el-button size="mini" type="text" plain @click="open(scope.row)">鎶ョ己</el-button> + </template> + </el-table-column> + </el-table> + </div> + </el-card> + <!-- <el-dialog v-model="adda" top="30vh" width="25%" title="鏄惁鍒犻櫎璇ユ潯淇℃伅?" > + <template #footer> + <div id="dialog-footer"> + <el-button type="primary" @click="handleConfirma"> + 纭 + </el-button> + <el-button @click="adda = false">鍙栨秷</el-button> + </div> + </template> + </el-dialog> --> + </div> + <div id="awatch"> + <img src="../../assets/woshihuancun.png" alt="" style="width: 60%;height: 90%;margin-left: 260px;margin-top: 20px;"> +<div style="width: 100px;height: 10px;background-color: #409EFF;margin-top: -124px;margin-left: 480px;"></div> +<div style="width: 100px;height: 10px;background-color: #409EFF;margin-top: -30px;margin-left: 850px;"></div> +<div style="width: 100px;height: 10px;background-color: #409EFF;margin-top: 30px;margin-left: 695px;"></div> +</div> +</template> + +<style scoped> + +#dt { display:block; float:left;line-height: 20px;margin-left: 100px;} +#dta { display:block; float:left;line-height: 20px;margin-left: 80%;} +#dialog-footer{ + text-align: center; + margin-top: -15px; +} +#message{ + text-align: center; + align-items: center; + color: black; + width: 200px; + height: 100px; + background-color: #337ecc; + margin-left: 28%; +} +#awatch{ + height: 460px; + /* margin-top: -60px; */ +} +</style> \ No newline at end of file diff --git a/UI-Project/src/views/Caching/cachingun.vue b/UI-Project/src/views/Caching/cachingun.vue new file mode 100644 index 0000000..7ed5e6a --- /dev/null +++ b/UI-Project/src/views/Caching/cachingun.vue @@ -0,0 +1,196 @@ +<script setup> +import {Search} from "@element-plus/icons-vue"; +import {reactive} from "vue"; +import {useRouter} from "vue-router" +const router = useRouter() + +import request from "@/utils/request" +import { ref, onMounted } from "vue"; +// import { ref } from 'vue' +import { ElMessage, ElMessageBox } from 'element-plus' +// import LanguageMixin from './lang/LanguageMixin' + +const tableData = ref([]) + +// 鍙戦�佽幏鍙栬〃鏍兼暟鎹殑璇锋眰 +// const fetchTableData = async () => { +// try { +// // 鍙戦�佽幏鍙栬〃鏍兼暟鎹殑璇锋眰锛屽苟绛夊緟鍝嶅簲 +// // const response = await request.post("/loadGlass/optimizeProject/listByState", requestData); +// const response = await request.get("unLoadGlass/downStorage/selectStorageCage"); + +// // 妫�鏌ュ搷搴旂姸鎬� +// if (response.code === 200) { +// // 鏇存柊琛ㄦ牸鏁版嵁 +// console.log('鎴愬姛鑾峰彇琛ㄦ牸鏁版嵁:', response.data); +// tableData.splice(0, tableData.length, ...response.data); +// } else { +// // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭� +// ElMessage.error(response.msg); +// } +// } catch (error) { +// // 澶勭悊璇锋眰澶辫触鐨勬儏鍐� +// ElMessage.error('鑾峰彇琛ㄦ牸鏁版嵁澶辫触锛岃閲嶈瘯'); +// } +// }; +// onMounted(fetchTableData); + + + +request.get("unLoadGlass/downStorage/selectStorageCage").then((res) => { + if (res.code == 200) { + console.log(res.data); + tableData.value = res.data + } else { + ElMessage.warning(res.msg) + + } + }); + +const dialogForm = () => { + ElMessageBox.confirm( + '鏄惁鎶ョ己?', + '鎻愮ず', + { + confirmButtonText: '鏄�', + cancelButtonText: '鍙栨秷', + type: 'warning', + } + ) + .then(() => { + // this.boxa = true + // this.box = false + + }) +} +const open = () => { + ElMessageBox.confirm( + '鏄惁鍒犻櫎璇ユ潯淇℃伅?', + '鎻愮ず', + { + confirmButtonText: '鏄�', + cancelButtonText: '鍙栨秷', + type: 'warning', + } + ) + .then(() => { + ElMessage({ + type: 'success', + message: '鍒犻櫎鎴愬姛锛�', + }) + }) + .catch(() => { + ElMessage({ + type: 'info', + message: '鍒犻櫎澶辫触', + }) + }) +} +const getTableRow = (row,type) =>{ + switch (type) { + case 'edit' :{ + //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅') + router.push({path: '/main/returns/createReturns', query: { ReturnID: 'TH24010101' }}) + break + } + case 'delete':{ + alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅') + break + } + } +} + +const gridOptions = reactive({ + border: "full",//琛ㄦ牸鍔犺竟妗� + keepSource: true,//淇濇寔婧愭暟鎹� + align: 'center',//鏂囧瓧灞呬腑 + stripe:true,//鏂戦┈绾� + rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒 + id: 'OrderList', + showFooter: true,//鏄剧ず鑴� + printConfig: {}, + importConfig: {}, + exportConfig: {}, + scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔� + showOverflow:true, + columnConfig: { + resizable: true, + useKey: true + }, + filterConfig: { //绛涢�夐厤缃」 + remote: true + }, + customConfig: { + storage: true + }, + editConfig: { + trigger: 'click', + mode: 'row', + showStatus: true + }, + data: [ + { + 'id': '1', + 'long': '5', + 'wide': '1005', + 'thick': '183.6', + } + ] + +}) + + + +</script> + +<template> + <div> + <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" v-loading="loading"> + <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;"> + <el-table height="240" ref="table" + @selection-change="handleSelectionChange" + :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> + <el-table-column prop="id" align="center" label="鐜荤拑ID" min-width="80" /> + <el-table-column prop="sequence" align="center" label="浣嶇疆" min-width="120" /> + <el-table-column prop="width" align="center" label="瀹�" min-width="120" /> + <el-table-column prop="height" align="center" label="闀�" min-width="120" /> + <el-table-column fixed="right" label="鎿嶄綔" align="center" width="200"> + <template #default> + <el-button size="mini" type="text" plain @click="dialogForm">鎶ョ己</el-button> + </template> + </el-table-column> + </el-table> + </div> + </el-card> + + </div> + <div id="awatch"> + <img src="../../assets/woshihuancun.png" alt="" style="width: 60%;height: 90%;margin-left: 260px;margin-top: 20px;"> +<div style="width: 100px;height: 10px;background-color: #409EFF;margin-top: -124px;margin-left: 480px;"></div> +<div style="width: 100px;height: 10px;background-color: #409EFF;margin-top: -30px;margin-left: 850px;"></div> +<div style="width: 100px;height: 10px;background-color: #409EFF;margin-top: 30px;margin-left: 695px;"></div> +</div> +</template> + +<style scoped> + +#dt { display:block; float:left;line-height: 20px;margin-left: 100px;} +#dta { display:block; float:left;line-height: 20px;margin-left: 80%;} +#dialog-footer{ + text-align: center; + margin-top: -15px; +} +#message{ + text-align: center; + align-items: center; + color: black; + width: 200px; + height: 100px; + background-color: #337ecc; + margin-left: 28%; +} +#awatch{ + height: 460px; + /* margin-top: -60px; */ +} +</style> \ No newline at end of file diff --git a/UI-Project/src/views/Identify/identify.vue b/UI-Project/src/views/Identify/identify.vue index d2babdd..30fe865 100644 --- a/UI-Project/src/views/Identify/identify.vue +++ b/UI-Project/src/views/Identify/identify.vue @@ -1,234 +1,106 @@ -<template> - <el-card style="margin-left: 10px; margin-top: 10px; margin-right: 10px;" v-loading="loading"> - <div style="display: flex;"> - <div style="margin-left: 400px; font-size: 20px;">宸ョ▼鍙凤細P20240305001 </div> - <div style="margin-left: 150px; font-size: 20px;">鐗堝浘缂栧彿锛�1</div> - </div> - <svg width="100%" height="690" xmlns="http://www.w3.org/2000/svg" style="margin-top: -40px;"> - <defs> - <marker id="arrow" markerUnits="strokeWidth" markerWidth="12" markerHeight="12" viewBox="0 0 12 12" refX="6" - refY="6" orient="auto"> - <path d="M2,2 L10,6 L2,10 L2,2" style="fill: #911005;" /> - </marker> - </defs> - <!-- <el-scrollbar height="630px"> - <div id="home-card"> - <div id="home-item" v-for="n in 20" :key="n"> - <div id="box" style="width: 100px;height: 165px;">100*65</div> - <div id="box" style="width: 107px;height: 150px;">107*60</div> - <div id="box" style="width: 107px;height: 155px;">109*60</div> - </div> - </div> - </el-scrollbar> --> - <g v-for="(rack, index) in racks" :key="index"> - <rect - :x="rack.x" - :y="rack.y" - :width="rack.width" - :height="rack.height" - :fill="rack.fillColor" - :data-index="index" - class="rack-rect" - style="stroke:#c8c9cc;stroke-width:3;" - @click="showRectInfo(rack)" - /> - <line x1='510' y1='309' x2='260' y2='310' stroke='#911005' stroke-width='2' marker-end='url(#arrow)'> - </line> - <line x1='850' y1='309' x2='1100' y2='310' stroke='#911005' stroke-width='2' marker-end='url(#arrow)'> - </line> - <line x1='510' y1='409' x2='260' y2='410' stroke='#911005' stroke-width='2' marker-end='url(#arrow)'> - </line> - <line x1='1200' y1='650' x2='1200' y2='470' stroke='#911005' stroke-width='2' marker-end='url(#arrow)'> - </line> - <text x="370" y="240" dominant-baseline="middle" text-anchor="middle">NG2024030501A-01</text> - <text x="370" y="260" dominant-baseline="middle" text-anchor="middle">500*300</text> - - <text x="970" y="240" dominant-baseline="middle" text-anchor="middle">NG2024030501A-02</text> - <text x="970" y="260" dominant-baseline="middle" text-anchor="middle">500*300</text> - - <text x="600" y="500" dominant-baseline="middle" text-anchor="middle">NG2024030501A-03</text> - <text x="600" y="520" dominant-baseline="middle" text-anchor="middle">800*450</text> - - - <text x="1280" y="520" dominant-baseline="middle" text-anchor="middle">NG2024030501A-04</text> - <text x="1280" y="540" dominant-baseline="middle" text-anchor="middle">400*300</text> - <g v-for="(item, itemIndex) in rack.items" :key="itemIndex"> - <rect - :x="calculateItemXPosition(rack, item, itemIndex)" - :y="calculateItemYPosition(rack, item, itemIndex)" - :width="item.width" - :height="item.height" - :fill="item.fillColor" - /> - </g> - </g> - </svg> - </el-card> -</template> - -<script> -import Swal from 'sweetalert2' -import request from "@/utils/request"; - - -request.get("/TidyUpGlassModule/CurrentCutTerritory").then((res) => { - if (res.code == 200) { - console.log(res.data); - } else { - ElMessage.warning(res.msg) - router.push("/login") - } - }); - -export default { - data() { - return { - loading: false, - racks: [ - { - x: 70, y: 126, width: 600, height: 240, fillColor: '#93d2f3', - items: [ - { position: 'top-left', width: 40, height: 30, fillColor: '#ffffff', content: 'NG123456',y: '20'}, - { position: 'bottom-left', width: 40, height: 30, fillColor: '#ffffff', content: 'NG1234567' }, - { position: 'bottom-right', width: 40, height: 30, fillColor: '#ffffff', content: 'NG12345678' } - ] - }, - { - x: 685, y: 126, width: 600, height: 240, fillColor: '#93d2f3', - items: [ - { position: 'bottom-left', width: 40, height: 30, fillColor: '#ffffff', content: 'NG123456' }, - { position: 'bottom-right', width: 40, height: 30, fillColor: '#ffffff', content: 'NG123456' }, - { position: 'top-right', width: 40, height: 30, fillColor: '#ffffff', content: 'NG1234567' } - ] - }, - { - x: 70, y: 380, width: 1100, height: 260, fillColor: '#81b337', - items: [ - { position: 'top-left', width: 40, height: 30, fillColor: '#ffffff', content: 'NG123456' }, - { position: 'bottom-right', width: 40, height: 30, fillColor: '#ffffff', content: 'NG123456' }, - { position: 'top-right', width: 40, height: 30, fillColor: '#ffffff', content: 'NG1234567' } - ] - }, - { - x: 1185, y: 380, width: 200, height: 300,fillColor: '#81b337', - items: [ - { position: 'bottom-right', width: 40, height: 30, fillColor: '#ffffff', content: 'NG123456' }, - { position: 'top-right',width: 40, height: 30, fillColor: '#ffffff', content: 'NG123456' }, - { position: 'top-left', width: 40, height: 30, fillColor: '#ffffff', content: 'NG1234567' }, - ] - } - - // Add more racks and items here as needed - ], - }; - }, +<template> +<!-- <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" v-loading="loading"> --> + <div id="app" style="margin-top: 20px;"> + <div + :style="{ width: `${olWidth}px`, height: `${olHeight}px`,position: 'relative' }" + > + <div + v-for="(rect, index) in adjustedRects" + :key="index" + class="rect" + :style="{ position: 'absolute', top: `${rect.y_axis}px`, left: `${rect.x_axis}px`, width: `${rect.width}px`, height: `${rect.height}px` }" + > + <!-- 绠ご --> + <div id="arrow"></div> + <div id="line"></div> + <!-- <div class="centered-text" >NG24030401B01</div> --> + <div class="centered-text"> + <div>{{ rect.process_id }}</div> + <div style="margin-top: 50px;margin-left: -85px;">{{ rect.width }}*{{ rect.height }}</div> + </div> + </div> + </div> + </div> +</template> - methods: { - calculateItemXPosition(rack, item, index) { - if (item.position === 'top-right' || item.position === 'bottom-right') { - return Math.min(rack.x + rack.width - item.width, rack.x + rack.width); - } else { - return rack.x; - } - }, - - calculateItemYPosition(rack, item, index) { - if (item.position === 'bottom-left' || item.position === 'bottom-right') { - return Math.min(rack.y + rack.height - item.height, rack.y + rack.height); - } else { - return rack.y; - } - }, - - showCustomAlert(content) { - Swal.fire({ - // type: 'warning', // 寮规绫诲瀷 - title: '璇ョ墖鐜荤拑鐘舵��', //鏍囬 - // text: "娉ㄩ攢鍚庡皢鏃犳硶鎭㈠锛岃璋ㄦ厧鎿嶄綔锛�", //鏄剧ず鍐呭 +<script setup> +import { ref, onMounted } from 'vue'; +import request from "@/utils/request" +const olWidth = ref(); +const olHeight = ref(); +const process_id = ref(); // 鐢ㄤ簬瀛樺偍process_id鐨勫搷搴斿紡寮曠敤 +// const rects = ref([]); // 鐢ㄤ簬瀛樺偍鐭╁舰鏁版嵁鐨勫搷搴斿紡寮曠敤 +const adjustedRects = ref([]); +onMounted(async () => { + try { + const response = await request.post('/cacheGlass/taskCache/currentCutTerritory'); // 鏇挎崲涓轰綘鐨凙PI绔偣 + if (response.code === 200) { + // const process_id = response.data[0].process_id + const rawRects = response.data; // 璁剧疆鐭╁舰鏁版嵁 + console.log(response.data); + const { olWidth: newolWidth, olHeight: newolHeight, process_id: newprocess_id } = response.data; // 鑾峰彇灏哄 + olWidth.value = newolWidth; // 璁剧疆瀹瑰櫒瀹藉害 + olHeight.value = newolHeight; // 璁剧疆瀹瑰櫒楂樺害 + process_id.value = newprocess_id; - confirmButtonColor: '#3085d6',// 纭畾鎸夐挳鐨� 棰滆壊 - confirmButtonText: '浜哄伐鎷胯蛋',// 纭畾鎸夐挳鐨� 鏂囧瓧 - showCancelButton: true, // 鏄惁鏄剧ず鍙栨秷鎸夐挳 - cancelButtonColor: '#d33', // 鍙栨秷鎸夐挳鐨� 棰滆壊 - cancelButtonText: "鐮存崯", // 鍙栨秷鎸夐挳鐨� 鏂囧瓧 + adjustedRects.value = rawRects.map(rect => ({ + ...rect, // 澶嶅埗鍘熷瀵硅薄鐨勫叾浠栧睘鎬� + x_axis: (rect.x_axis*100) * 0.005, // 灏唜鍊奸櫎浠�3 + y_axis: (rect.y_axis*100) * 0.005, + width: (rect.width*100) * 0.004 , + height:( rect.height*100) * 0.004 , + })); + console.log(rect); - // focusCancel: true, // 鏄惁鑱氱劍 鍙栨秷鎸夐挳 - reverseButtons: true // 鏄惁 鍙嶈浆 涓や釜鎸夐挳鐨勪綅缃� 榛樿鏄� 宸﹁竟 纭畾 鍙宠竟 鍙栨秷 -}).then((isConfirm) => { - try { - //鍒ゆ柇 鏄惁 鐐瑰嚮鐨� 纭畾鎸夐挳 - if (isConfirm.value) { - Swal.fire("浜哄伐鎷胯蛋", "鐐瑰嚮浜嗕汉宸ユ嬁璧�", "success"); - } - else { - Swal.fire("鐮存崯", "鐐瑰嚮浜嗙牬鎹�", "error"); - } - } catch (e) { - alert(e); - } -}); - }, - - showRectInfo(rectInfo) { - const contents = rectInfo.items.map(item => item.content).join(', '); - this.$nextTick(() => { - this.showCustomAlert(contents); - }); - }, - } -}; -</script> + // console.log( (rect.width*100) / 300 ); + } else { + // console.error('Failed to fetch rectangles from API.'); + console.error('Failed to fetch rects from API.'); + } + } catch (error) { + // console.error('Error fetching rectangles :', error); + console.error('Error fetching rects :', error); + } +}); +</script> + +<style scoped> +.rect { + border: 1px solid black; /* 璁剧疆鐭╁舰鐨勮竟妗� */ + background-color: lightblue; /* 璁剧疆鐭╁舰鐨勮儗鏅壊 */ +} +.centered-text { + /* 璁剧疆鏂囧瓧灞呬腑鏍峰紡 */ + display: flex; + justify-content: center; + align-items: center; + height: 100%; /* 纭繚div鍗犳嵁鏁翠釜鐭╁舰鐨勯珮搴� */ +} +#rect { + position: relative; /* 纭繚绠ご鍙互鐩稿浜庣煩褰㈠畾浣� */ + /* 鍏朵粬鏍峰紡 */ +} -<style scoped> -.glass-rack { - width: 100%; - height: 80vh; -} -.rack-rect:hover { - cursor: pointer; -} -.custom-popover-class { - background-color: lightgrey; - color: black; - border: 1px solid black; -} - -#home-card { - width: 100%; - overflow: hidden; - padding: 10px 0px; - display: flex; - flex-wrap: wrap; - #home-item { - border-style: solid; - border-width: 1px; - border-color: #E4E4E4; - width: calc(34% - 20px); - padding: 20px 0px 20px 20px; - margin-right: 10px; - margin-bottom: 10px; - display: flex; - justify-content: center; - /* align-items: center; */ - background: #fff; - #home-img { - display: inline-block; - width: 160px; - height: 60px; - margin: 0; - padding: 0; - } - #home-right { - display: flex; - flex-direction: column; - justify-content: center; - align-items: flex-start; - margin-left: 10px; - #home-num { - font-size: 40px; - margin: 5px 0; - } - } - } - } -</style> +#arrow { + position: absolute; + top: 70%; /* 绠ご浣嶄簬鐭╁舰涓棿 */ + left: 200px; /* 绠ご鍦ㄧ煩褰㈠乏渚т竴浜涜窛绂� */ + transform: translateY(-50%); /* 鍨傜洿灞呬腑 */ + width: 0; + height: 0; + border-top: 10px solid transparent; /* 涓婅竟妗� */ + border-bottom: 10px solid transparent; /* 涓嬭竟妗� */ + border-right: 20px solid #911005; /* 鍙宠竟妗嗭紝褰㈡垚绠ご */ + /* 鏍规嵁闇�瑕佽皟鏁磋竟妗嗗ぇ灏忓拰棰滆壊 */ +} + +#line { + position: absolute; + top: 70%; /* 鐩寸嚎浣嶄簬鐭╁舰涓棿 */ + left: 210px; /* 鐩寸嚎鍦ㄧ澶村彸渚т竴浜涜窛绂� */ + transform: translateY(-50%); /* 鍨傜洿灞呬腑 */ + height: 2px; /* 鐩寸嚎鐨勯珮搴� */ + width: 240px; /* 鐩寸嚎鐨勯暱搴︼紝鏍规嵁闇�瑕佽皟鏁� */ + background-color: #911005; /* 鐩寸嚎鐨勯鑹� */ +} +</style> \ No newline at end of file diff --git a/UI-Project/src/views/LoginView.vue b/UI-Project/src/views/LoginView.vue index 70fd9e6..366ed5a 100644 --- a/UI-Project/src/views/LoginView.vue +++ b/UI-Project/src/views/LoginView.vue @@ -48,7 +48,8 @@ if (valid) { loginLoadings.value = true request - .post('/loadGlass/userinfo/login', userForm) + // .post('/loadGlass/userinfo/login', userForm) + .post('/loadGlass/sys/user/login', userForm) .then((res) => { if (res['code'] == 200) { store.$patch({user: res.data}) @@ -58,12 +59,18 @@ ElMessage.success(`鐧诲綍鎴愬姛`) } else { ElMessage.error(res['msg']) + store.$patch({ + user: null, + }) loginLoadings.value = false return false } }) .catch((error) => { ElMessage.error('鏈嶅姟鍣ㄨ繛鎺ュけ璐�') + store.$patch({ + user: null, + }) loginLoadings.value = false return false }) diff --git a/UI-Project/src/views/PurchaseReturn/purchaseReturn.vue b/UI-Project/src/views/PurchaseReturn/purchaseReturn.vue index 63dbe54..b389719 100644 --- a/UI-Project/src/views/PurchaseReturn/purchaseReturn.vue +++ b/UI-Project/src/views/PurchaseReturn/purchaseReturn.vue @@ -2,26 +2,110 @@ import {Search} from "@element-plus/icons-vue"; import {reactive} from "vue"; import {useRouter} from "vue-router" +import request from "@/utils/request" -import { ref } from 'vue' +import { ref, onMounted } from 'vue'; +// import { ref } from 'vue' const dialogFormVisible = ref(true) const dialogFormVisiblea = ref(false) +const dialogFormVisibleb = ref(false) +const width = ref(); // 鐢ㄤ簬瀛樺偍process_id鐨勫搷搴斿紡寮曠敤 +const height = ref(); // 鐢ㄤ簬瀛樺偍process_id鐨勫搷搴斿紡寮曠敤 +const adjustedRects = ref([]); +const adjustedRectsa = ref([]); +const adjustedRectsb = ref([]); +// 杩涚倝涓� +onMounted(async () => { + try { + const response = await request.get('/temperingGlass/temperingGlassInfo/SelectIntoGlass'); + if (response.code === 200) { + const rawRects = response.data; // 璁剧疆鐭╁舰鏁版嵁 + console.log(response.data); + const { height: newheight,width: newwidth } = response.data; // 鑾峰彇灏哄 + height.value = newheight; + width.value = newwidth; -const getTableRow = (row,type) =>{ - switch (type) { - case 'edit' :{ - //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅') - router.push({path: '/main/returns/createReturns', query: { ReturnID: 'TH24010101' }}) - break - } - case 'delete':{ - alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅') - break - } - } -} + adjustedRects.value = rawRects.map(rect => ({ + ...rect, // 澶嶅埗鍘熷瀵硅薄鐨勫叾浠栧睘鎬� + xcoordinate: rect.xcoordinate, // 灏唜鍊奸櫎浠�3 + ycoordinate: rect.ycoordinate, + width: rect.width , + height: rect.height , + })); + console.log(rect); + // console.log( (rect.width*100) / 300 ); + } else { + // console.error('Failed to fetch rectangles from API.'); + console.error('Failed to fetch rects from API.'); + } + } catch (error) { + // console.error('Error fetching rectangles :', error); + console.error('Error fetching rects :', error); + } +}); +// 杩涚倝鍓� +const handleConfirm = async () => { + try { + const response = await request.post('/temperingGlass/temperingGlassInfo/SelectWaitingGlass'); + if (response.code === 200) { + const rawRects = response.data; // 璁剧疆鐭╁舰鏁版嵁 + console.log(response.data); + const { height: newheight,width: newwidth } = response.data; // 鑾峰彇灏哄 + height.value = newheight; + width.value = newwidth; + + adjustedRectsa.value = rawRects.map(rect => ({ + ...rect, // 澶嶅埗鍘熷瀵硅薄鐨勫叾浠栧睘鎬� + xcoordinate: rect.xcoordinate, // 灏唜鍊奸櫎浠�3 + ycoordinate: rect.ycoordinate, + width: rect.width , + height: rect.height , + })); + console.log(rect); + + // console.log( (rect.width*100) / 300 ); + } else { + // console.error('Failed to fetch rectangles from API.'); + console.error('Failed to fetch rects from API.'); + } + } catch (error) { + // console.error('Error fetching rectangles :', error); + console.error('Error fetching rects :', error); + } +}; + +// 宸插嚭鐐� +const handleConfirma = async () => { + try { + const response = await request.get('/temperingGlass/temperingGlassInfo/SelectOutGlass'); + if (response.code === 200) { + const rawRects = response.data; // 璁剧疆鐭╁舰鏁版嵁 + console.log(response.data); + const { height: newheight,width: newwidth } = response.data; // 鑾峰彇灏哄 + height.value = newheight; + width.value = newwidth; + + adjustedRectsb.value = rawRects.map(rect => ({ + ...rect, // 澶嶅埗鍘熷瀵硅薄鐨勫叾浠栧睘鎬� + xcoordinate: rect.xcoordinate, // 灏唜鍊奸櫎浠�3 + ycoordinate: rect.ycoordinate, + width: rect.width , + height: rect.height , + })); + console.log(rect); + + // console.log( (rect.width*100) / 300 ); + } else { + // console.error('Failed to fetch rectangles from API.'); + console.error('Failed to fetch rects from API.'); + } + } catch (error) { + // console.error('Error fetching rectangles :', error); + console.error('Error fetching rects :', error); + } +}; const gridOptions = reactive({ border: "full",//琛ㄦ牸鍔犺竟妗� keepSource: true,//淇濇寔婧愭暟鎹� @@ -57,85 +141,70 @@ }) </script> -<template> +<template> <div style="margin-top: 10px;"> - <el-button style="margin-left: 15px;" id="searchButton" type="primary" @click="dialogFormVisible = true;dialogFormVisiblea = false">鎽嗙墖鐗堝浘</el-button> - <el-button id="searchButton" type="success" @click="dialogFormVisiblea = true;dialogFormVisible = false">宸插嚭鐐夌幓鐠�</el-button> + <el-button style="margin-left: 15px;" id="searchButton" type="primary" @click="dialogFormVisible = true;dialogFormVisiblea = false;dialogFormVisibleb = false;">杩涚倝涓�</el-button> + <el-button style="margin-left: 15px;" id="searchButton" type="primary" @click="handleConfirm();dialogFormVisiblea = true;dialogFormVisible = false;dialogFormVisibleb = false;" >杩涚倝鍓�</el-button> + <el-button id="searchButton" type="success" @click="handleConfirma();dialogFormVisibleb = true;dialogFormVisible = false;dialogFormVisiblea = false">宸插嚭鐐夌幓鐠�</el-button> <div v-if="dialogFormVisible" > - <el-card style="margin-left: 10px;margin-top: 10px;margin-right: 10px;" v-loading="loading"> - <div style="display: flex;margin-bottom: 20px;"> + <!-- <div style="display: flex;margin-bottom: 20px;"> <div style="margin-left: 450px;font-size: 20px;">宸ョ▼鍙凤細P20240305001 </div> <div style="margin-left: 150px;font-size: 20px;">鐗堝浘缂栧彿锛�1</div> - </div> - <div> - <div id="boxa" style="width: 200px;height: 300px;margin-left: 70px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - <div id="boxa" style="width: 200px;height: 300px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - <div id="boxa" style="width: 200px;height: 300px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - <div id="boxa" style="width: 200px;height: 300px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - <div id="boxa" style="width: 200px;height: 300px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - <div id="boxa" style="width: 200px;height: 300px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - </div> - <div style="margin-top: 20px;"> - <div id="boxa" style="width: 200px;height: 300px;margin-left: 70px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - <div id="boxa" style="width: 200px;height: 300px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - <div id="boxa" style="width: 200px;height: 300px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - <div id="boxa" style="width: 200px;height: 300px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - <div id="boxa" style="width: 200px;height: 300px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - <div id="boxb" style="width: 200px;height: 300px;"> - <div style="margin-top: 35px;"> NG202405060798A01-1</div> - <div> 500脳1000</div> - </div> - </div> - </el-card> - </div> -<div v-if="dialogFormVisiblea"> + </div> --> <el-card style="flex: 1;margin-left: 10px;margin-top: 10px;margin-right: 10px;" v-loading="loading"> <el-scrollbar height="630px"> - <div id="home-card"> - <div id="home-item" v-for="n in 20" :key="n"> - <div id="box" style="width: 100px;height: 165px;">100*65</div> - <div id="box" style="width: 107px;height: 150px;">107*60</div> - <div id="box" style="width: 107px;height: 155px;">109*60</div> - </div> + <div style="position: relative;width: 1400px;"> + <div + v-for="(rect, index) in adjustedRects" + :key="index" + class="rect" + :style="{ position: 'absolute', top: `${rect.ycoordinate}px`, left: `${rect.xcoordinate}px`, width: `${rect.width}px`, height: `${rect.height}px` }" + > + <div class="centered-text"> + <div style="margin-top: 50px;margin-left: -85px;">{{ rect.width }}*{{ rect.height }}</div> + </div> + </div> + </div> + </el-scrollbar> + </el-card> </div> - </el-scrollbar> - </el-card> +<div v-if="dialogFormVisiblea"> + <el-card style="flex: 1;margin-left: 10px;margin-top: 10px;margin-right: 10px;" v-loading="loading"> + <el-scrollbar height="630px"> + <div style="position: relative;width: 1400px;"> + <div + v-for="(rect, index) in adjustedRects" + :key="index" + class="rect" + :style="{ position: 'absolute', top: `${rect.ycoordinate}px`, left: `${rect.xcoordinate}px`, width: `${rect.width}px`, height: `${rect.height}px` }" + > + <div class="centered-text"> + <div style="margin-top: 50px;margin-left: -85px;">{{ rect.width }}*{{ rect.height }}</div> + </div> + </div> + </div> + </el-scrollbar> + </el-card> +</div> +<div v-if="dialogFormVisibleb"> + <el-card style="flex: 1;margin-left: 10px;margin-top: 10px;margin-right: 10px;" v-loading="loading"> + <el-scrollbar height="630px"> + <div style="position: relative;width: 1400px;"> + <div + v-for="(rect, index) in adjustedRects" + :key="index" + class="rect" + :style="{ position: 'absolute', top: `${rect.ycoordinate}px`, left: `${rect.xcoordinate}px`, width: `${rect.width}px`, height: `${rect.height}px` }" + > + <div class="centered-text"> + <div style="margin-top: 50px;margin-left: -85px;">{{ rect.width }}*{{ rect.height }}</div> + </div> + </div> + </div> + </el-scrollbar> + </el-card> </div> </div> - </template> <style scoped> @@ -203,4 +272,19 @@ } } } + .rect { + border: 1px solid black; /* 璁剧疆鐭╁舰鐨勮竟妗� */ + background-color: lightblue; /* 璁剧疆鐭╁舰鐨勮儗鏅壊 */ +} +#rect { + position: relative; /* 纭繚绠ご鍙互鐩稿浜庣煩褰㈠畾浣� */ + /* 鍏朵粬鏍峰紡 */ +} +.centered-text { + /* 璁剧疆鏂囧瓧灞呬腑鏍峰紡 */ + display: flex; + justify-content: center; + align-items: center; + height: 100%; /* 纭繚div鍗犳嵁鏁翠釜鐭╁舰鐨勯珮搴� */ +} </style> \ No newline at end of file diff --git a/UI-Project/src/views/Returns/returns.vue b/UI-Project/src/views/Returns/returns.vue index c5550f2..49db7d7 100644 --- a/UI-Project/src/views/Returns/returns.vue +++ b/UI-Project/src/views/Returns/returns.vue @@ -33,11 +33,7 @@ }) const tableDataa = ref([]) - const requestData = { - // projectNo:"P24030805", - state:100 - }; - + const tableData = reactive([]); // let filterData = ref({ // damageDetails: { @@ -88,21 +84,74 @@ processType: [], }) -const getBasicData = ref({ - id: '', - projectNo: '', -}) -request.post("/loadGlass/optimizeProject/listByState", requestData) -.then((res) => { - if (res.code == 200) { - titleSelectJson.value.processType = res.data; - console.log(res.data); - } else { - ElMessage.warning(res.msg) - // router.push("/login") - } - }); - +// const getBasicData = ref({ +// id: '', +// projectNo: '', +// }) +// const requestData = { +// // projectNo:"P24030805", +// state:100 +// }; +// request.post("/loadGlass/optimizeProject/listByState", requestData) +// .then((res) => { +// if (res.code == 200) { +// titleSelectJson.value.processType = res.data; +// console.log(res.data); +// } else { +// ElMessage.warning(res.msg) +// // router.push("/login") +// } +// }); + // 鍒濆璇锋眰鍙傛暟 +const requestData = { + state: 100 +}; +// 鍝嶅簲寮忔暟鎹� +const selectedProjectNo = ref(''); // 褰撳墠閫変腑鐨勫伐绋嬪彿 +const options = ref<any[]>([]); // 涓嬫媺閫夐」鍒楄〃 + +// 璋冪敤鎺ュ彛鑾峰彇閫夐」鏁版嵁鐨勫嚱鏁� +const fetchOptions = async (queryString: string) => { + try { + // 鍙戦�佽姹傚埌鍚庣鎺ュ彛 + const response = await request.post('/loadGlass/optimizeProject/listByState', { + ...requestData, + query: queryString // 灏嗘煡璇㈠瓧绗︿覆浣滀负鍙傛暟浼犻�� + }); + + if (response.code == 200) { + titleSelectJson.value.processType = response.data; + + // titleSelectJson.value.processType = response.data(item => ({ + // // options.value = response.data.data.map(item => ({ + // value: item.projectNo, + // // label: item.id // 鍋囪鍚庣杩斿洖鐨勬暟鎹腑鏈� 瀛楁浣滀负鏄剧ず鏍囩 + // })); + console.log(response.data); + + } else { + ElMessage.warning(response.data); + } + } catch (error) { + console.error('Error fetching options:', error); + } +}; + +// 澶勭悊鐢ㄦ埛杈撳叆鍙樺寲鐨勬柟娉� +const handleInputChange = async (value: string) => { + if (value) { + await fetchOptions(value); + } else { + options.value = []; // 娓呯┖閫夐」鍒楄〃 + } +}; + +// 鍒濆鍖栧姞杞芥暟鎹紙濡傛灉闇�瑕侊級 +onMounted(() => { + // 鍦ㄧ粍浠舵寕杞藉悗璋冪敤 fetchOptions('') 鏉ュ姞杞藉垵濮嬫暟鎹紙濡傛灉闇�瑕侊級 + fetchOptions(''); +}); + // const billall = () => { // request.post("/loadGlass/optimizeProject/listByState", requestData) // .then((res: any) => { @@ -284,7 +333,7 @@ } } onMounted(fetchTableData); - + // const open = () => { // ElMessageBox.confirm( // '鏄惁鍒犻櫎璇ユ潯淇℃伅?', @@ -311,31 +360,31 @@ // 寮�濮嬩笂鐗� const handleBind = (row) => { // engineeringId.value = row.engineeringId; - + blind.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗� }; // 鏆傚仠 const handleBinda = (row) => { // engineeringId.value = row.engineeringId; - + blinda.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗� }; // 鍋滄浠诲姟 const handleBindb = (row) => { // engineeringId.value = row.engineeringId; - + blindb.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗� }; // 娣诲姞 const handleBindRack = (row) => { workstationId.value = row.workstationId; // 鍋囪rackNumber鏄灦鍙峰瓧娈电殑灞炴�у悕 - + add.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗� }; // 鍒犻櫎 const handleBindRacka = (row) => { workstationId.value = row.workstationId; // 鍋囪rackNumber鏄灦鍙峰瓧娈电殑灞炴�у悕 - + adda.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗� }; const gridOptions = reactive({ @@ -547,7 +596,22 @@ <el-dialog v-model="dialogFormVisible" top="24vh" width="30%" title="宸ョ▼" > <div style="margin-left: 50px;margin-bottom: 10px;"> <el-form-item label="宸ョ▼鍙凤細" :required="true"> - <el-select v-model="getBasicData.projectNo" clearable placeholder="璇烽�夋嫨宸ョ▼" style="width: 220px" + <el-select + v-model="selectedProjectNo" + filterable + clearable + placeholder="璇烽�夋嫨宸ョ▼" + style="width: 220px" + @input="handleInputChange" + > + <el-option + v-for="item in titleSelectJson['processType']" + :key="item.id" + :label="item.projectNo" + :value="item.projectNo" + /> + </el-select> + <!-- <el-select v-model="getBasicData.projectNo" clearable placeholder="璇烽�夋嫨宸ョ▼" style="width: 220px" > <el-option v-for="item in titleSelectJson['processType']" @@ -555,7 +619,7 @@ :label="item.projectNo" :value="item.projectNo" /> - </el-select> + </el-select> --> </el-form-item> </div> <template #footer> diff --git a/UI-Project/src/views/Slicecage/slicecage.vue b/UI-Project/src/views/Slicecage/slicecage.vue index edbc674..2538c4e 100644 --- a/UI-Project/src/views/Slicecage/slicecage.vue +++ b/UI-Project/src/views/Slicecage/slicecage.vue @@ -1,25 +1,26 @@ <script lang="ts" setup> -import {Search} from "@element-plus/icons-vue"; -import {reactive} from "vue"; -import {useRouter} from "vue-router" +import {reactive, ref} from 'vue' +import {useRouter} from 'vue-router' +import {ElMessage, ElMessageBox} from 'element-plus' + const router = useRouter() -import { ref } from 'vue' -import { ElMessage, ElMessageBox } from 'element-plus' -import { tr } from "element-plus/es/locale"; const dialogFormVisible = ref(false) const dialogFormVisiblea = ref(false) const dialogFormVisibleb = ref(false) -const carposition1 = ref(60); -const carposition2 = ref(200); -const timers1 =ref(true); -const timers2 =ref(true); -const cellshow=ref(false); -const cellshow1=ref(true); -const cellshow2=ref(true); -const million=ref(0); -const million1=ref(0); +const carposition1 = ref(40) +const carposition2 = ref(200) +const timers1 = ref(true) +const timers2 = ref(true) +const cellshow = ref(false) +const cellshow1 = ref(true) +const cellshow2 = ref(true) +const million = ref(0) +const million1 = ref(0) + +const loading = null +const handleSelectionChange = null const currentPage4 = ref(4) const pageSize4 = ref(100) @@ -45,95 +46,87 @@ e: '1', f: '100*100', g: '', - } + }, ] const dialogForm = () => { - ElMessageBox.confirm( - '纭畾瑕佹�ュ仠鍚�?', - '鎻愮ず', - { - confirmButtonText: '鏄�', - cancelButtonText: '鍚�', - type: 'warning', - } - ) - .then(() => { - ElMessage({ - type: 'success', - message: '鎬ュ仠鎴愬姛锛�', + ElMessageBox.confirm('纭畾瑕佹�ュ仠鍚�?', '鎻愮ず', { + confirmButtonText: '鏄�', + cancelButtonText: '鍚�', + type: 'warning', + }) + .then(() => { + ElMessage({ + type: 'success', + message: '鎬ュ仠鎴愬姛锛�', + }) }) - }) - .catch(() => { - ElMessage({ - type: 'info', - message: '鎬ュ仠澶辫触', + .catch(() => { + ElMessage({ + type: 'info', + message: '鎬ュ仠澶辫触', }) }) } - var timer=setInterval(() => { - console.log(million.value,million1.value); - million.value+=1; - if(million.value-million1.value!==12){ - - if(million.value-million1.value>=2){ - if(carposition1.value==200){ - timers1.value=false; - }else if(carposition1.value==60){ - timers1.value=true; - } - if(timers1.value==true){ - carposition1.value=carposition1.value+14; - }else{ - carposition1.value=carposition1.value-14; - } +var timer = setInterval(() => { + console.log(million.value, million1.value) + million.value += 1 + if (million.value - million1.value !== 12) { + if (million.value - million1.value >= 2) { + if (carposition1.value == 200) { + timers1.value = false + } else if (carposition1.value == 40) { + timers1.value = true + } + if (timers1.value == true) { + carposition1.value = carposition1.value + 16 + } else { + carposition1.value = carposition1.value - 16 + } - - if(carposition2.value==200){ - timers2.value=false; - }else if(carposition2.value==60){ - timers2.value=true; - } - if(timers2.value==true){ - carposition2.value+=14; - }else{ - carposition2.value-=14; - } - }else{ - + if (carposition2.value == 200) { + timers2.value = false + } else if (carposition2.value == 40) { + timers2.value = true } - }else{ - million1.value=million.value; - if(cellshow.value==true){ - cellshow.value=false; - - }else{ - cellshow.value=true; - + if (timers2.value == true) { + carposition2.value += 16 + } else { + carposition2.value -= 16 } - if(cellshow1.value==true){ - cellshow1.value=false; - }else{ - cellshow1.value=true; - } - if(cellshow2.value==true){ - cellshow2.value=false; - }else{ - cellshow2.value=true; - } + } else { } - - }, 1000); + } else { + million1.value = million.value + if (cellshow.value == true) { + cellshow.value = false + } else { + cellshow.value = true + } + if (cellshow1.value == true) { + cellshow1.value = false + } else { + cellshow1.value = true + } + if (cellshow2.value == true) { + cellshow2.value = false + } else { + cellshow2.value = true + } + } +}, 100000) - -const getTableRow = (row,type) =>{ +const getTableRow = (row, type) => { switch (type) { - case 'edit' :{ + case 'edit': { //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅') - router.push({path: '/main/returns/createReturns', query: { ReturnID: 'TH24010101' }}) + router.push({ + path: '/main/returns/createReturns', + query: {ReturnID: 'TH24010101'}, + }) break } - case 'delete':{ + case 'delete': { alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅') break } @@ -141,40 +134,41 @@ } const gridOptions = reactive({ - border: "full",//琛ㄦ牸鍔犺竟妗� - keepSource: true,//淇濇寔婧愭暟鎹� - align: 'center',//鏂囧瓧灞呬腑 - stripe:true,//鏂戦┈绾� - rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒 + border: 'full', //琛ㄦ牸鍔犺竟妗� + keepSource: true, //淇濇寔婧愭暟鎹� + align: 'center', //鏂囧瓧灞呬腑 + stripe: true, //鏂戦┈绾� + rowConfig: {isCurrent: true, isHover: true, height: 50}, //榧犳爣绉诲姩鎴栭�夋嫨楂樹寒 id: 'OrderList', - showFooter: true,//鏄剧ず鑴� + showFooter: true, //鏄剧ず鑴� printConfig: {}, importConfig: {}, exportConfig: {}, - scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔� - showOverflow:true, + scrollY: {enabled: true}, //寮�鍚櫄鎷熸粴鍔� + showOverflow: true, columnConfig: { resizable: true, - useKey: true + useKey: true, }, - filterConfig: { //绛涢�夐厤缃」 - remote: true + filterConfig: { + //绛涢�夐厤缃」 + remote: true, }, customConfig: { - storage: true + storage: true, }, editConfig: { trigger: 'click', mode: 'row', - showStatus: true + showStatus: true, }, - data: [ + data: [ { - 'id': '1', - 'long': '5', - 'wide': '1005', - 'thick': '183.6', - } + id: '1', + long: '5', + wide: '1005', + thick: '183.6', + }, ], }) </script> @@ -182,130 +176,208 @@ <template> <div style="height: 700px;"> <!-- <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="primary" @click="dialogFormVisible = true">鎵嬪姩杩涚墖</el-button> --> - <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="primary" @click="dialogFormVisiblea = true">璁㈠崟淇℃伅</el-button> - <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="success" @click="dialogFormVisibleb = true">鍑虹墖闃熷垪</el-button> - <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="danger">缁堟杩涚墖</el-button> - <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="danger">缁堟鍑虹墖</el-button> - <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="danger" @click="dialogForm">杞�ュ仠</el-button> - - <el-card style="flex: 1;margin-left: 10px;margin-top: 5px;" v-loading="loading"> + <el-button style="margin-top: 5px;margin-left: 10px;" + id="searchButton" + type="primary" + @click="dialogFormVisiblea = true">璁㈠崟淇℃伅 + </el-button> + <el-button style="margin-top: 5px;margin-left: 10px;" + id="searchButton" + type="success" + @click="dialogFormVisibleb = true">鍑虹墖闃熷垪 + </el-button> + <el-button style="margin-top: 5px;margin-left: 10px;" + id="searchButton" + type="danger">缁堟杩涚墖 + </el-button> + <el-button style="margin-top: 5px;margin-left: 10px;" + id="searchButton" + type="danger">缁堟鍑虹墖 + </el-button> + <el-button style="margin-top: 5px;margin-left: 10px;" + id="searchButton" + type="danger" + @click="dialogForm">杞�ュ仠 + </el-button> + + <el-card style="flex: 1;margin-left: 10px;margin-top: 5px;" + v-loading="loading"> <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;max-height: 100px;"> - <el-table height="100%" ref="table" - @selection-change="handleSelectionChange" - :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> - <el-table-column prop="id" align="center" label="鍑虹墖鐜荤拑ID" min-width="80" /> - <el-table-column prop="a" align="center" label="绗煎瓙" min-width="120" /> - <el-table-column prop="b" align="center" label="鏍煎瓙" min-width="120" /> - <el-table-column prop="c" align="center" label="宸ョ▼鍙�" min-width="120" /> - <el-table-column prop="d" align="center" label="娴佺▼鍗″彿" min-width="120" /> - <el-table-column prop="e" align="center" label="閽㈠寲鐗堝浘鍙�" min-width="157" /> - <el-table-column prop="f" align="center" label="灏哄" min-width="120" /> - <el-table-column prop="g" align="center" label="缁撴潫浠诲姟" min-width="120"> - <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="text">瀹屾垚浠诲姟</el-button> -</el-table-column> + <el-table height="100%" + ref="table" + @selection-change="handleSelectionChange" + :data="tableData" + :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> + <el-table-column prop="id" + align="center" + label="鍑虹墖鐜荤拑ID" + min-width="80"/> + <el-table-column prop="a" + align="center" + label="绗煎瓙" + min-width="120"/> + <el-table-column prop="b" + align="center" + label="鏍煎瓙" + min-width="120"/> + <el-table-column prop="c" + align="center" + label="宸ョ▼鍙�" + min-width="120"/> + <el-table-column prop="d" + align="center" + label="娴佺▼鍗″彿" + min-width="120"/> + <el-table-column prop="e" + align="center" + label="閽㈠寲鐗堝浘鍙�" + min-width="157"/> + <el-table-column prop="f" + align="center" + label="灏哄" + min-width="120"/> + <el-table-column prop="g" + align="center" + label="缁撴潫浠诲姟" + min-width="120"> + <el-button style="margin-top: 5px;margin-left: 10px;" + id="searchButton" + type="text">瀹屾垚浠诲姟 + </el-button> + </el-table-column> </el-table> </div> </el-card> - <el-card style="flex: 1;margin-left: 10px;margin-top: 3px;" v-loading="loading"> + <el-card style="flex: 1;margin-left: 10px;margin-top: 3px;" + v-loading="loading"> <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;max-height: 100px;"> - <el-table height="100%" ref="table" - @selection-change="handleSelectionChange" - :data="tableDatab" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> - <el-table-column prop="id" align="center" label="杩涚墖鐜荤拑ID" min-width="80" /> - <el-table-column prop="a" align="center" label="绗煎瓙" min-width="120" /> - <el-table-column prop="b" align="center" label="鏍煎瓙" min-width="120" /> - <el-table-column prop="c" align="center" label="宸ョ▼鍙�" min-width="120" /> - <el-table-column prop="d" align="center" label="娴佺▼鍗″彿" min-width="120" /> - <el-table-column prop="e" align="center" label="閽㈠寲鐗堝浘鍙�" min-width="157" /> - <el-table-column prop="f" align="center" label="灏哄" min-width="120" /> - <el-table-column prop="g" align="center" label="缁撴潫浠诲姟" min-width="120"> - <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="text">瀹屾垚浠诲姟</el-button> -</el-table-column> + <el-table height="100%" + ref="table" + @selection-change="handleSelectionChange" + :data="tableDatab" + :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> + <el-table-column prop="id" + align="center" + label="杩涚墖鐜荤拑ID" + min-width="80"/> + <el-table-column prop="a" + align="center" + label="绗煎瓙" + min-width="120"/> + <el-table-column prop="b" + align="center" + label="鏍煎瓙" + min-width="120"/> + <el-table-column prop="c" + align="center" + label="宸ョ▼鍙�" + min-width="120"/> + <el-table-column prop="d" + align="center" + label="娴佺▼鍗″彿" + min-width="120"/> + <el-table-column prop="e" + align="center" + label="閽㈠寲鐗堝浘鍙�" + min-width="157"/> + <el-table-column prop="f" + align="center" + label="灏哄" + min-width="120"/> + <el-table-column prop="g" + align="center" + label="缁撴潫浠诲姟" + min-width="120"> + <el-button style="margin-top: 5px;margin-left: 10px;" + id="searchButton" + type="text">瀹屾垚浠诲姟 + </el-button> + </el-table-column> </el-table> </div> </el-card> <div style="padding: 10px;display: flex;height:110px;"> - <div id="occupy"> - <el-col style="text-align:left;font-weight: bold;">#1</el-col> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> - </el-col> - <hr style="width:80%;margin: 0 auto;" /> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> - </el-col> - </div> - <div id="occupy"> - <el-col style="text-align:left;font-weight: bold;">#2</el-col> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> - </el-col> - <hr style="width:80%;margin: 0 auto;" /> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> - </el-col> - </div> - <div id="occupy"> - <el-col style="text-align:left;font-weight: bold;">#3</el-col> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> - </el-col> - <hr style="width:80%;margin: 0 auto;" /> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> - </el-col> - </div> - <div id="occupy"> - <el-col style="text-align:left;font-weight: bold;">#4</el-col> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> - </el-col> - <hr style="width:80%;margin: 0 auto;" /> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> - </el-col> - </div> - <div id="occupy"> - <el-col style="text-align:left;font-weight: bold;">#5</el-col> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> - </el-col> - <hr style="width:80%;margin: 0 auto;" /> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> - </el-col> - </div> - <div id="occupy"> - <el-col style="text-align:left;font-weight: bold;">#6</el-col> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> - </el-col> - <hr style="width:80%;margin: 0 auto;" /> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> - </el-col> - </div> - <div id="occupy"> - <el-col style="text-align:left;font-weight: bold;">#7</el-col> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> - </el-col> - <hr style="width:80%;margin: 0 auto;" /> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> - </el-col> - </div> - <div id="occupy"> - <el-col style="text-align:left;font-weight: bold;">#8</el-col> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> - </el-col> - <hr style="width:80%;margin: 0 auto;" /> - <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> - <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> - </el-col> - </div> - <!-- <div v-for="n in 8" :key="n" id="occupy"> + <div id="occupy"> + <el-col style="text-align:left;font-weight: bold;">#1</el-col> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> + </el-col> + <hr style="width:80%;margin: 0 auto;"/> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> + </el-col> + </div> + <div id="occupy"> + <el-col style="text-align:left;font-weight: bold;">#2</el-col> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> + </el-col> + <hr style="width:80%;margin: 0 auto;"/> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> + </el-col> + </div> + <div id="occupy"> + <el-col style="text-align:left;font-weight: bold;">#3</el-col> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> + </el-col> + <hr style="width:80%;margin: 0 auto;"/> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> + </el-col> + </div> + <div id="occupy"> + <el-col style="text-align:left;font-weight: bold;">#4</el-col> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> + </el-col> + <hr style="width:80%;margin: 0 auto;"/> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> + </el-col> + </div> + <div id="occupy"> + <el-col style="text-align:left;font-weight: bold;">#5</el-col> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> + </el-col> + <hr style="width:80%;margin: 0 auto;"/> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> + </el-col> + </div> + <div id="occupy"> + <el-col style="text-align:left;font-weight: bold;">#6</el-col> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> + </el-col> + <hr style="width:80%;margin: 0 auto;"/> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> + </el-col> + </div> + <div id="occupy"> + <el-col style="text-align:left;font-weight: bold;">#7</el-col> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> + </el-col> + <hr style="width:80%;margin: 0 auto;"/> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> + </el-col> + </div> + <div id="occupy"> + <el-col style="text-align:left;font-weight: bold;">#8</el-col> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> + </el-col> + <hr style="width:80%;margin: 0 auto;"/> + <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> + <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span> + </el-col> + </div> + <!-- <div v-for="n in 8" :key="n" id="occupy"> <el-col style="text-align:left;font-weight: bold;">#1</el-col> <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;"> <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span> @@ -319,329 +391,508 @@ <!-- <div id="awatch"> <img src="../../assets/cp.png" alt="" style="width: 70%;height: 70%;margin-left: 160px;"> </div> --> -<!-- // 鐖剁骇妗� --> -<div class="img-dlpl" > - <div class="img-car1" :style="'z-index:999;left:247px;top:' + carposition1 + 'px;position:absolute;'"> - <div v-show="cellshow1" style="margin-top:10px;width:200px;height:5px;background-color:#409EFF;"></div> - </div> - - <div 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="cellshow" style="width: 200px;height: 5px;position: absolute;top:70px;left: 480px;background-color: #409EFF;"> + <!-- // 鐖剁骇妗� --> + <div class="img-dlpl"> + <div class="img-car1" + :style="'z-index:999;left:247px;top:' + carposition1 + 'px;position:absolute;'"> + <div v-show="cellshow1" + style="margin-top:10px;width:200px;height:5px;background-color:red;"></div> + </div> + <div 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:red;"></div> + </div> + <div v-show="cellshow" + style="width: 200px;height: 5px;position: absolute;top:60px;left: 490px;background-color: red;"> + + </div> </div> -</div> - + </div> -<el-dialog v-model="dialogFormVisible" top="12vh" width="85%" title="璇风‘璁ょ幓鐠冧俊鎭�" > - <div style="margin-left: 50px;margin-bottom: 10px;"> - <div style="display: flex;"> - <p style="margin-top: 4px;">纭鐘舵��:</p> - <el-button style="margin-left: 10px;size: mini;" type="success">鍏佽</el-button> - <el-button style="margin-left: 10px;size: mini;" type="danger">涓嶅厑璁�</el-button> - <p style="margin-left: 60px;margin-top: 4px;">褰撳墠鐘舵��:</p> - <div style="margin-top: 4px; margin-left: 10px;">鎵嬪姩</div> - <el-button style="margin-left: 10px;size: mini;" type="primary">鍒囨崲</el-button> - <el-input placeholder="璇疯緭鍏ョ幓鐠僫d" style="width: 180px;size: mini;margin-left: 60px;"></el-input> - <el-button style="margin-left: 10px;size: mini;" type="primary">娣诲姞</el-button> - <p style="margin-left: 60px;margin-top: 4px;">鐜荤拑id:</p> - <el-input style="width: 180px;size: mini;margin-left: 30px;"></el-input> - </div> - <div style="display: flex;"> - <p style="margin-left: 290px;margin-top: 20px;font-weight: bold;">涓婄墖浣�</p> - <p style="margin-left: 630px;margin-top: 20px;font-weight: bold;">鎵爜浣�</p> - </div> - <div style="display: flex;"> - <div style="margin-top: 20px;"> - <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">褰撳墠淇℃伅</p> - <el-form label-position="right" label-width="90px"> - <el-form-item style="width: 20vw" label="鐜荤拑id锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="璁㈠崟缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="鍒楄〃缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="绠卞瓙缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="闀匡細"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ラ暱"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="瀹斤細"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ"></el-input> - </el-form-item> - </el-form> + <el-dialog v-model="dialogFormVisible" + top="12vh" + width="85%" + title="璇风‘璁ょ幓鐠冧俊鎭�"> + <div style="margin-left: 50px;margin-bottom: 10px;"> + <div style="display: flex;"> + <p style="margin-top: 4px;">纭鐘舵��:</p> + <el-button style="margin-left: 10px;size: mini;" + type="success">鍏佽 + </el-button> + <el-button style="margin-left: 10px;size: mini;" + type="danger">涓嶅厑璁� + </el-button> + <p style="margin-left: 60px;margin-top: 4px;">褰撳墠鐘舵��:</p> + <div style="margin-top: 4px; margin-left: 10px;">鎵嬪姩</div> + <el-button style="margin-left: 10px;size: mini;" + type="primary">鍒囨崲 + </el-button> + <el-input placeholder="璇疯緭鍏ョ幓鐠僫d" + style="width: 180px;size: mini;margin-left: 60px;"></el-input> + <el-button style="margin-left: 10px;size: mini;" + type="primary">娣诲姞 + </el-button> + <p style="margin-left: 60px;margin-top: 4px;">鐜荤拑id:</p> + <el-input style="width: 180px;size: mini;margin-left: 30px;"></el-input> </div> - <div style="margin-top: 20px;"> - <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">淇敼淇℃伅</p> - <el-form label-position="right" label-width="90px"> - <el-form-item style="width: 20vw" label="鐜荤拑id锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="璁㈠崟缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="鍒楄〃缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="绠卞瓙缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="闀匡細"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ラ暱"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="瀹斤細"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ"></el-input> - </el-form-item> - </el-form> + <div style="display: flex;"> + <p style="margin-left: 290px;margin-top: 20px;font-weight: bold;">涓婄墖浣�</p> + <p style="margin-left: 630px;margin-top: 20px;font-weight: bold;">鎵爜浣�</p> </div> - <div style="margin-top: 20px;"> - <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">淇敼淇℃伅</p> - <el-form label-position="right" label-width="90px"> - <el-form-item style="width: 20vw" label="鐜荤拑id锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="璁㈠崟缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="鍒楄〃缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="绠卞瓙缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="闀匡細"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ラ暱"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="瀹斤細"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ"></el-input> - </el-form-item> - </el-form> - </div> - <div style="margin-top: 20px;"> - <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">褰撳墠淇℃伅</p> - <el-form label-position="right" label-width="90px"> - <el-form-item style="width: 20vw" label="鐜荤拑id锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="璁㈠崟缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="鍒楄〃缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="绠卞瓙缂栧彿锛�"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="闀匡細"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ラ暱"></el-input> - </el-form-item> - <el-form-item style="width: 20vw" label="瀹斤細"> - <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ"></el-input> - </el-form-item> - </el-form> - </div> - </div> + <div style="display: flex;"> + <div style="margin-top: 20px;"> + <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">褰撳墠淇℃伅</p> + <el-form label-position="right" + label-width="90px"> + <el-form-item style="width: 20vw" + label="鐜荤拑id锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="璁㈠崟缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="鍒楄〃缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="绠卞瓙缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="闀匡細"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ラ暱"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="瀹斤細"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ュ"></el-input> + </el-form-item> + </el-form> </div> - <template #footer> - <div id="dialog-footer"> - <el-button type="primary" @click="dialogFormVisible = false"> - 纭 - </el-button> - <el-button @click="dialogFormVisible = false">鍙栨秷</el-button> + <div style="margin-top: 20px;"> + <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">淇敼淇℃伅</p> + <el-form label-position="right" + label-width="90px"> + <el-form-item style="width: 20vw" + label="鐜荤拑id锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="璁㈠崟缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="鍒楄〃缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="绠卞瓙缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="闀匡細"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ラ暱"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="瀹斤細"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ュ"></el-input> + </el-form-item> + </el-form> + </div> + <div style="margin-top: 20px;"> + <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">淇敼淇℃伅</p> + <el-form label-position="right" + label-width="90px"> + <el-form-item style="width: 20vw" + label="鐜荤拑id锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="璁㈠崟缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="鍒楄〃缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="绠卞瓙缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="闀匡細"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ラ暱"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="瀹斤細"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ュ"></el-input> + </el-form-item> + </el-form> + </div> + <div style="margin-top: 20px;"> + <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">褰撳墠淇℃伅</p> + <el-form label-position="right" + label-width="90px"> + <el-form-item style="width: 20vw" + label="鐜荤拑id锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="璁㈠崟缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="鍒楄〃缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="绠卞瓙缂栧彿锛�"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="闀匡細"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ラ暱"></el-input> + </el-form-item> + <el-form-item style="width: 20vw" + label="瀹斤細"> + <el-input style="width: 180px" + size="mini" + placeholder="璇疯緭鍏ュ"></el-input> + </el-form-item> + </el-form> + </div> + </div> </div> - </template> -</el-dialog> -<el-dialog v-model="dialogFormVisiblea" top="10vh" width="85%" title="璁㈠崟淇℃伅" > - <el-input placeholder="璇疯緭鍏ュ伐绋嬪彿" style="width: 180px;size: mini;"></el-input> - <el-button style="margin-left: 10px;size: mini;" type="primary">鏌ヨ</el-button> - <el-table ref="table" style="margin-top: 20px;height: 500px;" - @selection-change="handleSelectionChange" - :data="tableDataa" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> - <el-table-column prop="ida" align="center" label="鐜荤拑id" min-width="80" /> - <el-table-column prop="typea" align="center" label="宸ョ▼鍙�" min-width="120" /> - <el-table-column prop="typea" align="center" label="闀�" min-width="120" /> - <el-table-column prop="typea" align="center" label="瀹�" min-width="120" /> - <el-table-column prop="typea" align="center" label="鍘�" min-width="120" /> - </el-table> - <div id="demo-pagination-block"> - <el-pagination - style="margin-left: 850px;" - v-model:current-page="currentPage4" - v-model:page-size="pageSize4" - :page-sizes="[100, 200, 300, 400]" - :small="small" - :disabled="disabled" - :background="background" - layout="total, sizes, prev, pager, next, jumper" - :total="400" - @size-change="handleSizeChange" - @current-change="handleCurrentChange" - /> - </div> -</el-dialog> -<el-dialog v-model="dialogFormVisibleb" top="10vh" width="85%" title="鍑虹墖闃熷垪" > - <div style="display: flex;"> - <p style="margin-top: 4px;">闃熷垪鐘舵�侊細</p> - <p style="margin-top: 4px;">寮�濮�</p> - <el-button style="margin-left: 10px;size: mini;" type="danger">鍋滄</el-button> - <el-button style="margin-left: 10px;size: mini;" type="primary">娣诲姞</el-button> - </div> - <el-table ref="table" style="margin-top: 20px;height: 500px;" - @selection-change="handleSelectionChange" - :data="tableDatab" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> - <el-table-column prop="id" align="center" label="閾濇id" min-width="80" /> - <el-table-column prop="type" align="center" label="鐜荤拑id" min-width="120" /> - <el-table-column prop="type" align="center" label="璁㈠崟缂栧彿" min-width="120" /> - <el-table-column prop="type" align="center" label="鍒楄〃缂栧彿" min-width="120" /> - <el-table-column prop="type" align="center" label="绠卞瓙缂栧彿" min-width="120" /> - <el-table-column prop="type" align="center" label="闀�" min-width="120" /> - <el-table-column prop="type" align="center" label="瀹�" min-width="120" /> - <el-table-column prop="type" align="center" label="鐜荤拑鐘舵��" min-width="120" /> - <el-table-column prop="type" align="center" label="椤哄簭" min-width="120" /> - <el-table-column prop="type" align="center" label="瀹屾垚" min-width="120" /> - <el-table-column prop="type" align="center" label="鎿嶄綔" min-width="120" /> - </el-table> -</el-dialog> + <template #footer> + <div id="dialog-footer"> + <el-button type="primary" + @click="dialogFormVisible = false"> + 纭 + </el-button> + <el-button @click="dialogFormVisible = false">鍙栨秷</el-button> + </div> + </template> + </el-dialog> + <el-dialog v-model="dialogFormVisiblea" + top="10vh" + width="85%" + title="璁㈠崟淇℃伅"> + <el-input placeholder="璇疯緭鍏ュ伐绋嬪彿" + style="width: 180px;size: mini;"></el-input> + <el-button style="margin-left: 10px;size: mini;" + type="primary">鏌ヨ + </el-button> + <el-table ref="table" + style="margin-top: 20px;height: 500px;" + @selection-change="handleSelectionChange" + :data="tableDataa" + :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> + <el-table-column prop="ida" + align="center" + label="鐜荤拑id" + min-width="80"/> + <el-table-column prop="typea" + align="center" + label="宸ョ▼鍙�" + min-width="120"/> + <el-table-column prop="typea" + align="center" + label="闀�" + min-width="120"/> + <el-table-column prop="typea" + align="center" + label="瀹�" + min-width="120"/> + <el-table-column prop="typea" + align="center" + label="鍘�" + min-width="120"/> + </el-table> + <div id="demo-pagination-block"> + <el-pagination style="margin-left: 850px;" + v-model:current-page="currentPage4" + v-model:page-size="pageSize4" + :page-sizes="[100, 200, 300, 400]" + :small="small" + :disabled="disabled" + :background="background" + layout="total, sizes, prev, pager, next, jumper" + :total="400" + @size-change="handleSizeChange" + @current-change="handleCurrentChange"/> + </div> + </el-dialog> + <el-dialog v-model="dialogFormVisibleb" + top="10vh" + width="85%" + title="鍑虹墖闃熷垪"> + <div style="display: flex;"> + <p style="margin-top: 4px;">闃熷垪鐘舵�侊細</p> + <p style="margin-top: 4px;">寮�濮�</p> + <el-button style="margin-left: 10px;size: mini;" + type="danger">鍋滄 + </el-button> + <el-button style="margin-left: 10px;size: mini;" + type="primary">娣诲姞 + </el-button> + </div> + <el-table ref="table" + style="margin-top: 20px;height: 500px;" + @selection-change="handleSelectionChange" + :data="tableDatab" + :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> + <el-table-column prop="id" + align="center" + label="閾濇id" + min-width="80"/> + <el-table-column prop="type" + align="center" + label="鐜荤拑id" + min-width="120"/> + <el-table-column prop="type" + align="center" + label="璁㈠崟缂栧彿" + min-width="120"/> + <el-table-column prop="type" + align="center" + label="鍒楄〃缂栧彿" + min-width="120"/> + <el-table-column prop="type" + align="center" + label="绠卞瓙缂栧彿" + min-width="120"/> + <el-table-column prop="type" + align="center" + label="闀�" + min-width="120"/> + <el-table-column prop="type" + align="center" + label="瀹�" + min-width="120"/> + <el-table-column prop="type" + align="center" + label="鐜荤拑鐘舵��" + min-width="120"/> + <el-table-column prop="type" + align="center" + label="椤哄簭" + min-width="120"/> + <el-table-column prop="type" + align="center" + label="瀹屾垚" + min-width="120"/> + <el-table-column prop="type" + align="center" + label="鎿嶄綔" + min-width="120"/> + </el-table> + </el-dialog> </template> <style scoped> +#dt { + display: block; + float: left; + line-height: 20px; + margin-left: 100px; +} -#dt { display:block; float:left;line-height: 20px;margin-left: 100px;} -#dta { display:block; float:left;line-height: 20px;margin-left: 80%;} -#dialog-footer{ +#dta { + display: block; + float: left; + line-height: 20px; + margin-left: 80%; +} + +#dialog-footer { text-align: center; margin-top: -15px; } -#message{ + +#message { text-align: center; align-items: center; color: black; - width: 200px; - height: 100px; - background-color: #337ecc; - margin-left: 28%; + width: 200px; + height: 100px; + background-color: #337ecc; + margin-left: 28%; } -#awatch{ + +#awatch { height: 450px; } + #occupy { - height: 100%; - width: 15%; - background-color: white; - margin: 0px 8px 0px 8px; - border: 1px #EBEEF5 solid; - text-align: center; - padding: 5px; + height: 100%; + width: 15%; + background-color: white; + margin: 0px 8px 0px 8px; + border: 1px #ebeef5 solid; + text-align: center; + padding: 5px; } #biao { - font-size: 12px; + font-size: 12px; } #zhi { - font-size: 18px; - font-weight: bold; + font-size: 18px; + font-weight: bold; } + #demo-pagination-block + #demo-pagination-block { margin-top: 10px; } + #demo-pagination-block #demonstration { margin-bottom: 16px; } + ::-webkit-scrollbar { - width: 0 !important; - } - ::-webkit-scrollbar { - width: 0 !important;height: 0; - } - .img-list{ - - position:relative; + width: 0 !important; } -.data-img{ - @apply float-none ; - - width:100%; - height:16rem; + +::-webkit-scrollbar { + width: 0 !important; + height: 0; +} + +.img-list { + position: relative; +} + +.data-img { + @apply float-none; + + width: 100%; + height: 16rem; background: rgba(0, 0, 0, 0); opacity: 1; border-radius: 0.5rem 0.5rem 0px 0px; - } -.check-img{ + +.check-img { position: absolute; width: 3.3125rem; height: 2.9375rem; - top:20rem; + top: 20rem; right: 57rem; z-index: 10; - } -.check-imga{ + +.check-imga { position: absolute; width: 3.3125rem; height: 2.9375rem; - top:15rem; + top: 15rem; right: 28.5rem; z-index: 10; - } + .vertical { - width: 45px; - height: 25px; - background-color: #409EFF; - top: 485px; /* 鍒濆浣嶇疆 */ - left: 899px; /* 姘村钩灞呬腑 */ - transform: translateX(-50%); - animation: move-vertical 6s infinite; /* 浠庝笂鍒颁笅鍔ㄧ敾锛屾寔缁�6绉掞紝鏃犻檺寰幆 */ + width: 45px; + height: 25px; + background-color: #409eff; + top: 485px; /* 鍒濆浣嶇疆 */ + left: 899px; /* 姘村钩灞呬腑 */ + transform: translateX(-50%); + animation: move-vertical 6s infinite; /* 浠庝笂鍒颁笅鍔ㄧ敾锛屾寔缁�6绉掞紝鏃犻檺寰幆 */ } @keyframes move-vertical { - 0% { - top: 485px; /* 璧峰浣嶇疆 */ - } - 100% { - top: calc(100% - 210px); /* 浠庝笂鍒颁笅缁撴潫浣嶇疆 */ - } + 0% { + top: 485px; /* 璧峰浣嶇疆 */ + } + 100% { + top: calc(100% - 210px); /* 浠庝笂鍒颁笅缁撴潫浣嶇疆 */ + } } -.img-dlpl{ +.img-dlpl { margin-left: 200px; - background-image:url('../../assets/dlpl.png'); + background-image: url('../../assets/dlpl.png'); background-repeat: no-repeat; - background-attachment: local; - min-height: 400px; - width: 1200px; - max-width: 100%; - background-size: 1200px 400px; - overflow: hidden; - position:relative + background-attachment: local; + min-height: 400px; + width: 1200px; + max-width: 100%; + background-size: 1200px 400px; + overflow: hidden; + position: relative; } -.img-car1{ - background-image:url('../../assets/lp.png'); + +.img-car1 { + background-image: url('../../assets/lpl.jpg'); 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 + 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'); + +.img-car2 { + background-image: url('../../assets/lpla.jpg'); 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 + background-attachment: local; + min-height: 200px; + width: 200px; + max-width: 100%; + background-size: 200px 70px; + overflow: hidden; + position: relative; } </style> \ No newline at end of file diff --git a/UI-Project/vite.config.js b/UI-Project/vite.config.js index 996aec1..b93f5ee 100644 --- a/UI-Project/vite.config.js +++ b/UI-Project/vite.config.js @@ -22,7 +22,7 @@ https: false, proxy: { '/api': { - target: '10.153.19.150:88/', + target: 'http://127.0.0.1:88/', changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, '/'), }, diff --git a/hangzhoumesParent.zip b/hangzhoumesParent.zip new file mode 100644 index 0000000..c049891 --- /dev/null +++ b/hangzhoumesParent.zip Binary files differ diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/controller/GlassInfoController.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/controller/GlassInfoController.java new file mode 100644 index 0000000..612845f --- /dev/null +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/controller/GlassInfoController.java @@ -0,0 +1,21 @@ +package com.mes.glassinfo.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RestController; + +/** + * <p> + * 鍓嶇鎺у埗鍣� + * </p> + * + * @author wu + * @since 2024-04-29 + */ +@RestController +@RequestMapping("/glassinfo/glass-info") +public class GlassInfoController { + +} + diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/entity/GlassInfo.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/entity/GlassInfo.java new file mode 100644 index 0000000..dfa7b6e --- /dev/null +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/entity/GlassInfo.java @@ -0,0 +1,135 @@ +package com.mes.glassinfo.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * <p> + * + * </p> + * + * @author wu + * @since 2024-04-29 + */ +@Data +@EqualsAndHashCode(callSuper = false) +public class GlassInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 鐜荤拑淇℃伅琛╥d + */ + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + /** + * 娴佺▼鍗� + */ + private String flowCardId; + + /** + * 娴佺▼鍗$幓鐠冪被鍨� + */ + private Integer glassType; + + /** + * 瀹� + */ + private Double width; + + /** + * 楂� + */ + private Double height; + + /** + * 鍘氬害 + */ + private Double thickness; + + /** + * 鑶滅郴 + */ + private String filmsid; + + /** + * 纾ㄥ墠瀹� + */ + private Double edgWidth; + + /** + * 纾ㄥ墠楂� + */ + private Double edgHeight; + + /** + * 鏄惁閰嶇墖 + */ + private Integer ismultiple; + + /** + * 閰嶇墖鏈�澶у + */ + private Double maxWidth; + + /** + * 閰嶇墖鏈�澶ч珮 + */ + private Double maxHeight; + + /** + * 閽㈠寲鏄惁鎺ュ彈妯斁 + */ + private Integer ishorizontal; + + /** + * 鍘熺墖椤哄簭 + */ + private Integer patternSequence; + + /** + * 閽㈠寲鐗堝浘id + */ + private Integer temperingLayoutId; + + /** + * 閽㈠寲鐗堝浘鐗囧簭 + */ + private Integer temperingFeedSequence; + + /** + * x鍧愭爣 + */ + private Integer xCoordinate; + + /** + * y鍧愭爣 + */ + private Integer yCoordinate; + + /** + * 鏃嬭浆瑙掑害锛堥�嗘椂閽堬級 + */ + private Integer angle; + + /** + * 宸ョ▼鍙� + */ + private String engineerId; + + /** + * 鐢熶骇瑙勫垯id + */ + private Integer ruleId; + + /** + * 鐜荤拑ID + */ + private String glassId; + + +} diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/entity/OptimizeGlassinfo.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/entity/OptimizeGlassinfo.java new file mode 100644 index 0000000..8f50981 --- /dev/null +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/entity/OptimizeGlassinfo.java @@ -0,0 +1,82 @@ +package com.mes.glassinfo.entity; + +import lombok.Getter; +import lombok.Setter; + +/** + * @author SNG-010 + */ +@Setter +@Getter +public class OptimizeGlassinfo { + + // Getter methods + // Setter methods + /** + * 娴佺▼鍗″彿 + */ + private String projectId; + + /** + * 宸ョ▼绉嶇被 + */ + private String type; + + /** + * 瀹� + */ + private Double width; + + /** + * 楂� + */ + private Double height; + + /** + * 鍘氬害 + */ + private Double glassThickness; + + /** + * 鐜荤拑鑶滅郴 + */ + private String glassType; + + /** + * 灏忕墖瀹斤紙鍔犵(閲忥級 + */ + private Double pWidth; + /** + * 灏忕墖楂橈紙鍔犵(閲忥級 + */ + private Double pHeight; + /** + * 鐗堝浘id + */ + private Integer stockId; + /** + * 閽㈠寲鐗堝浘缂栧彿(鏋跺彿) + */ + private Integer heatLayoutId; + /** + * 閽㈠寲搴忓彿 + */ + private Integer heatLayoutSort; + /** + * x鍧愭爣 + */ + private Integer xAxis; + /** + * y鍧愭爣 + */ + private Integer yAxis; + /** + * 宸ョ▼鍙� + */ + private String projectNo; + /** + * 灏忕墖缂栧彿 + */ + private String glassId; + +} diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/mapper/GlassInfoMapper.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/mapper/GlassInfoMapper.java new file mode 100644 index 0000000..4688c38 --- /dev/null +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/mapper/GlassInfoMapper.java @@ -0,0 +1,17 @@ +package com.mes.glassinfo.mapper; + +import com.github.yulichang.base.MPJBaseMapper; +import com.mes.glassinfo.entity.GlassInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * <p> + * Mapper 鎺ュ彛 + * </p> + * + * @author wu + * @since 2024-04-29 + */ +public interface GlassInfoMapper extends BaseMapper<GlassInfo>, MPJBaseMapper<GlassInfo> { + +} diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/mapper/xml/GlassInfoMapper.xml b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/mapper/xml/GlassInfoMapper.xml new file mode 100644 index 0000000..3c9381f --- /dev/null +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/mapper/xml/GlassInfoMapper.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.glassinfo.mapper.GlassInfoMapper"> + +</mapper> 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 new file mode 100644 index 0000000..746b5f4 --- /dev/null +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/GlassInfoService.java @@ -0,0 +1,19 @@ +package com.mes.glassinfo.service; + +import com.mes.glassinfo.entity.GlassInfo; +import com.baomidou.mybatisplus.extension.service.IService; +import com.github.yulichang.base.MPJBaseService; +import java.util.List; + +/** + * <p> + * 鏈嶅姟绫� + * </p> + * + * @author wu + * @since 2024-04-29 + */ +public interface GlassInfoService extends MPJBaseService<GlassInfo> { + + List<GlassInfo> selectGlassInfo(String engineeringId); +} 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 new file mode 100644 index 0000000..88838b9 --- /dev/null +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java @@ -0,0 +1,77 @@ +package com.mes.glassinfo.service.impl; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.github.yulichang.query.MPJQueryWrapper; +import com.mes.glassinfo.entity.GlassInfo; +import com.mes.glassinfo.entity.OptimizeGlassinfo; +import com.mes.glassinfo.mapper.GlassInfoMapper; +import com.mes.glassinfo.service.GlassInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.mes.pp.entity.OptimizeProject; +import com.mes.pp.mapper.OptimizeProjectMapper; +import com.mes.uppattenusage.entity.UpPattenUsage; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.github.yulichang.base.MPJBaseServiceImpl; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +/** + * <p> + * 鏈嶅姟瀹炵幇绫� + * </p> + * + * @author wu + * @since 2024-04-29 + */ +@Service +@Slf4j +public class GlassInfoServiceImpl extends MPJBaseServiceImpl<GlassInfoMapper, GlassInfo> implements GlassInfoService { + @Autowired + OptimizeProjectMapper optimizeProjectMapper; + @Override + @DS("pp") + + public List<GlassInfo> selectGlassInfo(String engineeringId) { + List<OptimizeGlassinfo> optimizeGlassinfos=null; + if (engineeringId != null) { + optimizeGlassinfos = optimizeProjectMapper.selectJoinList(OptimizeGlassinfo.class, new MPJQueryWrapper<OptimizeProject>() + .select("b.process_id,t.type,b.width,b.height,t.glass_thickness,t.glass_type,b.p_width,b.p_height,b.stock_id,b.heat_layout_id,b.heat_layout_sort,b.x_axis,b.y_axis,b.project_no,b.glass_id") + .leftJoin("optimize_detail b on t.project_no=b.project_no") + .eq("t.state",200) + .eq("t.project_no", engineeringId)); + } + + // 鍒涘缓涓�涓� List 鐢ㄤ簬淇濆瓨鏄犲皠鍚庣殑瀹炰綋瀵硅薄 + List<GlassInfo> resultList = new ArrayList<>(); + + if(optimizeGlassinfos!=null){ + for (OptimizeGlassinfo map : optimizeGlassinfos) { + // 鍒涘缓涓�涓柊鐨� OptimizeGlassinfo 瀵硅薄 + GlassInfo glassInfo = new GlassInfo(); + // 灏� Map 涓殑姣忎釜閿�煎鏄犲皠鍒� OptimizeGlassinfo 瀵硅薄鐨勭浉搴斿瓧娈典笂 + glassInfo.setEngineerId(map.getProjectNo()); + glassInfo.setFlowCardId(map.getProjectId()); + glassInfo.setFilmsid(map.getGlassType()); + glassInfo.setWidth(map.getWidth()); + glassInfo.setHeight(map.getHeight()); + glassInfo.setThickness(map.getGlassThickness()); + glassInfo.setPatternSequence(map.getStockId());// + glassInfo.setTemperingLayoutId(map.getHeatLayoutId());//閽㈠寲鐗堝浘id + glassInfo.setTemperingFeedSequence(map.getHeatLayoutSort());//閽㈠寲鐗堝浘椤哄簭 + glassInfo.setXCoordinate(map.getXAxis()); + glassInfo.setYCoordinate(map.getYAxis()); + + glassInfo.setGlassId(map.getGlassId()); + // 灏嗘槧灏勫悗鐨勫璞℃坊鍔犲埌缁撴灉鍒楄〃涓� + resultList.add(glassInfo); + } + } + log.info("鏌ヨ鍑篻lassinfo鐨勬暟鎹畕}:",resultList); + log.info("鏌ヨ鍑篻lassinfopro鐨勬暟鎹畕}:",optimizeGlassinfos); + return resultList; + } +} diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/tools/CodeGet.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/tools/CodeGet.java index 866f4b4..7a3bfe9 100644 --- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/tools/CodeGet.java +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/tools/CodeGet.java @@ -22,7 +22,7 @@ // 2銆佸叏灞�閰嶇疆 // 鍏ㄥ眬閰嶇疆 GlobalConfig gc = new GlobalConfig(); - gc.setOutputDir("D:\\Documents\\hangzhoumesParent2\\"); + gc.setOutputDir("D:\\Documents\\hangzhoumesParent3\\"); gc.setServiceName("%sService"); //鍘绘帀Service鎺ュ彛鐨勯瀛楁瘝I gc.setAuthor("wu"); @@ -41,7 +41,7 @@ // 4銆佸寘閰嶇疆 PackageConfig pc = new PackageConfig(); pc.setParent("com.mes"); - pc.setModuleName("engineering"); //妯″潡鍚� + pc.setModuleName("glassinfo"); //妯″潡鍚� pc.setController("controller"); pc.setService("service"); pc.setMapper("mapper"); @@ -50,7 +50,7 @@ // 5銆佺瓥鐣ラ厤缃� StrategyConfig strategy = new StrategyConfig(); - strategy.setInclude("engineering"); + strategy.setInclude("glass_info"); strategy.setNaming(NamingStrategy.underline_to_camel);//鏁版嵁搴撹〃鏄犲皠鍒板疄浣撶殑鍛藉悕绛栫暐 diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/controller/UpPattenUsageController.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/controller/UpPattenUsageController.java index c0a3d4d..48e78f1 100644 --- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/controller/UpPattenUsageController.java +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/controller/UpPattenUsageController.java @@ -1,48 +1,56 @@ package com.mes.uppattenusage.controller; - -import com.mes.uppattenusage.entity.UpPattenUsage; -import com.mes.uppattenusage.service.UpPattenUsageService; -import com.mes.utils.Result; -import io.swagger.annotations.ApiOperation; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; - -/** - * <p> - * 鍓嶇鎺у埗鍣� - * </p> - * - * @author zhoush - * @since 2024-04-18 - */ -@RestController -@RequestMapping("/up-patten-usage") -@Slf4j -public class UpPattenUsageController { - - @Autowired - private UpPattenUsageService upPattenUsageService; - @ApiOperation("鏄剧ず姝e湪鍑虹墖鐨勫伐绋嬩俊鎭�") - @GetMapping("/prioritylist") //鏌ヨ鐜板湪涓婄墖鏈虹殑鐜荤拑淇℃伅 - public Result<List<UpPattenUsage>> prioritylist() { - List<UpPattenUsage> glass = upPattenUsageService.prioritylist(1); - log.info("鏄剧ず宸ヤ綅涓婄殑鐜荤拑淇℃伅:{}", glass); - return Result.build(200, "", glass); - } - - @ApiOperation("鐐瑰嚮閫夋嫨宸ョ▼淇濆瓨鍚庤繘琛岃皟鐢�,浼犲叆宸ョ▼鍙�") - @GetMapping("/saveUpPattenUsage") //鏌ヨ鐜板湪涓婄墖鏈虹殑鐜荤拑淇℃伅 - public Result<Integer> saveUpPattenUsage(@RequestBody String engineeringId) { - //List<OptimizeUpPattenUsage> glass = upPattenUsageService.saveUpPattenUsage(engineeringId); - log.info("鏄剧ず宸ヤ綅涓婄殑鐜荤拑淇℃伅:{}", 200); - return Result.build(200, "", 200); - } -} +// +//import com.mes.uppattenusage.service.GlassInfoService; +//import com.mes.uppattenusage.entity.OptimizeUpPattenUsage; +//import com.mes.uppattenusage.entity.UpPattenUsage; +//import com.mes.glassinfo.entity.GlassInfo; +//import com.mes.uppattenusage.service.UpPattenUsageService; +//import com.mes.utils.Result; +//import io.swagger.annotations.ApiOperation; +//import lombok.extern.slf4j.Slf4j; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.web.bind.annotation.GetMapping; +//import org.springframework.web.bind.annotation.RequestBody; +//import org.springframework.web.bind.annotation.RequestMapping; +//import org.springframework.web.bind.annotation.RestController; +// +//import java.util.List; +// +///** +// * <p> +// * 鍓嶇鎺у埗鍣� +// * </p> +// * +// * @author zhoush +// * @since 2024-04-18 +// */ +//@RestController +//@RequestMapping("/up-patten-usage") +//@Slf4j +//public class UpPattenUsageController { +// +// @Autowired +// private UpPattenUsageService upPattenUsageService; +// @Autowired +// private GlassInfoService glassInfoService; +// @ApiOperation("鏄剧ず姝e湪鍑虹墖鐨勫伐绋嬩俊鎭�") +// @GetMapping("/prioritylist") //鏌ヨ鐜板湪涓婄墖鏈虹殑鐜荤拑淇℃伅 +// public Result<List<UpPattenUsage>> prioritylist() { +// List<UpPattenUsage> glass = upPattenUsageService.prioritylist(1); +// log.info("鏄剧ず宸ヤ綅涓婄殑鐜荤拑淇℃伅:{}", glass); +// return Result.build(200, "", glass); +// } +// +// @ApiOperation("鐐瑰嚮閫夋嫨宸ョ▼淇濆瓨鍚庤繘琛岃皟鐢�,浼犲叆宸ョ▼鍙�") +// @GetMapping("/saveUpPattenUsage") //鏌ヨ鐜板湪涓婄墖鏈虹殑鐜荤拑淇℃伅 +// public Result<Integer> saveUpPattenUsage(String engineeringId) { +// List<UpPattenUsage> upPattenUsages = upPattenUsageService.selectSaveUpPattenUsage(engineeringId); +// log.info("灏嗘煡璇㈠嚭鐨刄pPattenUsage鏁版嵁淇濆瓨鍒版暟鎹簱琛ㄩ噷"); +// upPattenUsageService.saveUpPattenUsage(upPattenUsages); +// log.info("浠嶱P琛ㄦ煡璇lassinfo鐨勬暟鎹苟淇濆瓨鍒拌〃閲�"); +// List<GlassInfo> glassinfo=glassInfoService.selectGlassInfo(engineeringId); +// return Result.build(200, "", 200); +// } +//} diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/entity/OptimizeUpPattenUsage.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/entity/OptimizeUpPattenUsage.java index 2b747b6..7882159 100644 --- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/entity/OptimizeUpPattenUsage.java +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/entity/OptimizeUpPattenUsage.java @@ -1,7 +1,17 @@ package com.mes.uppattenusage.entity; +import lombok.Getter; +import lombok.Setter; + +/** + * @author SNG-010 + */ +@Setter +@Getter public class OptimizeUpPattenUsage { + // Getter methods + // Setter methods /** * 宸ョ▼鍙� */ @@ -36,63 +46,5 @@ * 鐘舵�� */ private Integer state; - - // Getter methods - public String getProjectNo() { - return projectNo; - } - - public String getGlassType() { - return glassType; - } - - public Double getWidth() { - return width; - } - - public Double getHeight() { - return height; - } - - public Double getGlassThickness() { - return glassThickness; - } - - public Integer getHeatLayoutSort() { - return heatLayoutSort; - } - - public Integer getState() { - return state; - } - - // Setter methods - public void setProjectNo(String projectNo) { - this.projectNo = projectNo; - } - - public void setGlassType(String glassType) { - this.glassType = glassType; - } - - public void setWidth(Double width) { - this.width = width; - } - - public void setHeight(Double height) { - this.height = height; - } - - public void setGlassThickness(Double glassThickness) { - this.glassThickness = glassThickness; - } - - public void setHeatLayoutSort(Integer heatLayoutSort) { - this.heatLayoutSort = heatLayoutSort; - } - - public void setState(Integer state) { - this.state = state; - } } diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/UpPattenUsageService.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/UpPattenUsageService.java index 47a6c20..37427e8 100644 --- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/UpPattenUsageService.java +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/UpPattenUsageService.java @@ -16,6 +16,8 @@ public interface UpPattenUsageService extends MPJBaseService<UpPattenUsage> { List<UpPattenUsage> prioritylist(int state); - List<Map> saveUpPattenUsage(String engineeringId); + List<UpPattenUsage> selectSaveUpPattenUsage(String engineeringId); + + void saveUpPattenUsage(List<UpPattenUsage> upPattenUsages); } diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/impl/UpPattenUsageServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/impl/UpPattenUsageServiceImpl.java index cf60362..59a06be 100644 --- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/impl/UpPattenUsageServiceImpl.java +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/impl/UpPattenUsageServiceImpl.java @@ -14,9 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.Collections; -import java.util.List; -import java.util.Map; +import java.util.*; /** * <p> @@ -43,16 +41,49 @@ @Override @DS("pp") - public List<Map> saveUpPattenUsage(String engineeringId) { + public List<UpPattenUsage> selectSaveUpPattenUsage(String engineeringId) { + List<OptimizeUpPattenUsage> upPattenUsageList = null; if (engineeringId != null) { - - List<Map> upPattenUsageList=optimizeProjectMapper.selectJoinList(Map.class,new MPJQueryWrapper<OptimizeProject>() + upPattenUsageList = optimizeProjectMapper.selectJoinList(OptimizeUpPattenUsage.class, new MPJQueryWrapper<OptimizeProject>() .select("t.project_no,t.glass_type,b.width,b.height,REGEXP_REPLACE(t.glass_thickness,'\\D','')as glass_thickness,b.heat_layout_sort") .leftJoin("optimize_layout b on t.project_no=b.project_no") - .eq("b.project_no",engineeringId)); + .eq("b.project_no", engineeringId)); } - return Collections.emptyList(); + // 鍒涘缓涓�涓� List 鐢ㄤ簬淇濆瓨鏄犲皠鍚庣殑瀹炰綋瀵硅薄 + List<UpPattenUsage> resultList = new ArrayList<>(); + +// 閬嶅巻鏌ヨ缁撴灉涓殑姣忎釜 Map 瀵硅薄 + if (upPattenUsageList != null) { + for (OptimizeUpPattenUsage map : upPattenUsageList) { + // 鍒涘缓涓�涓柊鐨� OptimizeProject 瀵硅薄 + UpPattenUsage optimizeProject = new UpPattenUsage(); + // 灏� Map 涓殑姣忎釜閿�煎鏄犲皠鍒� OptimizeProject 瀵硅薄鐨勭浉搴斿瓧娈典笂 + optimizeProject.setEngineeringId((String) map.getProjectNo()); + optimizeProject.setFilmsId((String) map.getGlassType()); + optimizeProject.setWidth((Double) map.getWidth()); + optimizeProject.setHeight((Double) map.getHeight()); + optimizeProject.setThickness((Double)map.getHeight()); + optimizeProject.setLayoutSequence((Integer) map.getHeatLayoutSort()); + optimizeProject.setState(0); + // 灏嗘槧灏勫悗鐨勫璞℃坊鍔犲埌缁撴灉鍒楄〃涓� + resultList.add(optimizeProject); + } + } + log.info("鏌ヨ鍑轰笂鐗囬『搴忛泦鍚堜繚瀛樺埌瀹炰綋绫粄}",resultList); + return resultList; + } + + @Override + public void saveUpPattenUsage(List<UpPattenUsage> upPattenUsage) { + this.saveBatch(upPattenUsage); + //淇濆瓨鍘熺墖浣跨敤璇︽儏琛� + } + + //@Override + public void selectSaveGlassinfo(String engineeringId) { + //淇濆瓨鐜荤拑淇℃伅琛� + //optimizeProjectMapper.selectJoinList(); } diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/filter/JwtAuthenticationTokenFilter.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/filter/JwtAuthenticationTokenFilter.java index 5be6d66..e993f38 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/filter/JwtAuthenticationTokenFilter.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/filter/JwtAuthenticationTokenFilter.java @@ -50,7 +50,7 @@ //瑙f瀽token String userid; try { - Claims claims = JwtUtil.parseJWT(token); + Claims claims = JwtUtil.getClaimByToken(token); userid = claims.getSubject(); } catch (Exception e) { e.printStackTrace(); diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/utils/JwtUtil.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/utils/JwtUtil.java index 8c8f0d9..f7af90a 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/utils/JwtUtil.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/common/utils/JwtUtil.java @@ -2,119 +2,54 @@ import io.jsonwebtoken.Claims; -import io.jsonwebtoken.JwtBuilder; import io.jsonwebtoken.Jwts; import io.jsonwebtoken.SignatureAlgorithm; +import lombok.Data; -import javax.crypto.SecretKey; -import javax.crypto.spec.SecretKeySpec; -import java.util.Base64; import java.util.Date; -import java.util.UUID; /** * @Author : zhoush * @Date: 2024/4/9 19:15 * @Description: */ +@Data public class JwtUtil { - //鏈夋晥鏈熶负 - public static final Long JWT_TTL = 60 * 60 * 1000L;// 60 * 60 *1000 涓�涓皬鏃� - //璁剧疆绉橀挜鏄庢枃 - public static final String JWT_KEY = "sangeng"; + private static final long expire = 60 * 60 * 1000L; + private static final String secret = "beibo"; + private static final String header = "Authorization"; - public static String getUUID() { - String token = UUID.randomUUID().toString().replaceAll("-", ""); - return token; - } + // 鐢熸垚jwt + public static String generateToken(String username) { - /** - * 鐢熸垚jtw - * - * @param subject token涓瀛樻斁鐨勬暟鎹紙json鏍煎紡锛� - * @return - */ - public static String createJWT(String subject) { - JwtBuilder builder = getJwtBuilder(subject, null, getUUID());// 璁剧疆杩囨湡鏃堕棿 - return builder.compact(); - } + Date nowDate = new Date(); + Date expireDate = new Date(nowDate.getTime() + 1000 * expire); - /** - * 鐢熸垚jtw - * - * @param subject token涓瀛樻斁鐨勬暟鎹紙json鏍煎紡锛� - * @param ttlMillis token瓒呮椂鏃堕棿 - * @return - */ - public static String createJWT(String subject, Long ttlMillis) { - JwtBuilder builder = getJwtBuilder(subject, ttlMillis, getUUID());// 璁剧疆杩囨湡鏃堕棿 - return builder.compact(); - } - - private static JwtBuilder getJwtBuilder(String subject, Long ttlMillis, String uuid) { - SignatureAlgorithm signatureAlgorithm = SignatureAlgorithm.HS256; - SecretKey secretKey = generalKey(); - long nowMillis = System.currentTimeMillis(); - Date now = new Date(nowMillis); - if (ttlMillis == null) { - ttlMillis = JwtUtil.JWT_TTL; - } - long expMillis = nowMillis + ttlMillis; - Date expDate = new Date(expMillis); return Jwts.builder() - .setId(uuid) //鍞竴鐨処D - .setSubject(subject) // 涓婚 鍙互鏄疛SON鏁版嵁 - .setIssuer("sg") // 绛惧彂鑰� - .setIssuedAt(now) // 绛惧彂鏃堕棿 - .signWith(signatureAlgorithm, secretKey) //浣跨敤HS256瀵圭О鍔犲瘑绠楁硶绛惧悕, 绗簩涓弬鏁颁负绉橀挜 - .setExpiration(expDate); + .setHeaderParam("typ", "JWT") + .setSubject(username) + .setIssuedAt(nowDate) + .setExpiration(expireDate)// 7澶╅亷鏈� + .signWith(SignatureAlgorithm.HS512, secret) + .compact(); } - /** - * 鍒涘缓token - * - * @param id - * @param subject - * @param ttlMillis - * @return - */ - public static String createJWT(String id, String subject, Long ttlMillis) { - JwtBuilder builder = getJwtBuilder(subject, ttlMillis, id);// 璁剧疆杩囨湡鏃堕棿 - return builder.compact(); + // 瑙f瀽jwt + public static Claims getClaimByToken(String jwt) { + try { + return Jwts.parser() + .setSigningKey(secret) + .parseClaimsJws(jwt) + .getBody(); + } catch (Exception e) { + return null; + } } - public static void main(String[] args) throws Exception { - String token = "eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiJjYWM2ZDVhZi1mNjVlLTQ0MDAtYjcxMi0zYWEwOGIyOTIwYjQiLCJzdWIiOiJzZyIsImlzcyI6InNnIiwiaWF0IjoxNjM4MTA2NzEyLCJleHAiOjE2MzgxMTAzMTJ9.JVsSbkP94wuczb4QryQbAke3ysBDIL5ou8fWsbt_ebg"; - Claims claims = parseJWT(token); - System.out.println(claims); + // jwt鏄惁杩囨湡 + public boolean isTokenExpired(Claims claims) { + return claims.getExpiration().before(new Date()); } - - /** - * 鐢熸垚鍔犲瘑鍚庣殑绉橀挜 secretKey - * - * @return - */ - public static SecretKey generalKey() { - byte[] encodedKey = Base64.getDecoder().decode(JwtUtil.JWT_KEY); - SecretKey key = new SecretKeySpec(encodedKey, 0, encodedKey.length, "AES"); - return key; - } - - /** - * 瑙f瀽 - * - * @param jwt - * @return - * @throws Exception - */ - public static Claims parseJWT(String jwt) throws Exception { - SecretKey secretKey = generalKey(); - return Jwts.parser() - .setSigningKey(secretKey) - .parseClaimsJws(jwt) - .getBody(); - } - } diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java index f6207b7..b8f3259 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/userinfo/service/impl/SysUserServiceImpl.java @@ -54,7 +54,7 @@ //浣跨敤userid鐢熸垚token LoginUser loginUser = (LoginUser) authenticate.getPrincipal(); String userId = loginUser.getUser().getId().toString(); - String jwt = JwtUtil.createJWT(userId); + String jwt = JwtUtil.generateToken(userId); //authenticate瀛樺叆redis redisUtil.setCacheObject("login:" + userId, loginUser); //鎶妕oken鍝嶅簲缁欏墠绔� diff --git a/hangzhoumesParent/common/springsecurity/src/main/resources/application-dev.yml b/hangzhoumesParent/common/springsecurity/src/main/resources/application-dev.yml new file mode 100644 index 0000000..7085cc4 --- /dev/null +++ b/hangzhoumesParent/common/springsecurity/src/main/resources/application-dev.yml @@ -0,0 +1,15 @@ +spring: + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://127.0.0.1:3306/hangzhoumes?serverTimezone=GMT%2b8&characterEncoding=utf-8&useSSL=false + username: root + password: beibo.123/ + cloud: + nacos: + discovery: + server-addr: 127.0.0.1:8848 + redis: + database: 0 + host: 127.0.0.1 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/common/springsecurity/src/main/resources/application-loc.yml b/hangzhoumesParent/common/springsecurity/src/main/resources/application-loc.yml new file mode 100644 index 0000000..c615566 --- /dev/null +++ b/hangzhoumesParent/common/springsecurity/src/main/resources/application-loc.yml @@ -0,0 +1,15 @@ +spring: + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8&characterEncoding=utf-8&useSSL=false + username: root + password: root + cloud: + nacos: + discovery: + server-addr: 127.0.0.1:8848 + redis: + database: 0 + host: 127.0.0.1 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/common/springsecurity/src/main/resources/application-prod.yml b/hangzhoumesParent/common/springsecurity/src/main/resources/application-prod.yml new file mode 100644 index 0000000..64e7984 --- /dev/null +++ b/hangzhoumesParent/common/springsecurity/src/main/resources/application-prod.yml @@ -0,0 +1,15 @@ +spring: + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8&characterEncoding=utf-8&useSSL=false + username: root + password: beibo.123/ + cloud: + nacos: + discovery: + server-addr: 10.153.19.150:8848 + redis: + database: 0 + host: 10.153.19.150 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/common/springsecurity/src/main/resources/application.yml b/hangzhoumesParent/common/springsecurity/src/main/resources/application.yml index 9b6f864..d5978be 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/resources/application.yml +++ b/hangzhoumesParent/common/springsecurity/src/main/resources/application.yml @@ -3,18 +3,18 @@ spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://localhost:3306/hangzhoumes?serverTimezone=GMT%2b8&characterEncoding=utf-8&useSSL=false + url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8&characterEncoding=utf-8&useSSL=false username: root password: beibo.123/ cloud: nacos: discovery: - server-addr: localhost:8848 + server-addr: 10.153.19.150:8848 application: name: security redis: database: 0 - host: localhost + host: 10.153.19.150 port: 6379 password: session: diff --git a/hangzhoumesParent/gateway/src/main/resources/application-dev.yml b/hangzhoumesParent/gateway/src/main/resources/application-dev.yml new file mode 100644 index 0000000..22ac82e --- /dev/null +++ b/hangzhoumesParent/gateway/src/main/resources/application-dev.yml @@ -0,0 +1,5 @@ +spring: + cloud: + nacos: + discovery: + server-addr: 127.0.0.1:8848 diff --git a/hangzhoumesParent/gateway/src/main/resources/application-prod.yml b/hangzhoumesParent/gateway/src/main/resources/application-prod.yml new file mode 100644 index 0000000..dc6869c --- /dev/null +++ b/hangzhoumesParent/gateway/src/main/resources/application-prod.yml @@ -0,0 +1,5 @@ +spring: + cloud: + nacos: + discovery: + server-addr: 10.153.19.150:8848 \ No newline at end of file diff --git a/hangzhoumesParent/gateway/src/main/resources/application.yml b/hangzhoumesParent/gateway/src/main/resources/application.yml index be39617..f8655cf 100644 --- a/hangzhoumesParent/gateway/src/main/resources/application.yml +++ b/hangzhoumesParent/gateway/src/main/resources/application.yml @@ -1,12 +1,10 @@ server: port: 88 spring: + profiles: + active: prod application: name: gateway - cloud: - nacos: - discovery: - server-addr: localhost:8848 gateway: discovery: locator: diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/PlcHomeEdg.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/PlcHomeEdg.java index f4944a9..4251046 100644 --- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/PlcHomeEdg.java +++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/PlcHomeEdg.java @@ -163,7 +163,7 @@ outTo(3); }else if("3".equals(mapValue.get("A06_request_word"))&& "0".equals(mapValue.get("MES_confirmation_word"))){ - + if("0".equals(mapValue.get("A09_glass_status"))||"0".equals(mapValue.get("A10_glass_status"))){ outTo(3); }else{ diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-dev.yml b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-dev.yml new file mode 100644 index 0000000..63837a9 --- /dev/null +++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-dev.yml @@ -0,0 +1,27 @@ +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 + 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: + server-addr: 127.0.0.1:8848 + application: + name: cacheGlass + redis: + database: 0 + host: 127.0.0.1 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-loc.yml b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-loc.yml new file mode 100644 index 0000000..477e2cb --- /dev/null +++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-loc.yml @@ -0,0 +1,27 @@ +spring: + datasource: + dynamic: + primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster + strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + datasource: + hangzhoumes: + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8 + username: root + password: root + driver-class-name: com.mysql.cj.jdbc.Driver + pp: + url: jdbc:mysql://192.168.56.10:3306/pp?serverTimezone=GMT%2b8 + username: root + password: root + driver-class-name: com.mysql.cj.jdbc.Driver + cloud: + nacos: + discovery: + server-addr: 127.0.0.1:8848 + application: + name: cacheGlass + redis: + database: 0 + host: 127.0.0.1 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-prod.yml b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-prod.yml new file mode 100644 index 0000000..74b6d6c --- /dev/null +++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application-prod.yml @@ -0,0 +1,27 @@ +spring: + datasource: + dynamic: + primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster + strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + datasource: + hangzhoumes: + url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8 + username: root + password: beibo.123/ + driver-class-name: com.mysql.cj.jdbc.Driver + 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 + application: + name: cacheGlass + redis: + database: 0 + host: 10.153.19.150 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml index 936cde1..b051f7b 100644 --- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml +++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/application.yml @@ -3,8 +3,8 @@ spring: datasource: dynamic: - primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster - strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + primary: hangzhoumes #设置默认的数据源或者数据源组,默认值即为master + strict: false #设置严格模式,默认false不启动. 启动后在未匹配到指定数据源时候回抛出异常,不启动会使用默认数据源. datasource: hangzhoumes: url: jdbc:mysql://localhost:3306/hangzhoumes?serverTimezone=GMT%2b8 diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/pom.xml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/pom.xml index 4ecea3c..cb109f5 100644 --- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/pom.xml +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/pom.xml @@ -12,12 +12,6 @@ <artifactId>cacheVerticalGlass</artifactId> <dependencies> - - <dependency> - <groupId>com.github.yulichang</groupId> - <artifactId>mybatis-plus-join</artifactId> - <version>1.1.6</version> - </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-dev.yml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-dev.yml new file mode 100644 index 0000000..b4d7552 --- /dev/null +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/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 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-loc.yml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-loc.yml new file mode 100644 index 0000000..2454814 --- /dev/null +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-loc.yml @@ -0,0 +1,25 @@ +spring: + datasource: + dynamic: + primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster + strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + datasource: + hangzhoumes: + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8 + username: root + password: root + 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 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-prod.yml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-prod.yml new file mode 100644 index 0000000..25593bb --- /dev/null +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application-prod.yml @@ -0,0 +1,25 @@ +spring: + datasource: + dynamic: + primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster + strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + datasource: + hangzhoumes: + url: jdbc:mysql://10.153.19.150: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 + cloud: + nacos: + discovery: + server-addr: 10.153.19.150:8848 + redis: + database: 0 + host: 10.153.19.150 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml index 71c5cb3..8f86c1c 100644 --- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/application.yml @@ -2,32 +2,10 @@ port: 8082 spring: - datasource: - dynamic: - primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster - strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. - datasource: - hangzhoumes: - url: jdbc:mysql://10.153.19.150: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 - cloud: - nacos: - discovery: - server-addr: 10.153.19.150:8848 + profiles: + active: prod application: name: cacheVerticalGlass - redis: - database: 0 - host: 10.153.19.150 - port: 6379 - password: 123456 mybatis-plus: mapper-locations: classpath*:mapper/*.xml configuration: diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java index b6d0cba..fa3ec49 100644 --- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java @@ -20,6 +20,7 @@ //寮�濮�/鏆傚仠浠诲姟 @Override public boolean changeTask(String projectId, Integer state) { + //浣跨敤projectId浣滀负鏉′欢淇敼state瀛楁 LambdaUpdateChainWrapper<Engineering> wrapper = new LambdaUpdateChainWrapper<>(this.getBaseMapper()); wrapper.set(Engineering::getState,state); wrapper.eq(Engineering::getEngineerId,projectId); diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java new file mode 100644 index 0000000..d3c4324 --- /dev/null +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java @@ -0,0 +1,33 @@ +package com.mes.job; + +import cn.hutool.json.JSONObject; +import com.mes.workstation.service.UpWorkstationService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class PlcLoadGlassTask { + + @Autowired + private UpWorkstationService upWorkstationService; + + + /** + * fixedRate : 涓婁竴涓皟鐢ㄥ紑濮嬪悗鍐嶆璋冪敤鐨勫欢鏃讹紙涓嶇敤绛夊緟涓婁竴娆¤皟鐢ㄥ畬鎴愶級 + * fixedDelay : 涓婁竴涓皟鐢ㄧ粨鏉熷悗鍐嶆璋冪敤鐨勫欢鏃� + */ + @Scheduled(fixedDelay = 300) + public void plcLoadGlassTask() throws InterruptedException { + JSONObject jsonObject = new JSONObject(); + try { + Thread.sleep(300); + upWorkstationService.selectPriority(); + } catch (Exception e) { + e.printStackTrace(); + } + } + +} \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/controller/UpWorkstationController.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/controller/UpWorkstationController.java index 57b043d..0534009 100644 --- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/controller/UpWorkstationController.java +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/controller/UpWorkstationController.java @@ -45,14 +45,14 @@ return Result.build(200, "", upwork); } - @ApiOperation("寮�濮嬩笂鐗囦换鍔�") - @PostMapping("/selectPriority") //璋冪敤涓婄墖浠诲姟 - @ResponseBody - public void selectPriority() { - UpWorkSequence work=upWorkstationService.selectPriority(); - log.info("鏄剧ず鍙笂鐨勭幓鐠冧俊鎭�:{}", work); - - } +// @ApiOperation("寮�濮嬩笂鐗囦换鍔�") +// @PostMapping("/selectPriority") //璋冪敤涓婄墖浠诲姟 +// @ResponseBody +// public void selectPriority() { +// UpWorkSequence work=upWorkstationService.selectPriority(); +// log.info("鏄剧ず鍙笂鐨勭幓鐠冧俊鎭�:{}", work); +// +// } } diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/service/UpWorkstationService.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/service/UpWorkstationService.java index 39d44e3..4c2638b 100644 --- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/service/UpWorkstationService.java +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/service/UpWorkstationService.java @@ -18,7 +18,7 @@ //鍒ゆ柇浼樺厛鍚哥墖浣嶇疆鍚庡彂閫佸嚭鐗囦换鍔� - public UpWorkSequence selectPriority(); + UpWorkSequence selectPriority(); //鏌ヨ姝e湪杩涜鐨勫伐绋� diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/service/impl/UpWorkstationServiceImpl.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/service/impl/UpWorkstationServiceImpl.java index 18d8b4b..ffd6491 100644 --- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/service/impl/UpWorkstationServiceImpl.java +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/service/impl/UpWorkstationServiceImpl.java @@ -2,12 +2,16 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.mes.uppattenusage.entity.UpPattenUsage; +import com.mes.uppattenusage.mapper.UpPattenUsageMapper; import com.mes.workstation.entity.UpWorkSequence; import com.mes.workstation.entity.UpWorkstation; import com.mes.workstation.mapper.UpWorkstationMapper; import com.mes.workstation.service.UpWorkstationService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; /** * <p> @@ -19,8 +23,10 @@ */ @Service @Slf4j -public class UpWorkstationServiceImpl extends ServiceImpl<UpWorkstationMapper, UpWorkstation> implements UpWorkstationService { +public class UpWorkstationServiceImpl extends ServiceImpl<UpWorkstationMapper, UpWorkstation> implements UpWorkstationService { + @Resource + UpPattenUsageMapper upPattenUsageMapper; public static final String DB_100_10 = "DB_100_10"; //鍒ゆ柇鏄惁鍙互鍚哥墖杩涜浠诲姟 @@ -33,12 +39,17 @@ //鍒ゆ柇浼樺厛鍚哥墖浣嶇疆鍚庡彂閫佸嚭鐗囦换鍔� + public UpWorkSequence selectPriority() { UpWorkSequence upwork= this.baseMapper.selectPriority(1); - String start = "鍚哥墖淇″彿";//plcmes.getPlcParameter("鍚哥墖淇″彿").getValue(); - if(upwork!=null&&start.equals("1")){ + String start = "1";//plcmes.getPlcParameter("鍚哥墖淇″彿").getValue(); + UpPattenUsage uplist=new UpPattenUsage(); + if(start.equals("1")){ //鍙戦�佸嚭鐗囦换鍔� - //plcmes.getPlcParameter("鍑虹墖淇″彿").setValue("1"); + UpdateWrapper<UpPattenUsage> updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("state",1).last("LIMIT 1"); + uplist= upPattenUsageMapper.selectOne(updateWrapper); + log.info("鏌ヨ鍑烘湰娆″嚭鐗囩殑鐜荤拑淇℃伅[]",uplist); } return upwork; } diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-dev.yml b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-dev.yml new file mode 100644 index 0000000..a4d1cac --- /dev/null +++ b/hangzhoumesParent/moduleService/LoadGlassModule/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 + 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: + server-addr: 127.0.0.1:8848 + redis: + database: 0 + host: 127.0.0.1 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-loc.yml b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-loc.yml new file mode 100644 index 0000000..cc53ca6 --- /dev/null +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-loc.yml @@ -0,0 +1,25 @@ +spring: + datasource: + dynamic: + primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster + strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + datasource: + hangzhoumes: + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8 + username: root + password: root + driver-class-name: com.mysql.cj.jdbc.Driver + pp: + url: jdbc:mysql://192.168.56.10:3306/pp?serverTimezone=GMT%2b8 + username: root + password: root + driver-class-name: com.mysql.cj.jdbc.Driver + cloud: + nacos: + discovery: + server-addr: 127.0.0.1:8848 + redis: + database: 0 + host: 127.0.0.1 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-prod.yml b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-prod.yml new file mode 100644 index 0000000..c372c41 --- /dev/null +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-prod.yml @@ -0,0 +1,25 @@ +spring: + datasource: + dynamic: + primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster + strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + datasource: + hangzhoumes: + url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8 + username: root + password: beibo.123/ + driver-class-name: com.mysql.cj.jdbc.Driver + 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 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application.yml index ae352b3..94840e1 100644 --- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application.yml +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application.yml @@ -1,33 +1,10 @@ server: port: 8083 - spring: - datasource: - dynamic: - primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster - strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. - datasource: - hangzhoumes: - url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8 - username: root - password: beibo.123/ - driver-class-name: com.mysql.cj.jdbc.Driver - 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 + profiles: + active: prod application: name: loadGlass - redis: - database: 0 - host: 10.153.19.150 - port: 6379 - password: 123456 mybatis-plus: mapper-locations: classpath*:mapper/*.xml configuration: diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/test/java/com/mes/LoadGlassModuleApplicationTest.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/test/java/com/mes/LoadGlassModuleApplicationTest.java index 16d3ca2..afb83c3 100644 --- a/hangzhoumesParent/moduleService/LoadGlassModule/src/test/java/com/mes/LoadGlassModuleApplicationTest.java +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/test/java/com/mes/LoadGlassModuleApplicationTest.java @@ -1,7 +1,10 @@ package com.mes; +import com.mes.glassinfo.entity.GlassInfo; +import com.mes.glassinfo.service.GlassInfoService; import com.mes.pp.mapper.OptimizeProjectMapper; import com.mes.uppattenusage.entity.OptimizeUpPattenUsage; +import com.mes.uppattenusage.entity.UpPattenUsage; import com.mes.uppattenusage.service.impl.UpPattenUsageServiceImpl; import lombok.extern.slf4j.Slf4j; import org.junit.Test; @@ -29,7 +32,8 @@ private OptimizeProjectMapper optimizeProjectMapper; @Autowired private UpPattenUsageServiceImpl upPattenUsageService; - + @Autowired + private GlassInfoService glassInfoService; @Test public void test() { // List<OptimizeProject> list = optimizeProjectMapper.saveProject("P24032204"); @@ -44,7 +48,12 @@ @Test public void testFindPa() { - List<Map> glass = upPattenUsageService.saveUpPattenUsage("P24032204"); + List<UpPattenUsage> glass = upPattenUsageService.selectSaveUpPattenUsage("P24032204"); log.info("瀹屾暣璺緞锛歿}", Arrays.asList(glass)); } + @Test + public void textglassinfo(){ + List<GlassInfo> glass= glassInfoService.selectGlassInfo("P24032204"); + log.info("glassinfo锛歿}", Arrays.asList(glass)); + } } diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/controller/TemperingGlassInfoController.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/controller/TemperingGlassInfoController.java index c78f5bf..2fbfdcc 100644 --- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/controller/TemperingGlassInfoController.java +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/controller/TemperingGlassInfoController.java @@ -1,48 +1,53 @@ package com.mes.temperingglass.controller; import com.mes.temperingglass.entity.TemperingGlassInfo; +import com.mes.temperingglass.service.TemperingAgoService; import com.mes.temperingglass.service.TemperingOverService; import com.mes.temperingglass.service.TemperingService; import com.mes.utils.Result; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; +/** + * @author SNG-010 + */ @RestController @RequestMapping("/temperingGlassInfo") - +@Slf4j // TidyUpGlassModule 閽㈠寲妯″潡 public class TemperingGlassInfoController { @Autowired TemperingService temperingService; - @Autowired private TemperingOverService temperingOverService; + @Autowired + private TemperingAgoService temperingAgoService; - @PostMapping("/SelectWaitingGlass") // 鏌ヨ閽㈠寲绛夌墖涓殑鐗堝浘淇℃伅,鐘舵�佷负1鐨勪负宸插埌,鐘舵�佷负0鐨勪负绛夊緟涓� - @ResponseBody - public Result SelectWaitingGlass(@RequestParam(name = "ProcessId", required = false) String ProcessId) { - List<TemperingGlassInfo> glass = temperingService.SelectWaitingGlass(); - System.out.println(glass); + @ApiOperation("鏌ヨ閽㈠寲绛夌墖涓殑鐗堝浘淇℃伅,鐘舵�佷负1鐨勪负宸插埌,鐘舵�佷负0鐨勪负绛夊緟涓�") + @GetMapping("/selectWaitingGlass") // 鏌ヨ閽㈠寲绛夌墖涓殑鐗堝浘淇℃伅,鐘舵�佷负1鐨勪负宸插埌,鐘舵�佷负0鐨勪负绛夊緟涓� + public Result <List<TemperingGlassInfo>> selectWaitingGlass() { + List<TemperingGlassInfo> glass = temperingAgoService.selectWaitingGlass(); + log.info("绛夊緟涓殑鐜荤拑淇℃伅{}",glass); return Result.build(200, "", glass); } - - @GetMapping("/SelectIntoGlass") // 鏌ヨ杩涚倝涓殑閽㈠寲绛夌墖涓殑鐗堝浘淇℃伅,鐘舵�佸叏涓�1鐨勪负宸插埌銆� - @ResponseBody - public Result SelectIntoGlass(String ProcessId) { - List<TemperingGlassInfo> glass = temperingService.SelectIntoGlass(); - System.out.println(glass); + @ApiOperation("鏌ヨ杩涚倝涓殑閽㈠寲绛夌墖涓殑鐗堝浘淇℃伅,鐘舵�佸叏涓�1鐨勪负宸插埌銆�") + @GetMapping("/selectIntoGlass") // 鏌ヨ杩涚倝涓殑閽㈠寲绛夌墖涓殑鐗堝浘淇℃伅,鐘舵�佸叏涓�1鐨勪负宸插埌銆� + public Result <List<TemperingGlassInfo>> selectIntoGlass() { + List<TemperingGlassInfo> glass = temperingAgoService.selectIntoGlass(); + log.info("杩涚倝涓殑鐜荤拑鐗堝浘淇℃伅{}",glass); return Result.build(200, "", glass); } - - @GetMapping("/SelectOutGlass") //閽㈠寲鍚庢樉绀哄嚭鐐夌殑鐗堝浘淇℃伅 - @ResponseBody - public Result SelectOutGlass(String ProcessId) { - List<TemperingGlassInfo> glass = temperingOverService.SelectOutGlass(); - System.out.println(glass); + @ApiOperation("//閽㈠寲鍚庢樉绀哄嚭鐐夌殑鐗堝浘淇℃伅銆�") + @GetMapping("/selectOutGlass") //閽㈠寲鍚庢樉绀哄嚭鐐夌殑鐗堝浘淇℃伅 + public Result <List<TemperingGlassInfo>> selectOutGlass() { + List<TemperingGlassInfo> glass = temperingAgoService.SelectOutGlass(); + log.info("閽㈠寲鍑虹倝鍚庣殑鐜荤拑淇℃伅{}",glass); return Result.build(200, "", glass); } diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/mapper/TemperingGlassInfoMapper.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/mapper/TemperingGlassInfoMapper.java index adc5786..16bb9f2 100644 --- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/mapper/TemperingGlassInfoMapper.java +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/mapper/TemperingGlassInfoMapper.java @@ -1,6 +1,7 @@ package com.mes.temperingglass.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.github.yulichang.base.MPJBaseMapper; import com.mes.temperingglass.entity.TemperingGlassInfo; /** @@ -11,6 +12,6 @@ * @author zhoush * @since 2024-04-07 */ -public interface TemperingGlassInfoMapper extends BaseMapper<TemperingGlassInfo> { +public interface TemperingGlassInfoMapper extends BaseMapper<TemperingGlassInfo>, MPJBaseMapper<TemperingGlassInfo> { } diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/TemperingAgoService.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/TemperingAgoService.java new file mode 100644 index 0000000..af0cfbb --- /dev/null +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/TemperingAgoService.java @@ -0,0 +1,23 @@ +package com.mes.temperingglass.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.mes.temperingglass.entity.TemperingGlassInfo; +import com.github.yulichang.base.MPJBaseService; +import java.util.List; + +/** + * <p> + * 鏈嶅姟绫� + * </p> + * + * @author zhoush + * @since 2024-04-07 + */ +public interface TemperingAgoService extends MPJBaseService<TemperingGlassInfo> { + + List<TemperingGlassInfo> selectWaitingGlass(); + + List<TemperingGlassInfo> selectIntoGlass(); + + List<TemperingGlassInfo> SelectOutGlass(); +} diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/TemperingGlassInfoService.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/TemperingGlassInfoService.java deleted file mode 100644 index 36e9d45..0000000 --- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/TemperingGlassInfoService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.mes.temperingglass.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.mes.temperingglass.entity.TemperingGlassInfo; - -/** - * <p> - * 鏈嶅姟绫� - * </p> - * - * @author zhoush - * @since 2024-04-07 - */ -public interface TemperingGlassInfoService extends IService<TemperingGlassInfo> { - -} diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/impl/TemperingAgoServiceImpl.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/impl/TemperingAgoServiceImpl.java new file mode 100644 index 0000000..4e00b7f --- /dev/null +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/impl/TemperingAgoServiceImpl.java @@ -0,0 +1,55 @@ +package com.mes.temperingglass.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.yulichang.query.MPJQueryWrapper; +import com.mes.temperingglass.entity.TemperingGlassInfo; +import com.mes.temperingglass.mapper.TemperingGlassInfoMapper; +import com.mes.temperingglass.mapper.TemperingMapper; +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.Collections; +import java.util.List; + +/** + * <p> + * 鏈嶅姟瀹炵幇绫� + * </p> + * + * @author zhoush + * @since 2024-04-07 + */ +@Service +public class TemperingAgoServiceImpl extends MPJBaseServiceImpl<TemperingGlassInfoMapper, TemperingGlassInfo> implements TemperingAgoService { + @Autowired + TemperingMapper temperingMapper; + + @Override + public List<TemperingGlassInfo> selectWaitingGlass() { + //鑾峰彇绛夊緟杩涚倝涓殑鐜荤拑淇℃伅 + QueryWrapper<TemperingGlassInfo> wrapper = new QueryWrapper<>(); + wrapper.inSql("flowcard_id", "select flowcard_id from tempering_glass_info GROUP BY flowcard_id,state having count(state) = 2"); + return temperingMapper.selectList(wrapper); + } + + @Override + public List<TemperingGlassInfo> selectIntoGlass() { + //鑾峰彇杩涚倝涓殑鐜荤拑淇℃伅 + QueryWrapper<TemperingGlassInfo> wrapper = new QueryWrapper<>(); + wrapper.inSql("flowcard_id", "select flowcard_id from tempering_glass_info where state=1 GROUP BY flowcard_id,state having count(state) = 1"); + + return temperingMapper.selectList(wrapper); + } + + @Override + public List<TemperingGlassInfo> SelectOutGlass() { + //鑾峰彇鍑虹倝涓殑鐜荤拑淇℃伅 + QueryWrapper<TemperingGlassInfo> wapper = new QueryWrapper<>(); + wapper.eq("state", 3); + return temperingMapper.selectList(wapper); + } +} diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java deleted file mode 100644 index 0687213..0000000 --- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.mes.temperingglass.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.mes.temperingglass.entity.TemperingGlassInfo; -import com.mes.temperingglass.mapper.TemperingGlassInfoMapper; -import com.mes.temperingglass.service.TemperingGlassInfoService; -import org.springframework.stereotype.Service; - -/** - * <p> - * 鏈嶅姟瀹炵幇绫� - * </p> - * - * @author zhoush - * @since 2024-04-07 - */ -@Service -public class TemperingGlassInfoServiceImpl extends ServiceImpl<TemperingGlassInfoMapper, TemperingGlassInfo> implements TemperingGlassInfoService { - -} diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-dev.yml b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-dev.yml new file mode 100644 index 0000000..f02ebee --- /dev/null +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-dev.yml @@ -0,0 +1,22 @@ +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 + cloud: + nacos: + discovery: + server-addr: 127.0.0.1:8848 + application: + name: temperingGlass + redis: + database: 0 + host: 127.0.0.1 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-loc.yml b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-loc.yml new file mode 100644 index 0000000..1e4042f --- /dev/null +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-loc.yml @@ -0,0 +1,22 @@ +spring: + datasource: + dynamic: + primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster + strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + datasource: + hangzhoumes: + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8 + username: root + password: root + driver-class-name: com.mysql.cj.jdbc.Driver + cloud: + nacos: + discovery: + server-addr: 127.0.0.1:8848 + application: + name: temperingGlass + redis: + database: 0 + host: 127.0.0.1 + port: 6379 + password: 123456 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-prod.yml b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-prod.yml new file mode 100644 index 0000000..9fb2c6f --- /dev/null +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application-prod.yml @@ -0,0 +1,20 @@ +spring: + datasource: + dynamic: + primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster + strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + datasource: + hangzhoumes: + url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?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 \ No newline at end of file diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml index a84c58e..e9fcc1e 100644 --- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml @@ -1,27 +1,10 @@ server: port: 8084 spring: - datasource: - dynamic: - primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster - strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. - datasource: - hangzhoumes: - url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?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 + profiles: + active: prod application: name: temperingGlass - redis: - database: 0 - host: 10.153.19.150 - port: 6379 - password: 123456 mybatis-plus: mapper-locations: classpath*:mapper/*.xml configuration: diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/test/java/com/mes/TemperingApplicationTest.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/test/java/com/mes/TemperingApplicationTest.java new file mode 100644 index 0000000..426a339 --- /dev/null +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/test/java/com/mes/TemperingApplicationTest.java @@ -0,0 +1,55 @@ +package com.mes; + +import com.mes.glassinfo.entity.GlassInfo; +import com.mes.glassinfo.service.GlassInfoService; +import com.mes.pp.mapper.OptimizeProjectMapper; +import com.mes.temperingglass.entity.TemperingGlassInfo; +import com.mes.temperingglass.service.TemperingAgoService; +import com.mes.uppattenusage.entity.UpPattenUsage; +import com.mes.uppattenusage.service.impl.UpPattenUsageServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import javax.annotation.Resource; +import java.util.Arrays; +import java.util.List; + +/** + * @Author : zhoush + * @Date: 2024/3/27 16:37 + * @Description: + */ +@Slf4j +@RunWith(SpringRunner.class) +@SpringBootTest(classes = TemperingGlassModuleApplication.class) +public class TemperingApplicationTest { + + @Resource + private OptimizeProjectMapper optimizeProjectMapper; + @Autowired + private TemperingAgoService temperingAgoService; + @Autowired + private GlassInfoService glassInfoService; + + + @Test + public void testFindPa() { + List<TemperingGlassInfo> glass = temperingAgoService.selectIntoGlass(); + log.info("杩涚倝涓殑鐜荤拑锛歿}", Arrays.asList(glass)); + } + @Test + public void testFindPa2() { + List<TemperingGlassInfo> glass = temperingAgoService.SelectOutGlass(); + log.info("宸插嚭涓殑鐜荤拑锛歿}", Arrays.asList(glass)); + } + + @Test + public void testFindPa3() { + List<TemperingGlassInfo> glass = temperingAgoService.selectWaitingGlass(); + log.info("绛夊緟涓殑鐜荤拑锛歿}", Arrays.asList(glass)); + } +} diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/UnLoadGlassApplication.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/UnLoadGlassApplication.java index f3d0880..9ce9047 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/UnLoadGlassApplication.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/UnLoadGlassApplication.java @@ -7,6 +7,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.scheduling.annotation.EnableScheduling; import springfox.documentation.swagger2.annotations.EnableSwagger2; /** @@ -19,6 +20,7 @@ @EnableSwagger2 @EnableDiscoveryClient @MapperScan(basePackages = "com.mes.*.mapper") +@EnableScheduling public class UnLoadGlassApplication { diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/Plcdownglass.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/Plcdownglass.java index 56b0c56..48861a2 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/Plcdownglass.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/Plcdownglass.java @@ -2,24 +2,21 @@ import cn.hutool.json.JSONObject; -import com.mes.device.PlcParameterObject; -import com.mes.downglassinfo.entity.DownGlassTask; -import com.mes.downglassinfo.service.DownGlassTaskService; -import com.mes.downstorage.entity.DownStorageCageDetails; -import com.mes.downstorage.mapper.DownStorageCageDetailsMapper; import com.mes.downstorage.service.DownStorageCageService; import com.mes.downworkstation.service.DownWorkstationService; -import com.mes.glassinfo.entity.GlassInfo; -import com.mes.glassinfo.service.GlassInfoService; + + import com.mes.tools.WebSocketServer; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; import java.util.List; -import java.util.function.Supplier; +@Component @Slf4j -public class Plcdownglass extends Thread { +public class Plcdownglass { public static final String RESULT_IN = "1"; public static final String RESULT_OUT = "2"; @@ -28,54 +25,41 @@ @Autowired private DownStorageCageService downStorageCageService; @Autowired - private DownWorkstationService downWorkstationService; - -// private final Supplier<DownWorkstationService> plcServiceSupplier; -// -// public Plcdownglass() { -// this.plcServiceSupplier = () -> WebSocketServer.applicationContext.getBean(DownWorkstationService.class); -// } + private DownWorkstationService downWorkstationService; + @Scheduled(fixedDelay = 300) + public void PlcdownglassTask() throws InterruptedException { + JSONObject jsonObject = new JSONObject(); + try { + Thread.sleep(300); - @Override - public void run() { - while (this != null) { - JSONObject jsonObject = new JSONObject(); - try { - Thread.sleep(100); - downWorkstationService = WebSocketServer.applicationContext.getBean(DownWorkstationService.class); - downStorageCageService = WebSocketServer.applicationContext.getBean(DownStorageCageService.class); - // String result = S7control.getinstance().ReadWord("DB14.0", 1).get(0) + ""; + + // String result = S7control.getinstance().ReadWord("DB14.0", 1).get(0) + ""; // String number = S7control.getinstance().ReadWord("DB14.2", 1).get(0) + ""; - String result ="1"; - String number ="1"; - // 杩涚墖璇锋眰 - if (RESULT_IN.equals(result)) { + String result = "2"; + String number = "1"; + // 杩涚墖璇锋眰 + if (RESULT_IN.equals(result)) { + downStorageCageService.processInto(number); + } + // 鍑虹墖璇锋眰 + else if (RESULT_OUT.equals(result)) { + downStorageCageService.processOut(); + } + // 杩涘嚭鐗囪姹� + else if (RESULT_IN_OUT.equals(result)) { + // 鍏堝嚭鍚庤繘 + if (!downStorageCageService.processOut()) { downStorageCageService.processInto(number); } - // 鍑虹墖璇锋眰 - else if (RESULT_OUT.equals(result)) { - downStorageCageService.processOut(); - } - // 杩涘嚭鐗囪姹� - else if (RESULT_IN_OUT.equals(result)) { - // 鍏堝嚭鍚庤繘 - if (!downStorageCageService.processOut()) { - downStorageCageService.processInto(number); - } - } - - - downWorkstationService.insertdownglassinfo(); - - - - - } catch (Exception e) { - e.printStackTrace(); } - } + //涓嬬墖鏇存柊 + downWorkstationService.insertdownglassinfo(); + } catch (Exception e) { + e.printStackTrace(); + } } + } \ No newline at end of file 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 232b7b7..5903d00 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 @@ -71,5 +71,8 @@ */ private Integer taskStauts; - + /** + * 鐜荤拑id + */ + private String glassId; } diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassInfoService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassInfoService.java index 7ba3394..2feead5 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassInfoService.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassInfoService.java @@ -6,8 +6,15 @@ public interface DownGlassInfoService extends IService<DownGlassInfo> { + /** + * @param flowCardId + * @return // 鏍规嵁娴佺▼鍗″彿鏌ヨ鏈�澶у簭鍙� + */ Integer getMaxSequenceByFlowCardId(String flowCardId); + /** + * @param downGlassInfo 鎻掑叆涓嬬墖淇℃伅 + */ void insertDownGlassInfo(DownGlassInfo downGlassInfo); diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassTaskService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassTaskService.java index cd1141e..4521c5a 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassTaskService.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassTaskService.java @@ -14,21 +14,51 @@ * @since 2024-04-07 */ public interface DownGlassTaskService extends IService<DownGlassTask> { - + /** + * 鏌ヨ浠诲姟鐘舵�佷负1鐨勪俊鎭� + * + * @return + */ List<DownGlassTask> getUnloadingTaskState(); + /** + * 鏇存柊浠诲姟鐘舵�� + * + * @return + */ void updateTaskStateToZero(long id); + /** + * 鍒犻櫎浠诲姟 + * + * @return + */ void deleteTask(String id); - - DownGlassTask selectLastOutCacheInfo(String endCell); - - Integer insertCacheTask(DownGlassTask downGlassTask); - - List<DownGlassTask> selectInputTaskCache(); /** * 鏌ヨ鍑虹墖浠诲姟 + * + * @return + */ + DownGlassTask selectLastOutCacheInfo(String endCell); + + /** + * 鎻掑叆浠诲姟 + * + * @return + */ + Integer insertCacheTask(DownGlassTask downGlassTask); + + /** + * 鏌ヨ杩涚墖浠诲姟 + * + * @return + */ + List<DownGlassTask> selectInputTaskCache(); + + /** + * 鏌ヨ鍑虹墖浠诲姟 澶囩敤 + * * @return */ List<DownGlassTask> selectOutTaskCache(); diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java index f66cf65..66783be 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java @@ -1,6 +1,8 @@ package com.mes.downglassinfo.service.impl; +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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mes.downglassinfo.entity.DownGlassInfo; import com.mes.downglassinfo.entity.DownGlassTask; @@ -22,25 +24,21 @@ // 鏍规嵁娴佺▼鍗″彿鏌ヨ鏈�澶у簭鍙� @Override public Integer getMaxSequenceByFlowCardId(String flowCardId) { - QueryWrapper<DownGlassInfo> queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("flow_card_id", flowCardId); - queryWrapper.orderByDesc("sequence"); // 鎸夌収搴忓彿鍊掑簭鎺掑簭 - queryWrapper.select("sequence").last("LIMIT 1"); // 閫夋嫨鏈�澶у簭鍙峰苟闄愬埗缁撴灉涓�1鏉¤褰� - DownGlassInfo downGlassInfo = baseMapper.selectOne(queryWrapper); - if (downGlassInfo != null) { - return downGlassInfo.getSequence(); - } - return 0; + LambdaQueryWrapper<DownGlassInfo> lambdaQueryWrapper = Wrappers.lambdaQuery(); + lambdaQueryWrapper.eq(DownGlassInfo::getFlowCardId, flowCardId) + .select(DownGlassInfo::getSequence) + .orderByDesc(DownGlassInfo::getSequence) + .last("LIMIT 1"); + + DownGlassInfo downGlassInfo = baseMapper.selectOne(lambdaQueryWrapper); + return downGlassInfo != null ? downGlassInfo.getSequence() : 0; } + @Override public void insertDownGlassInfo(DownGlassInfo downGlassInfo) { baseMapper.insert(downGlassInfo); } - - - - } 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 8389edd..8feea50 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 @@ -8,6 +8,7 @@ import com.mes.downglassinfo.entity.DownGlassTask; import com.mes.downglassinfo.mapper.DownGlassTaskMapper; import com.mes.downglassinfo.service.DownGlassTaskService; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import java.util.List; @@ -35,7 +36,7 @@ public void updateTaskStateToZero(long id) { UpdateWrapper<DownGlassTask> updateWrapper = new UpdateWrapper<>(); updateWrapper.set("task_stauts", 0).eq("id", id); - baseMapper.update(null, updateWrapper); + baseMapper.update(new DownGlassTask(), updateWrapper); } @Override @@ -59,39 +60,39 @@ @Override public Integer insertCacheTask(DownGlassTask downGlassTask) { - DownGlassTask glassInfo = new DownGlassTask(); - glassInfo.setId(downGlassTask.getId()); - glassInfo.setStartCell(downGlassTask.getStartCell()); - glassInfo.setEndCell(downGlassTask.getEndCell()); - glassInfo.setTaskType(downGlassTask.getTaskType()); - glassInfo.setWidth(downGlassTask.getWidth()); - glassInfo.setHeight(downGlassTask.getHeight()); - glassInfo.setFilmsid(downGlassTask.getFilmsid()); - glassInfo.setThickness(downGlassTask.getThickness()); - glassInfo.setFlowCardId(downGlassTask.getFlowCardId()); - glassInfo.setTaskStauts(0); // 榛樿浠诲姟鐘舵�佷负0 + // 鏌ヨ鏁版嵁搴擄紝妫�鏌ヤ富閿�兼槸鍚﹀凡缁忓瓨鍦� + DownGlassTask existingTask = baseMapper.selectById(downGlassTask.getId()); + if (existingTask != null) { + // 濡傛灉宸插瓨鍦ㄧ浉鍚屼富閿�肩殑浠诲姟锛屽垯涓嶈繘琛屾彃鍏ユ搷浣滐紝杩斿洖 null 鎴栬�呮姏鍑哄紓甯� + // 杩欓噷绠�鍗曡捣瑙侊紝鐩存帴杩斿洖 null + return null; + } - int rows = baseMapper.insert(glassInfo); + // 濡傛灉涓婚敭鍊间笉瀛樺湪锛屽垯杩涜鎻掑叆鎿嶄綔 + DownGlassTask newDownGlassTask = new DownGlassTask(); + BeanUtils.copyProperties(downGlassTask, newDownGlassTask); + newDownGlassTask.setTaskStauts(0); // 榛樿浠诲姟鐘舵�佷负0 + + int rows = baseMapper.insert(newDownGlassTask); return rows > 0 ? rows : null; } - @Override - public List<DownGlassTask> selectInputTaskCache(){ - return baseMapper.selectList(new QueryWrapper<DownGlassTask>().eq("task_status",0).eq("task_type",1)); + public List<DownGlassTask> selectInputTaskCache() { + return baseMapper.selectList(new QueryWrapper<DownGlassTask>().eq("task_status", 0).eq("task_type", 1)); } /** * 鏌ヨ寰呭嚭鐗囦换鍔� + * * @return */ @Override - public List<DownGlassTask> selectOutTaskCache(){ - return baseMapper.selectList(new QueryWrapper<DownGlassTask>().eq("task_status",0).eq("task_type",2)); + public List<DownGlassTask> selectOutTaskCache() { + return baseMapper.selectList(new QueryWrapper<DownGlassTask>().eq("task_status", 0).eq("task_type", 2)); } - } diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/controller/DownStorageCageDetailsController.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/controller/DownStorageCageDetailsController.java index 17a62f7..31c1308 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/controller/DownStorageCageDetailsController.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/controller/DownStorageCageDetailsController.java @@ -34,7 +34,7 @@ @GetMapping("/selectStorageCage") @ResponseBody public Result selectEdgStorageCage () { - List<Map> list=downStorageCageService.getCacheInfo(); + List<Map> list=downStorageCageDetailsService.getCacheInfo(); return Result.build(200,"鎴愬姛",list); } diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/entity/DownStorageCage.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/entity/DownStorageCage.java index 1617790..c5cc426 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/entity/DownStorageCage.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/entity/DownStorageCage.java @@ -1,6 +1,7 @@ package com.mes.downstorage.entity; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -48,6 +49,7 @@ * 鍚敤鐘舵�� */ @ApiModelProperty(value = "鍚敤鐘舵��", position = 5) + @TableField("enable_state") private String enableState; /** diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/entity/DownStorageCageDetails.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/entity/DownStorageCageDetails.java index c5b11a4..9298084 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/entity/DownStorageCageDetails.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/entity/DownStorageCageDetails.java @@ -86,7 +86,7 @@ /** * 鑶滅郴id */ - private int filmsid; + private String filmsid; /** * 鐘舵�� */ 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 277a0aa..78b15e4 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 @@ -7,11 +7,49 @@ import java.util.Map; public interface DownStorageCageDetailsService { - + /** + * @return //娣诲姞鐞嗙墖绗煎唴淇℃伅 + */ void addDownStorageCageDetails(DownStorageCageDetails details); - //淇敼鐞嗙墖绗煎唴淇℃伅 + + /** + * @return //淇敼鐞嗙墖绗煎唴淇℃伅 + */ boolean updatedownStorageCageDetails(DownStorageCageDetails details); + List<DownStorageCageDetails> getCacheLeisure(); + + /** + * @param start + * @param end + * @return 鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗� + */ + List<DownStorageCageDetails> getCacheOut(int start, int end); + + /** + * @return 鏌ヨ绗煎瓙鍐呬俊鎭� + */ + List<Map> getCacheInfo(); + + + /** + * @param flowcardid + * @param width + * @return 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿 鎵惧埌绌烘牸 + */ + List<DownStorageCageDetails> getIsExistIntoCacheByflowcardid(String flowcardid, double width); + + /** + * @param start + * @param end + * @return log.info(" 鍗曠墖鎯呭喌鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓уぇ灏忓嚭鐗�, 骞朵笖浼樺厛鍑烘弧鏋剁殑灏忕墖 "); + */ List<DownStorageCageDetails> CacheOut(int start, int end); + + /** + * @return 鏌ヨ绌烘牸瀛� + */ + List<DownStorageCageDetails> selectCacheEmpty2(); + } 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 dc1627f..81a88a8 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 @@ -17,19 +17,26 @@ * @since 2024-03-27 */ public interface DownStorageCageService extends MPJBaseService<DownStorageCage> { - public List<Map> gettask(); + // List<Map<String, Object>> selectCacheLeisure(); - List<DownStorageCageDetails> getCacheLeisure(); - List<DownStorageCageDetails> getCacheOut(int start, int end); - List<Map> getCacheInfo(); - List<DownStorageCageDetails> getIsExistIntoCacheByLayoutAndSequence(Integer tempering_layout_id, Integer tempering_feed_sequence, double width); - List<DownStorageCageDetails> getIsExistIntoCacheByLayout(Integer tempering_layout_id, double width); - List<DownStorageCageDetails> getIsExistIntoCacheByflowcardid(String flowcardid, double width); - List<DownStorageCageDetails> IsExistIntoCacheByflowcardid(String flowcardid, double width); - List<Map> selectCacheEmpty(); - boolean processInto(String Number); - boolean processOut(); + /** + * @param Number + * @return 杩涚墖 + */ + boolean processInto(String Number); + + /** + + * @return 绌烘牸 + */ + + /** + * @return 鍑虹墖 + */ + boolean processOut(); + List<DownStorageCageDetails> selectCacheEmpty() ; + } 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 8a1813a..b5c01ee 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 @@ -6,9 +6,12 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.yulichang.toolkit.JoinWrappers; +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.glassinfo.entity.GlassInfo; import lombok.extern.slf4j.Slf4j; @@ -22,7 +25,8 @@ @Service public class DownStorageCageDetailsServiceImpl extends ServiceImpl<DownStorageCageDetailsMapper, DownStorageCageDetails> implements DownStorageCageDetailsService { - + @Autowired + private DownStorageCageMapper downStorageCageMapper; @Autowired private DownStorageCageDetailsMapper downStorageCageDetailsMapper; @Override @@ -41,22 +45,122 @@ @Override public List<DownStorageCageDetails> CacheOut(int start, int end) { - log.info("鍗曠墖鎯呭喌鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓уぇ灏忓嚭鐗囩殑灏忕墖"); + log.info("鍗曠墖鎯呭喌鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓уぇ灏忓嚭鐗�,骞朵笖浼樺厛鍑烘弧鏋剁殑灏忕墖"); return downStorageCageDetailsMapper.selectJoinList( DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() .select("t.*") .leftJoin("(SELECT t1.* FROM down_storage_cage_details t1 " - + "JOIN (SELECT flow_card_id, MAX(width) AS max_width FROM glass_info GROUP BY flow_card_id) t " - + "ON t1.flow_card_id = t.flow_card_id WHERE t1.width = t.max_width) t3" + + "JOIN (SELECT flow_card_id, MAX(width*height) AS max_width FROM glass_info GROUP BY flow_card_id) t " + + "ON t1.flow_card_id = t.flow_card_id WHERE t1.width*t1.height = t.max_width) t3" + " ON t.glass_id = t3.glass_id") .leftJoin("down_workstation t4 ON t3.flow_card_id = t4.flow_card_id") .isNull(Boolean.parseBoolean("t.glass_id"), "SELECT glass_id FROM down_glass_info") .between("t4.workstation_id", start, end) + // 鏍规嵁 racks_number 鎺掑簭 + .orderByDesc("t4.racks_number") + ); } - // Other business methods can be implemented here + + + + + + + + + + @Override + public List<DownStorageCageDetails> getCacheOut(int start, int end) { + log.info("鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗�"); + return downStorageCageMapper.selectJoinList( + DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() + .select("escd.*") + .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") + .leftJoin("down_workstation dw on escd.flow_card_id = dw.flow_card_id") + .leftJoin("glass_info gi on dw.flow_card_id = gi.flowcard_id and gi.flowcard_id=escd.flow_card_id ") + .isNotNull("escd.slot") + .between("dw.workstation_id", start, end) + .orderByDesc("escd.width") + .orderByDesc("escd.height") + ); + } + + + @Override + public List<DownStorageCageDetails> selectCacheEmpty2(){ + return downStorageCageMapper.selectJoinList( + DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() + .select("escd.glass_id","escd.flow_card_id","escd.width","escd.height") + .leftJoin("down_storage_cage_details escd on t.device_id=escd.device_id and t.slot=escd.slot") + .isNull("escd.slot") + ); + } + + + @Override + public List<Map> getCacheInfo() { + log.info(" 鏌ヨ绗煎瓙鍐呬俊鎭�"); + return downStorageCageMapper.selectJoinList( + Map.class, new MPJQueryWrapper<DownStorageCage>() + .select("escd.*") + .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") + .orderByAsc("t.slot") + ); + + } + + + + @Override + public List<DownStorageCageDetails> getCacheLeisure() { + log.info(" 鏌ヨ绗煎瓙鍐呯┖闂�"); + List<DownStorageCageDetails> list = downStorageCageMapper.selectJoinList( + DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() + .select("escd.*") + .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") + .isNull("escd.slot") + + .orderByAsc("escd.slot") + ); + return list; + } + + + @Override + public List<DownStorageCageDetails> getIsExistIntoCacheByflowcardid(String flowcardid, double width) { + log.info(" 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿 鎵惧埌绌烘牸"); + + return downStorageCageMapper.selectJoinList( + DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() + .select("escd.*") + .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") + .isNull("escd.slot") + .apply("t.remain_width - " + width + " > 0") + .orderByAsc("escd.sequence") + ); + + + + + } + + + + + + + + + + + + + + + } diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java index fe782a6..d1a6673 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java @@ -1,6 +1,6 @@ package com.mes.downstorage.service.impl; -import com.github.yulichang.query.MPJQueryWrapper; +import com.github.yulichang.toolkit.JoinWrappers; import com.mes.common.PLCAutoMes; import com.mes.common.S7control; import com.mes.device.PlcParameterObject; @@ -9,14 +9,13 @@ import com.mes.downstorage.entity.DownStorageCage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 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.downstorage.service.DownStorageCageService; import com.mes.glassinfo.entity.GlassInfo; import com.mes.glassinfo.service.GlassInfoService; -import com.mes.tools.WebSocketServer; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -38,167 +37,12 @@ private DownStorageCageMapper downStorageCageMapper; @Autowired - private DownStorageCageDetailsMapper downStorageCageDetailsMapper; - - @Autowired private GlassInfoService glassInfoService; @Autowired private DownGlassTaskService downGlassTaskService; @Autowired private DownStorageCageDetailsService downStorageCageDetailsService; - @Override - public List<Map> gettask(){ - downStorageCageMapper.selectList(null); -// downStorageCageMapper.selectJoin(); - return null; - }; - - - - @Override - public List<DownStorageCageDetails> getCacheLeisure() { - log.info(" 鏌ヨ绗煎瓙鍐呯┖闂�"); - List<DownStorageCageDetails> list = downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .isNull("escd.slot") - .orderByAsc("escd.slot") - ); - return list; - } - - - @Override - public List<Map> selectCacheEmpty(){ - return baseMapper.selectJoinList( - Map.class,new MPJQueryWrapper<DownStorageCage>().selectAll(DownStorageCage.class) - .select("escd.glass_id","escd.flow_card_id","escd.width","escd.height") - .leftJoin("down_storage_cage_details escd on t.device_id=escd.device_id and t.slot=escd.slot") - .isNull("escd.slot") - ); - } - - - - - - - - @Override - public List<DownStorageCageDetails> getCacheOut(int start, int end) { - log.info("鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗�"); - return downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .leftJoin("down_workstation dw on escd.flow_card_id = dw.flow_card_id") - .leftJoin("glass_info gi on dw.flow_card_id = gi.flowcard_id and gi.flowcard_id=escd.flow_card_id ") - .isNotNull("escd.slot") - .between("dw.workstation_id", start, end) - .orderByDesc("escd.width") - .orderByDesc("escd.height") - ); - } - - - - - - @Override - public List<Map> getCacheInfo() { - log.info(" 鏌ヨ绗煎瓙鍐呬俊鎭�"); - return downStorageCageMapper.selectJoinList( - Map.class, new MPJQueryWrapper<DownStorageCage>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .orderByAsc("t.slot") - ); - - } - - - - @Override - public List<DownStorageCageDetails> getIsExistIntoCacheByLayoutAndSequence(Integer tempering_layout_id, Integer tempering_feed_sequence, double width) { - log.info(" 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿 鎵惧埌鐩稿悓鐗堝浘id骞朵笖澶т簬鍓嶉潰鐨勯『搴忕殑绌烘牸"); - List<DownStorageCageDetails> list = downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .isNotNull("escd.slot") - .eq("escd.tempering_layout_id", tempering_layout_id) - .lt("escd.tempering_feed_sequence", tempering_feed_sequence) - .gt("t.remain_width", width) - .orderByAsc("escd.tempering_feed_sequence") - ); - return list; - } - - - - - - - - @Override - public List<DownStorageCageDetails> IsExistIntoCacheByflowcardid(String flowcardid, double width) { - log.info(" 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿"); - return downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .isNotNull("escd.slot") - .lt("escd.flow_card_id", flowcardid) - // 鏉′欢 t.remain_width - width > 0 - .apply("t.remain_width - " + width + " > 0") - .orderByDesc("escd.tempering_layout_id, escd.tempering_feed_sequence") - ); - - } - - - @Override - public List<DownStorageCageDetails> getIsExistIntoCacheByLayout(Integer tempering_layout_id, double width) { - log.info(" 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿"); - return downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .isNotNull("escd.slot") - .lt("escd.tempering_layout_id", tempering_layout_id) - // 鏉′欢 t.remain_width - width > 0 - .apply("t.remain_width - " + width + " > 0") - .orderByDesc("escd.tempering_layout_id, escd.tempering_feed_sequence") - ); - - } - - - - - - - - @Override - public List<DownStorageCageDetails> getIsExistIntoCacheByflowcardid(String flowcardid, double width) { - log.info(" 鍗曠墖鎯呭喌 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿 鎵惧埌鐩稿悓娴佺▼鍗″彿鐨勭┖鏍�"); - - return downStorageCageMapper.selectJoinList( - DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() - .select("escd.*") - .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") - .isNotNull("escd.slot") - .eq("escd.flow_card_id", flowcardid) - .gt("t.remain_width", width) - .orderByAsc("escd.sequence") - ); - - } - - - @@ -225,32 +69,23 @@ public DownGlassTask createDownGlassTask(GlassInfo glassInfo, String startCell, String endCell,String taskType ) { DownGlassTask downGlassTask = new DownGlassTask(); - downGlassTask.setId(glassInfo.getId()); - downGlassTask.setStartCell(startCell); - downGlassTask.setTaskType(taskType); - downGlassTask.setEndCell(endCell); - downGlassTask.setWidth(glassInfo.getWidth()); - downGlassTask.setHeight(glassInfo.getHeight()); - downGlassTask.setFilmsid(String.valueOf(glassInfo.getFilmsid())); - downGlassTask.setThickness(glassInfo.getThickness()); - downGlassTask.setFlowCardId(glassInfo.getFlowcardId()); + BeanUtils.copyProperties(glassInfo,downGlassTask); + + downGlassTask.setStartCell(startCell); + downGlassTask.setTaskType(taskType); + downGlassTask.setEndCell(endCell); return downGlassTask; } public DownGlassTask createDownGlassTask(DownStorageCageDetails glassInfo, String startCell, String endCell,String taskType ) { DownGlassTask downGlassTask = new DownGlassTask(); - downGlassTask.setId(glassInfo.getId()); + + BeanUtils.copyProperties(glassInfo,downGlassTask); downGlassTask.setStartCell(startCell); downGlassTask.setTaskType(taskType); downGlassTask.setEndCell(endCell); - downGlassTask.setWidth(glassInfo.getWidth()); - downGlassTask.setHeight(glassInfo.getHeight()); - downGlassTask.setFilmsid(String.valueOf(glassInfo.getFilmsid())); - downGlassTask.setThickness(glassInfo.getThickness()); - downGlassTask.setFlowCardId(glassInfo.getFlowCardId()); - return downGlassTask; } @@ -264,13 +99,13 @@ //瀛樺湪姝ょ幓鐠冪紪鍙� if (GlassInfo != null) { //鍚屾壘鍒板悓娴佺▼鍗¢檮杩戠┖鏍� - List<DownStorageCageDetails> list = getIsExistIntoCacheByflowcardid(GlassInfo.getFlowcardId(), GlassInfo.getWidth()); + List<DownStorageCageDetails> list = selectCacheEmpty(); - List<Map> selectCacheEmpty=selectCacheEmpty(); + // list<Map> list=selectCacheEmpty(); // list<Map> = downStorageCageService.selectCacheEmpty(); - if (selectCacheEmpty.size() > 0) { + if (list.size() > 0) { //瀛樺湪绌烘牸 //1.鐢熸垚浠诲姟锛� 璧峰浣嶇疆0 缁撴潫浣嶇疆this.slot 浠诲姟绫诲瀷 1 锛堣繘鐗囦换鍔★級 //2.鍥炲 1杩涚墖 @@ -282,7 +117,7 @@ downGlassTaskService.insertCacheTask(downGlassTask); - S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(), (short) 1); + //S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(), (short) 1); //瀹屾垚鍚庢彃鍏ュ皬鐗囨暟鎹埌缂撳瓨琛� @@ -326,25 +161,25 @@ String endcell = "13"; String SendEndcell = "1"; -// selectInfo.insertCacheTask(item3.getGlassId() + "", "0", endcell, "2", item3.getWidth(), item3.getHeight(), item3.getFilmsid(), item3.getThickness(), item3.getFlowCardId()); + DownGlassTask downGlassTask =createDownGlassTask(item3,"0",endcell,"2"); downGlassTaskService.insertCacheTask(downGlassTask); - S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), SendEndcell); - S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1"); + // S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), SendEndcell); + // S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1"); return true; } } //濡傛灉鍚屾椂鍓嶅悗绔兘绌洪棽 浼樺厛鍚庣鍑虹墖骞朵笖浼樺厛婊℃灦 - else if (!list2.isEmpty()) { + else if (!list2.isEmpty()&&!list3.isEmpty()) { DownStorageCageDetails item3 = list2.get(0); String endcell = "11"; String SendEndcell = "1"; - // selectInfo.insertCacheTask(item3.getGlassId() + "", "0", endcell, "2", item3.getWidth(), item3.getHeight(), item3.getFilmsid(), item3.getThickness(), item3.getFlowCardId()); + DownGlassTask downGlassTask =createDownGlassTask(item3,"0",endcell,"2"); downGlassTaskService.insertCacheTask(downGlassTask); @@ -358,9 +193,10 @@ DownStorageCageDetails item = list.get(0); // 鍑哄埌 G06 - //selectInfo.insertCacheTask(item.getGlassId() + "", "0", "06", "2", item.getWidth(), item.getHeight(), item.getFilmsid(), item.getThickness(), item.getFlowCardId()); + DownGlassTask downGlassTask =createDownGlassTask(item,"0","06","2"); + downGlassTaskService.insertCacheTask(downGlassTask); S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "1"); S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1"); return true; @@ -370,7 +206,7 @@ DownStorageCageDetails item2 = list2.get(0); // 鍑哄埌 G11 - // selectInfo.insertCacheTask(item2.getGlassId() + "", "0", "11", "2", item2.getWidth(), item2.getHeight(), item2.getFilmsid(), item2.getThickness(), item2.getFlowCardId()); + DownGlassTask downGlassTask =createDownGlassTask(item2,"0","11","2"); downGlassTaskService.insertCacheTask(downGlassTask); @@ -388,8 +224,17 @@ } - - - + @Override + public List<DownStorageCageDetails> selectCacheEmpty() { + return baseMapper.selectJoinList(DownStorageCageDetails.class, + JoinWrappers.lambda(DownStorageCage.class) + .selectAll(DownStorageCage.class) + .select(DownStorageCageDetails::getWidth, DownStorageCageDetails::getHeight, DownStorageCageDetails::getGlassId) + .leftJoin(DownStorageCageDetails.class, on -> on + .eq(DownStorageCageDetails::getDeviceId, DownStorageCage::getDeviceId) + .eq(DownStorageCageDetails::getSlot, DownStorageCage::getSlot)) + .isNull(DownStorageCageDetails::getSlot) + ); + } } diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstationTask.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstationTask.java index e0ecf93..7ac060a 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstationTask.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstationTask.java @@ -5,7 +5,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; import org.springframework.data.annotation.Id; -//import javax.persistence.Id; import java.io.Serializable; @@ -23,9 +22,7 @@ private static final long serialVersionUID = 1L; - /** - * id - */ + @Id @TableId(value = "id", type = IdType.AUTO) private Long id; @@ -58,6 +55,8 @@ * 浠诲姟鐘舵�� */ private Integer state; - - + /** + * 鐜荤拑 + */ + private String glassId; } 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 3487d4d..7a1348b 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 @@ -16,18 +16,50 @@ */ public interface DownWorkstationService extends IService<DownWorkstation> { + /** + * @param startId + * @param endId + * @return 鑾峰彇宸ヤ綅淇℃伅 + */ List<DownWorkstation> getoneDownWorkstations(int startId, int endId); + /** + * @param workstationId + * @return 鑾峰彇鎬绘暟閲� + */ int getTotalQuantity(int workstationId); + /** + * @param workstationId + * @return 鑾峰彇钀芥灦鏁伴噺 + */ int getRacksNumber(int workstationId); + /** + * @param workstationId 娓呯┖鏋跺瓙淇℃伅 + */ void clearFlowCardId(int workstationId); + /** + * @param flowCardId + * @param racksnumber 鏇存柊钀芥灦鏁伴噺 + */ void updateracksnumber(String flowCardId, int racksnumber); + /** + * @param flowCardId + * @param glassInfoCount + * @param workstationId + * @return 鏇存柊鏋跺瓙鍜屾暟閲� + */ int updateFlowCardIdAndCount(String flowCardId, int glassInfoCount, int workstationId); + void insertdownglassinfo(); - List<Map<String, Object>> getTotalGlassDimensionsByWorkstation(); + + /** + * @return // + * 宸ヤ綅鏄剧ず + */ + List<Map<String, Object>> getTotalGlassDimensionsByWorkstation(); } diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationTaskService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationTaskService.java index 887f165..a40bc9b 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationTaskService.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationTaskService.java @@ -15,9 +15,18 @@ * @since 2024-04-07 */ public interface DownWorkstationTaskService extends IService<DownWorkstationTask> { + /** + * @param downGlassInfo 鎻掑叆浠诲姟 + */ void insertdownWorkstationtask(DownGlassInfo downGlassInfo); + /** + * @param Id 鏇存柊浠诲姟鐘舵�� + */ void updateTaskStateToZero(long Id); + /** + * @return 鑾峰彇浠诲姟鐘舵�佷负1鐨勪俊鎭� + */ List<DownWorkstationTask> getTaskState(); } 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 712baab..5800c38 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 @@ -25,6 +25,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; + @Slf4j @Service public class DownWorkstationServiceImpl extends ServiceImpl<DownWorkstationMapper, DownWorkstation> implements DownWorkstationService { @@ -44,7 +45,7 @@ @Autowired private DownWorkstationTaskService downWorkstationTaskService; -// @Override + // @Override // public List<DownWorkstation> gettwoDownWorkstations() { // return downWorkstationMapper.getDownWorkstationsInRange(6,10); // } @@ -58,7 +59,8 @@ DownWorkstation result = baseMapper.selectOne(queryWrapper); return result != null ? result.getTotalquantity() : 0; } -//宸ヤ綅鏄剧ず + + //宸ヤ綅鏄剧ず @Override public List<Map<String, Object>> getTotalGlassDimensionsByWorkstation() { MPJQueryWrapper<DownWorkstation> queryWrapper = new MPJQueryWrapper<>(); @@ -66,16 +68,16 @@ .leftJoin("down_glass_info b on t.flow_card_id = b.flow_card_id") .groupBy("t.workstation_id", "t.flow_card_id"); - List<DownWorkstionAndDownGlassinfo> workstationList = downWorkstationMapper.selectJoinList(DownWorkstionAndDownGlassinfo.class, queryWrapper); - +// List<DownWorkstionAndDownGlassinfo> workstationList = downWorkstationMapper.selectJoinList(DownWorkstionAndDownGlassinfo.class, queryWrapper); + List<DownWorkstionAndDownGlassinfo> workstationList = null; List<Map<String, Object>> result = new ArrayList<>(); for (DownWorkstionAndDownGlassinfo downWorkstionAndDownGlassinfo : workstationList) { Map<String, Object> rack = new HashMap<>(); // 鍒涘缓瀛愰」锛坕tem锛夊璞� Map<String, Object> item = new HashMap<>(); - item.put("height", downWorkstionAndDownGlassinfo.getTotalheight()); // 璁剧疆瀛愰」楂樺害锛屾牴鎹疄闄呮儏鍐佃缃� - item.put("width", downWorkstionAndDownGlassinfo.getTotalwidth()); // 璁剧疆瀛愰」瀹藉害锛屾牴鎹疄闄呮儏鍐佃缃� + item.put("height", downWorkstionAndDownGlassinfo.getTotalheight()); // 璁剧疆瀛愰」楂樺害锛屾牴鎹疄闄呮儏鍐佃缃� + item.put("width", downWorkstionAndDownGlassinfo.getTotalwidth()); // 璁剧疆瀛愰」瀹藉害锛屾牴鎹疄闄呮儏鍐佃缃� item.put("fillColor", "yellow"); // 璁剧疆瀛愰」棰滆壊 item.put("content", downWorkstionAndDownGlassinfo.getFlowCardId()); // 浣跨敤娴佺▼鍗″彿浣滀负瀛愰」鍐呭 @@ -89,18 +91,6 @@ } - -// @Override -// public int getTotalQuantity(int workstationId) { -// Integer totalQuantity = downWorkstationMapper.getTotalQuantity(workstationId); -// return totalQuantity != null ? totalQuantity : 0; -// } - -// @Override -// public int getRacksNumber(int workstationId) { -// Integer racksNumber = downWorkstationMapper.getRacksNumber(workstationId); -// return racksNumber != null ? racksNumber : 0; -// } //鏍规嵁鏉′欢鑾峰彇钀芥灦鏁伴噺 @Override public int getRacksNumber(int workstationId) { @@ -111,7 +101,8 @@ DownWorkstation result = baseMapper.selectOne(queryWrapper); return result != null ? result.getRacksnumber() : 0; } -//鏍规嵁鏉′欢鑾峰彇宸ヤ綅鐜荤拑淇℃伅 + + //鏍规嵁鏉′欢鑾峰彇宸ヤ綅鐜荤拑淇℃伅 @Override public List<DownWorkstation> getoneDownWorkstations(int startId, int endId) { QueryWrapper<DownWorkstation> queryWrapper = new QueryWrapper<>(); @@ -127,10 +118,9 @@ @Override public void updateracksnumber(String flowCardId, int racksNumber) { UpdateWrapper<DownWorkstation> updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("racks_number",racksNumber).eq("flow_card_id", flowCardId); - baseMapper.update(null, updateWrapper); + updateWrapper.set("racks_number", racksNumber).eq("flow_card_id", flowCardId); + baseMapper.update(new DownWorkstation(), updateWrapper); } - @Override @@ -140,7 +130,7 @@ .set("flow_card_id", flowCardId) .eq("workstation_id", workstationId); - return baseMapper.update(null, updateWrapper); + return baseMapper.update(new DownWorkstation(), updateWrapper); } @Override @@ -151,8 +141,10 @@ .set("racks_number", 0) .eq("workstation_id", workstationId); - baseMapper.update(null, updateWrapper); + baseMapper.update(new DownWorkstation(), updateWrapper); } + + @@ -162,12 +154,6 @@ return baseMapper.selectOne(queryWrapper); } - - - - - - @Transactional @@ -181,13 +167,8 @@ } - - - - @Override public void insertdownglassinfo() { - List<DownGlassTask> taskdownGlassInf = downGlassTaskService.getUnloadingTaskState(); @@ -231,8 +212,6 @@ } - - try { //鏌ヨ涓嬬墖宸ヤ綅琛ㄤ腑鏋跺瓙鏄惁缁戝畾浜嗘祦绋嬪崱鍙� 宸ヤ綅琛ㄥ拰浠诲姟琛ㄤ腑鐘舵�佷负1鐨勬祦绋嬪崱鍙峰拰宸茶惤鏋舵暟閲� List<DownWorkstationTask> taskdownWorkstation = downWorkstationTaskService.getTaskState(); @@ -241,7 +220,7 @@ for (DownWorkstationTask downWorkstation : taskdownWorkstation) { //鏇存柊涓嬬墖宸ヤ綅琛ㄤ腑宸茶惤鏋舵暟閲� DownWorkstation downWorkstation1 = selectByFlowCardId(downWorkstation.getFlowCardId()); - updateracksnumber(downWorkstation.getFlowCardId(),downWorkstation1.getRacksnumber() + 1); + updateracksnumber(downWorkstation.getFlowCardId(), downWorkstation1.getRacksnumber() + 1); //鏇存柊鏈烘浠诲姟琛ㄤ腑鐘舵�佷负0 downWorkstationTaskService.updateTaskStateToZero(downWorkstation.getId()); //鍒犻櫎鏈烘浠诲姟琛� @@ -256,11 +235,6 @@ // 鎴栬�呭彲浠ヨ繘琛屽叾浠栧紓甯稿鐞嗭紝姣斿璁板綍鏃ュ織鎴栬�呰繑鍥炵壒瀹氱殑閿欒淇℃伅 } } - - - - - } diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationTaskServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationTaskServiceImpl.java index 1e67462..01cf539 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationTaskServiceImpl.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationTaskServiceImpl.java @@ -8,6 +8,7 @@ import com.mes.downworkstation.entity.DownWorkstationTask; import com.mes.downworkstation.mapper.DownWorkstationTaskMapper; import com.mes.downworkstation.service.DownWorkstationTaskService; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import java.util.List; @@ -31,14 +32,10 @@ // 濡傛灉娌℃湁璁板綍锛屽垯灏� id 璁剧疆涓� 1锛涘惁鍒欙紝灏� id 璁剧疆涓哄綋鍓嶆渶澶� id 鍊煎姞 1 Long newId = (maxId == null) ? 1 : maxId + 1; - entity.setId(newId); // 璁剧疆鎵嬪姩閫掑鐨� id - entity.setFlowCardId(downGlassInfo.getFlowCardId()); - entity.setWidth(downGlassInfo.getWidth()); - entity.setHeight(downGlassInfo.getHeight()); - entity.setThickness(downGlassInfo.getThickness()); - entity.setFilmsid(downGlassInfo.getFilmsid()); - entity.setState(1); + BeanUtils.copyProperties(entity,downGlassInfo); + entity.setId(newId); // 璁剧疆鎵嬪姩閫掑鐨� id + entity.setState(1); baseMapper.insert(entity); } @@ -70,6 +67,7 @@ UpdateWrapper<DownWorkstationTask> updateWrapper = new UpdateWrapper<>(); updateWrapper.set("state", 0).eq("id", id); - baseMapper.update(null, updateWrapper); + baseMapper.update(new DownWorkstationTask(), updateWrapper); } + } diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/entity/GlassInfo.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/entity/GlassInfo.java index 46acc64..56172d8 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/entity/GlassInfo.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/entity/GlassInfo.java @@ -32,7 +32,7 @@ * 娴佺▼鍗� */ @TableField("flow_card_Id") - private String flowcardId; + private String flowCardId; /** * 娴佺▼鍗$幓鐠冪被鍨� @@ -57,7 +57,7 @@ /** * 鑶滅郴 */ - private Integer filmsid; + private String filmsid; /** * 纾ㄥ墠瀹� diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java index ef1b9ca..a60db72 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java @@ -1,4 +1,4 @@ -package com.mes.uppattenusage.service.impl; +package com.mes.glassinfo.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -53,12 +53,5 @@ } -// public void updateFlowCardIdAndCount(String flowCardId, int glassInfoCount, int workstationId) { -// int rowsAffected = glassInfoMapper.updateFlowCardIdAndCount(flowCardId, glassInfoCount, workstationId); -// if (rowsAffected > 0) { -// System.out.println("鏇存柊鏋跺瓙涓婃祦绋嬪崱 ID 鍜屾暟閲忔垚鍔�"); -// } else { -// System.out.println("鏇存柊鏋跺瓙涓婃祦绋嬪崱 ID 鍜屾暟閲忓け璐�"); -// } -// } + } diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-dev.yml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-dev.yml new file mode 100644 index 0000000..3097382 --- /dev/null +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/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/UnLoadGlassModule/src/main/resources/application-loc.yml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-loc.yml new file mode 100644 index 0000000..fadf3bf --- /dev/null +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-loc.yml @@ -0,0 +1,25 @@ +spring: + datasource: + dynamic: + primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster + strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + datasource: + hangzhoumes: + url: jdbc:mysql://192.168.56.10:3306/hangzhoumes?serverTimezone=GMT%2b8 + username: root + password: root + driver-class-name: com.mysql.cj.jdbc.Driver + salve_hangzhoumes: + url: jdbc:sqlserver://192.168.56.10: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/UnLoadGlassModule/src/main/resources/application-prod.yml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-prod.yml new file mode 100644 index 0000000..2e6a12c --- /dev/null +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application-prod.yml @@ -0,0 +1,25 @@ +spring: + datasource: + dynamic: + primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster + strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. + datasource: + hangzhoumes: + url: jdbc:mysql://10.153.19.150: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 + 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/UnLoadGlassModule/src/main/resources/application.yml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml index 3b51bf1..90f92f5 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml @@ -2,32 +2,10 @@ port: 8085 spring: - datasource: - dynamic: - primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster - strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�. - datasource: - hangzhoumes: - url: jdbc:mysql://10.153.19.150: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 - cloud: - nacos: - discovery: - server-addr: 10.153.19.150:8848 + profiles: + active: prod application: name: unLoadGlass - redis: - database: 0 - host: 10.153.19.150 - port: 6379 - password: 123456 mybatis-plus: mapper-locations: classpath*:mapper/*.xml configuration: diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java index f598dcb..a783463 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java @@ -1,8 +1,11 @@ package mes; import com.mes.UnLoadGlassApplication; +import com.mes.downglassinfo.service.impl.DownGlassInfoServiceImpl; +import com.mes.downglassinfo.service.impl.DownGlassTaskServiceImpl; import com.mes.downstorage.entity.DownStorageCageDetails; import com.mes.downstorage.service.DownStorageCageDetailsService; +import com.mes.downstorage.service.impl.DownStorageCageDetailsServiceImpl; import com.mes.downstorage.service.impl.DownStorageCageServiceImpl; import com.mes.downworkstation.service.DownWorkstationService; @@ -31,6 +34,12 @@ @Autowired DownStorageCageServiceImpl downStorageCageServiceImpl; @Autowired + DownGlassTaskServiceImpl downGlassTaskServiceImpl; + @Autowired + DownGlassInfoServiceImpl downGlassInfoServiceImpl; + @Autowired + DownStorageCageDetailsServiceImpl downStorageCageDetailsServiceImpl; + @Autowired DownStorageCageDetailsService downStorageCageDetailsService; @Autowired DownWorkstationServiceImpl downWorkstationServiceImpl; @@ -42,20 +51,20 @@ @Test public void testCacheGlass() { - List<Map> map = downStorageCageServiceImpl.getCacheInfo(); + List<Map> map = downStorageCageDetailsServiceImpl.getCacheInfo(); log.info("绗煎唴淇℃伅锛歿}", Arrays.asList(map)); } @Test public void testselectCacheEmpty() { - List<DownStorageCageDetails> map = downStorageCageServiceImpl.getCacheLeisure(); + List<DownStorageCageDetails> map = downStorageCageDetailsServiceImpl.getCacheLeisure(); log.info("绗煎唴绌烘牸锛歿}", Arrays.asList(map)); } @Test public void testgetCacheOut() { - List<DownStorageCageDetails> map = downStorageCageServiceImpl.getCacheOut(1, 5); + List<DownStorageCageDetails> map = downStorageCageDetailsServiceImpl.getCacheOut(1, 5); log.info("鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗囷細{}", Arrays.asList(map)); } @@ -74,10 +83,12 @@ } + + @Test - public void testin() { + public void testin2() { log.info("娴嬭瘯杩涚墖"); - downStorageCageServiceImpl.getIsExistIntoCacheByflowcardid("NG2023005",500); + downStorageCageDetailsServiceImpl.getIsExistIntoCacheByflowcardid("NG2023005",500); } @@ -85,14 +96,14 @@ @Test public void selectCacheEmpty() { log.info("娴嬭瘯杩涚墖"); - downStorageCageServiceImpl.selectCacheEmpty(); + downStorageCageDetailsServiceImpl.getCacheLeisure(); } @Test public void CacheEmpty() { log.info("娴嬭瘯鍑虹墖"); - downStorageCageDetailsService.CacheOut(1,5); + downStorageCageDetailsService.CacheOut(1,10); } @@ -105,5 +116,27 @@ } + @Test + public void getMaxSequenceByFlowCardId() { + log.info("鏈�澶у簭鍙�"); + + downGlassInfoServiceImpl.getMaxSequenceByFlowCardId("NG2023005"); + } + + @Test + public void updateTaskStateToZero() { + log.info("鏇存柊鐘舵��0"); + + downGlassTaskServiceImpl.updateTaskStateToZero(3); + } + + + @Test + public void selectCacheEmpty2() { + + + downStorageCageServiceImpl.selectCacheEmpty(); + } + } \ No newline at end of file -- Gitblit v1.8.0