From a6b6a0fe63555a44682f2e1f9bc65a668c84a7e9 Mon Sep 17 00:00:00 2001
From: wuyouming666 <2265557248@qq.com>
Date: 星期二, 23 四月 2024 12:32:11 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes
---
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java | 2
UI-Project/src/views/Returns/returns.vue | 386 ++++++++++++++++++++++++++++++++---------------
hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/com/mes/downworkstation/service/DownWorkstationServiceTest.java | 9 +
UI-Project/src/views/Identify/identify.vue | 27 ++
4 files changed, 292 insertions(+), 132 deletions(-)
diff --git a/UI-Project/src/views/Identify/identify.vue b/UI-Project/src/views/Identify/identify.vue
index d8d5d79..13a7185 100644
--- a/UI-Project/src/views/Identify/identify.vue
+++ b/UI-Project/src/views/Identify/identify.vue
@@ -6,8 +6,9 @@
</div>
<el-scrollbar height="650px">
<div id="home-card">
- <div id="home-item" v-for="n in 20" :key="n">
- <svg width="100%" height="400" xmlns="http://www.w3.org/2000/svg" style="margin-top: -100px;margin-left: -80px;">
+ <div id="home-item">
+ <svg width="100%" height="400" xmlns="http://www.w3.org/2000/svg" style="margin-top: -100px;margin-left: -80px;" :data="tableData">
+ <!-- 绠ご -->
<defs>
<marker id="arrow" markerUnits="strokeWidth" markerWidth="12" markerHeight="12" viewBox="0 0 12 12" refX="6"
refY="6" orient="auto">
@@ -26,6 +27,7 @@
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>
<text x="370" y="240" dominant-baseline="middle" text-anchor="middle">NG2024030501A-01</text>
@@ -51,16 +53,27 @@
<script>
import Swal from 'sweetalert2'
import request from "@/utils/request";
+// const tableData = ref([])
-request.get("/TidyUpGlassModule/CurrentCutTerritory").then((res) => {
+request.post("/cacheGlass/taskCache/currentCutTerritory").then((res) => {
if (res.code == 200) {
console.log(res.data);
+ tableData.value = res.data
} else {
ElMessage.warning(res.msg)
- router.push("/login")
+
}
});
+
+// 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() {
@@ -158,9 +171,9 @@
display: flex;
flex-wrap: wrap;
#home-item {
- border-style: solid;
- border-width: 1px;
- border-color: #E4E4E4;
+ /* border-style: solid; */
+ /* border-width: 1px;
+ border-color: red; */
width: calc(34% - 20px);
padding: 20px 0px 20px 20px;
margin-right: 20px;
diff --git a/UI-Project/src/views/Returns/returns.vue b/UI-Project/src/views/Returns/returns.vue
index 12cd2dd..c5550f2 100644
--- a/UI-Project/src/views/Returns/returns.vue
+++ b/UI-Project/src/views/Returns/returns.vue
@@ -4,26 +4,32 @@
import {useRouter} from "vue-router"
const router = useRouter()
import type { TableColumnCtx } from 'element-plus'
-
+
// import { ref } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
const dialogFormVisible = ref(false)
+const blind = ref(false)
+const blinda = ref(false)
+const blindb = ref(false)
const add = ref(false)
const adda = ref(false)
+const flake = ref(false)
+const flakea = ref(false)
// const value = ref('')
import request from "@/utils/request"
-
+
import { ref, onMounted } from "vue";
// import http from "@/http/index";
-
+
let ruleForm = ref({
+ // engineeringId: '',
workstationId: '',
patternHeigth: '',
patternWidth: '',
filmsId: '',
patternThickness: '',
number: '',
-
+
})
const tableDataa = ref([])
@@ -37,20 +43,19 @@
// damageDetails: {
// state: '',
// },
-
+
// })
// 鍙戦�佽幏鍙栬〃鏍兼暟鎹殑璇锋眰
const fetchTableData = async () => {
try {
- // 鍙戦�佽幏鍙栬〃鏍兼暟鎹殑璇锋眰锛屽苟绛夊緟鍝嶅簲
- // const response = await request.post("/loadGlass/optimizeProject/listByState", requestData);
const response = await request.get("/loadGlass/up-patten-usage/prioritylist");
-
+
// 妫�鏌ュ搷搴旂姸鎬�
if (response.code === 200) {
// 鏇存柊琛ㄦ牸鏁版嵁
console.log('鎴愬姛鑾峰彇琛ㄦ牸鏁版嵁:', response.data);
tableData.splice(0, tableData.length, ...response.data);
+ window.localStorage.setItem('engineeringId', response.data[0].engineeringId)
} else {
// 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
ElMessage.error(response.msg);
@@ -64,16 +69,24 @@
if (res.code == 200) {
console.log(res.data);
tableDataa.value = res.data
- // workstationId.value = res.data[0].workstationId
+ window.localStorage.setItem('patternWidth', res.data.patternWidth)
+ window.localStorage.setItem('workstationId', res.data.workstationId)
+ let workstationIda = window.localStorage.getItem('workstationId')
+ let patternWidth = window.localStorage.getItem('patternWidth')
+ if (patternWidth !== '' || workstationIda == '1') {
+ flake.value = true
+ } else if (patternWidth !== '' || workstationIda == '2') {
+ flakea.value = true
+ }
} else {
ElMessage.warning(res.msg)
- router.push("/login")
+ // router.push("/login")
}
});
//瀹氫箟鎺ユ敹鍔犺浇琛ㄥご涓嬫媺鏁版嵁
const titleSelectJson = ref({
processType: [],
-
+
})
const getBasicData = ref({
id: '',
@@ -86,7 +99,7 @@
console.log(res.data);
} else {
ElMessage.warning(res.msg)
- router.push("/login")
+ // router.push("/login")
}
});
@@ -105,26 +118,14 @@
let titleUploadData = ref({
projectNo:'',
})
-// const billall = {
-// data () {
-// return {
-// form: {
-// projectNo: '',
-// },
-// billall:[],
-// }
-// },
-// methods:{
-
-// }
-// }
+// const engineeringId = ref('');
const workstationId = ref('');
const patternHeigth = ref('');
const patternWidth = ref('');
const filmsId = ref('');
const patternThickness = ref('');
const number = ref('');
-
+
// 娣诲姞
const handleConfirm = async () => {
try {
@@ -136,11 +137,18 @@
patternThickness: patternThickness.value,
number: number.value
});
-
+
if (response.code == 200) {
// 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
ElMessage.success(response.message);
add.value = false;
+ window.localStorage.setItem('workstationId', response.data.workstationId)
+ let workstationId = window.localStorage.getItem('workstationId')
+ if (workstationId == '1') {
+ flake.value = true
+ } else if (workstationId == '2'){
+ flakea.value = true
+ }
} else {
// 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
ElMessage.error(response.msg);
@@ -161,11 +169,18 @@
patternThickness: 0,
number: 0
});
-
+
if (response.code == 200) {
// 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
ElMessage.success(response.message);
adda.value = false;
+ window.localStorage.setItem('workstationId', response.data.workstationId)
+ let workstationId = window.localStorage.getItem('workstationId')
+ if (workstationId == '1') {
+ flake.value = false
+ } else if (workstationId == '2'){
+ flakea.value = false
+ }
} else {
// 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
ElMessage.error(response.msg);
@@ -175,67 +190,154 @@
console.error(error);
}
};
-onMounted(fetchTableData);
-interface User {
- id: string
- name: string
- amount1: string
- amount2: string
- amount3: number
-}
-
-interface SpanMethodProps {
- row: User
- column: TableColumnCtx<User>
- rowIndex: number
- columnIndex: number
-}
-
-const objectSpanMethod = ({
- row,
- column,
- rowIndex,
- columnIndex,
-}: SpanMethodProps) => {
- if (columnIndex === 0) {
- if (rowIndex % 2 === 0) {
- return {
- rowspan: 2,
- colspan: 1,
- }
+// 寮�濮嬩笂鐗�
+const handle = async () => {
+ try {
+ let engineeringId = window.localStorage.getItem('engineeringId')
+console.log(engineeringId);
+if (engineeringId !== '') {
+ const response = await request.post('/loadGlass/engineering/engineering/changeTask', {
+ engineeringId: engineeringId,
+ state: 1,
+ })
+ if (response.code == 200) {
+ // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
+ ElMessage.success(response.message);
+ blind.value = false;
} else {
- return {
- rowspan: 0,
- colspan: 0,
- }
+ // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
+ ElMessage.error(response.msg);
}
}
-}
-
-const open = () => {
- ElMessageBox.confirm(
- '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
- '鎻愮ず',
- {
- confirmButtonText: '鏄�',
- cancelButtonText: '鍙栨秷',
- type: 'warning',
- }
- )
- .then(() => {
- ElMessage({
- type: 'success',
- message: '鍒犻櫎鎴愬姛锛�',
- })
- })
- .catch(() => {
+ else {
ElMessage({
type: 'info',
- message: '鍒犻櫎澶辫触',
+ message: '宸ョ▼鍙蜂笉鑳戒负绌猴紒',
})
- })
+ }
}
+catch (error) {
+ // 澶勭悊閿欒
+ console.error(error);
+ }
+}
+// 鏆傚仠
+const handlea = async () => {
+ try {
+ let engineeringId = window.localStorage.getItem('engineeringId')
+console.log(engineeringId);
+if (engineeringId !== '') {
+ const response = await request.post('/loadGlass/engineering/engineering/changeTask', {
+ engineeringId: engineeringId,
+ state: 0,
+ })
+ if (response.code == 200) {
+ // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
+ ElMessage.success(response.message);
+ blinda.value = false;
+ } else {
+ // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
+ ElMessage.error(response.msg);
+ }
+ }
+ else {
+ ElMessage({
+ type: 'info',
+ message: '宸ョ▼鍙蜂笉鑳戒负绌猴紒',
+ })
+ }
+}
+catch (error) {
+ // 澶勭悊閿欒
+ console.error(error);
+ }
+}
+// 寮�濮嬩笂鐗�
+const handleb = async () => {
+ try {
+ let engineeringId = window.localStorage.getItem('engineeringId')
+console.log(engineeringId);
+if (engineeringId !== '') {
+ const response = await request.post('/loadGlass/engineering/engineering/changeTask', {
+ engineeringId: engineeringId,
+ state: 0,
+ })
+ if (response.code == 200) {
+ // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
+ ElMessage.success(response.message);
+ blindb.value = false;
+ } else {
+ // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
+ ElMessage.error(response.msg);
+ }
+ }
+ else {
+ ElMessage({
+ type: 'info',
+ message: '宸ョ▼鍙蜂笉鑳戒负绌猴紒',
+ })
+ }
+}
+catch (error) {
+ // 澶勭悊閿欒
+ console.error(error);
+ }
+}
+onMounted(fetchTableData);
+// const open = () => {
+// ElMessageBox.confirm(
+// '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
+// '鎻愮ず',
+// {
+// confirmButtonText: '鏄�',
+// cancelButtonText: '鍙栨秷',
+// type: 'warning',
+// }
+// )
+// .then(() => {
+// ElMessage({
+// type: 'success',
+// message: '鍒犻櫎鎴愬姛锛�',
+// })
+// })
+// .catch(() => {
+// ElMessage({
+// type: 'info',
+// message: '鍒犻櫎澶辫触',
+// })
+// })
+// }
+// 寮�濮嬩笂鐗�
+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({
border: "full",//琛ㄦ牸鍔犺竟妗�
keepSource: true,//淇濇寔婧愭暟鎹�
@@ -274,7 +376,7 @@
],
})
</script>
-
+
<template>
<div>
<div id="dotClass">
@@ -287,9 +389,10 @@
<el-button style="margin-left: 30px;margin-top: -3px;" >鎵嬪姩纭</el-button>
</div>
<el-button style="margin-top: 5px;margin-left: 15px;" id="searchButton" type="primary" @click="dialogFormVisible = true">閫夋嫨宸ョ▼</el-button>
- <el-button style="margin-top: 5px;margin-left: 20px;" id="searchButton" type="primary">寮�濮嬩笂鐗�</el-button>
- <el-button style="margin-top: 5px;margin-left: 20px;" id="searchButton" type="warning" >鏆傚仠</el-button>
- <el-button style="margin-top: 5px;margin-left: 20px;" id="searchButton" type="danger" >鍋滄浠诲姟</el-button>
+ <el-button style="margin-top: 5px;margin-left: 20px;" id="searchButton" type="primary" @click="handleBind">寮�濮嬩笂鐗�</el-button>
+ <el-button style="margin-top: 5px;margin-left: 20px;" id="searchButton" type="warning" @click="handleBinda">鏆傚仠</el-button>
+ <el-button style="margin-top: 5px;margin-left: 20px;" id="searchButton" type="danger" @click="handleBindb">鍋滄浠诲姟</el-button>
+
<el-card style="flex: 1;margin-left: 10px;margin-top: 15px;" v-loading="loading">
<div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;">
<el-table
@@ -310,14 +413,48 @@
min-width="80"
prop="state"
>
- <!-- <el-tag type="success" v-if="damageDetails.state === 1">灏辩华</el-tag> -->
- <!-- <el-tag type="danger" v-if="row.enableState==2">鏈氨缁�</el-tag> -->
+ <template #default="scope">
+ <el-tag type="success" >{{ scope.row.state==1?"灏辩华":"鏈氨缁�" }}</el-tag>
+ </template>
</el-table-column>
</el-table>
</div>
+
</el-card>
+ <el-dialog v-model="blind" top="30vh" width="25%" title="鏄惁寮�濮嬩笂鐗�?" >
+ <template #footer>
+ <div id="dialog-footer">
+ <el-button type="primary" @click="handle">
+ 纭
+ </el-button>
+ <el-button @click="blind = false">鍙栨秷</el-button>
+ </div>
+ </template>
+ </el-dialog>
+ <el-dialog v-model="blinda" top="30vh" width="25%" title="鏄惁鏆傚仠?" >
+ <template #footer>
+ <div id="dialog-footer">
+ <el-button type="primary" @click="handlea">
+ 纭
+ </el-button>
+ <el-button @click="blinda = false">鍙栨秷</el-button>
+ </div>
+ </template>
+ </el-dialog>
+ <el-dialog v-model="blindb" top="30vh" width="25%" title="鏄惁鍋滄浠诲姟?" >
+ <template #footer>
+ <div id="dialog-footer">
+ <el-button type="primary" @click="handleb">
+ 纭
+ </el-button>
+ <el-button @click="blindb = false">鍙栨秷</el-button>
+ </div>
+ </template>
+ </el-dialog>
<div id="parent">
<img src="../../assets/shangpianji.png" alt="" style="max-width: 20%;max-height: 20%;margin-top: 20px;margin-left: 500px;">
+ <div id="overlay" v-show="flake"></div>
+ <div id="overlaya" v-show="flakea"></div>
</div>
<div style="margin-top: -350px;margin-left: 650px;">
<el-table :data="tableDataa" border style="width: 60%"
@@ -328,39 +465,14 @@
<el-table-column prop="filmsId" align="center" label="鑶滅郴" min-width="80" />
<el-table-column prop="number" align="center" label="鏁伴噺" min-width="80" />
<el-table-column fixed="right" label="鎿嶄綔" align="center" width="150">
- <template #default>
- <el-button size="mini" type="text" plain @click="add = true">娣诲姞</el-button>
- <el-button size="mini" type="text" plain @click="adda = true">鍒犻櫎</el-button>
+ <template #default="scope">
+ <el-button size="mini" type="text" plain @click="handleBindRack(scope.row)">娣诲姞</el-button>
+ <el-button size="mini" type="text" plain @click="handleBindRacka(scope.row)">鍒犻櫎</el-button>
</template>
</el-table-column>
</el-table>
</div>
- </div>
-
-
- <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-option
- v-for="item in titleSelectJson['processType']"
- :key="item.id"
- :label="item.projectNo"
- :value="item.projectNo"
- />
- </el-select>
- </el-form-item>
- </div>
- <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="add" top="23vh" width="45%" title="娣诲姞鍘熺墖" >
<div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;">
<el-form size="mini" label-width="150px">
@@ -419,7 +531,7 @@
</div>
</template>
</el-dialog>
- <el-dialog v-model="adda" top="25vh" width="25%" title="鏄惁鍒犻櫎" >
+ <el-dialog v-model="adda" top="30vh" width="25%" title="鏄惁鍒犻櫎璇ユ潯淇℃伅?" >
<template #footer>
<div id="dialog-footer">
<el-button type="primary" @click="handleConfirma">
@@ -429,10 +541,36 @@
</div>
</template>
</el-dialog>
+ </div>
+
+
+ <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-option
+ v-for="item in titleSelectJson['processType']"
+ :key="item.id"
+ :label="item.projectNo"
+ :value="item.projectNo"
+ />
+ </el-select>
+ </el-form-item>
+ </div>
+ <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>
</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{
@@ -457,8 +595,8 @@
width: 212px;
height: 15px;
background-color: #529b2e;
- margin-top: -407px;
- margin-left: 171px;
+ margin-top: -404px;
+ margin-left: 542px;
}
#overlaya{
position: absolute;
@@ -466,8 +604,8 @@
width: 212px;
height: 15px;
background-color: #529b2e;
- margin-top: -40px;
- margin-left: 167px;
+ margin-top: -38px;
+ margin-left: 537px;
}
-
+
</style>
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java
index adf223f..d2755ae 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java
@@ -19,7 +19,7 @@
//
System.out.println("鍚姩瀹屾垚");
- new Plcdownglass().start();
+ //new Plcdownglass().start();
// new PLCAutoMes().start();
//
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/com/mes/downworkstation/service/DownWorkstationServiceTest.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/com/mes/downworkstation/service/DownWorkstationServiceTest.java
new file mode 100644
index 0000000..ac7d50d
--- /dev/null
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/com/mes/downworkstation/service/DownWorkstationServiceTest.java
@@ -0,0 +1,9 @@
+package com.mes.downworkstation.service;
+
+import junit.framework.TestCase;
+
+public class DownWorkstationServiceTest extends TestCase {
+
+ public void testUpdateFlowCardIdAndCount() {
+ }
+}
\ No newline at end of file
--
Gitblit v1.8.0