From 70ca3f9f8a484263c07964c7f957aa8c3f6e8ef8 Mon Sep 17 00:00:00 2001
From: zhangyong <517047165@qq.com>
Date: 星期五, 24 五月 2024 11:11:03 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/HangZhouMes

---
 UI-Project/src/views/Returns/returns.vue |  410 +++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 319 insertions(+), 91 deletions(-)

diff --git a/UI-Project/src/views/Returns/returns.vue b/UI-Project/src/views/Returns/returns.vue
index 49db7d7..eddab30 100644
--- a/UI-Project/src/views/Returns/returns.vue
+++ b/UI-Project/src/views/Returns/returns.vue
@@ -5,7 +5,6 @@
 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)
@@ -15,16 +14,25 @@
 const adda = ref(false)
 const flake = ref(false)
 const flakea = ref(false)
-// const value = ref('')
+// const patternHeight = ref('');
+// const patternWidth = ref('');
+// const filmsId = ref('');
+// const patternThickness = ref('');
+// const number = ref('');
+//  patternHeight.value = '';
+    //  patternWidth.value = '';
+    //  filmsId.value = '';
+    //  patternThickness.value = '';
+    //  number.value = '';
 import request from "@/utils/request"
- 
-import { ref, onMounted } from "vue";
+const ida = ref(null); 
+import { ref, onMounted, onUnmounted } from "vue";
 // import http from "@/http/index";
  
 let ruleForm = ref({
-  // engineeringId: '',
+  projectNo: '',
   workstationId: '',
-  patternHeigth: '',
+  patternHeight: '',
   patternWidth: '',
   filmsId: '',
   patternThickness: '',
@@ -33,7 +41,7 @@
 })
 const tableDataa = ref([])
   
-
+ 
   const tableData = reactive([]);
 //   let filterData = ref({
 //   damageDetails: {
@@ -58,30 +66,109 @@
     }
   } catch (error) {
     // 澶勭悊璇锋眰澶辫触鐨勬儏鍐�
-    ElMessage.error('鑾峰彇琛ㄦ牸鏁版嵁澶辫触锛岃閲嶈瘯');
+    // ElMessage.error('鑾峰彇琛ㄦ牸鏁版嵁澶辫触锛岃閲嶈瘯');
   }
 };
-request.get("/loadGlass/LoadGlass/list").then((res) => {
-          if (res.code == 200) {
-          console.log(res.data);
-          tableDataa.value = res.data
-      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")
-          }
-          });
+onMounted(async () => {  
+  await fetchTableData();  
+  
+  // 璁剧疆瀹氭椂鍣ㄦ潵瀹氭湡鍒锋柊鏁版嵁  
+  const intervalId = setInterval(async () => {  
+    await fetchTableData();  
+  }, 1000); // 姣�1绉掑埛鏂颁竴娆�  
+  
+  // 缁勪欢鍗歌浇鏃舵竻闄ゅ畾鏃跺櫒  
+  onUnmounted(() => {  
+    clearInterval(intervalId);  
+  });  
+}); 
+onMounted(async () => {  
+  await fetchTableDataa();  
+  
+  // 璁剧疆瀹氭椂鍣ㄦ潵瀹氭湡鍒锋柊鏁版嵁  
+  const intervalId = setInterval(async () => {  
+    await fetchTableDataa();  
+  }, 1000); // 姣�1绉掑埛鏂颁竴娆�  
+  
+  // 缁勪欢鍗歌浇鏃舵竻闄ゅ畾鏃跺櫒  
+  onUnmounted(() => {  
+    clearInterval(intervalId);  
+  });  
+}); 
+  //  request.get("/loadGlass/LoadGlass/list").then((res) => {
+  //   if (res.code === 200) {
+  //    console.log(res.data);
+  //    tableDataa.value = res.data;
+   
+  //   if (tableDataa.value.length === 2) {
+  //    if (tableDataa.value[0].patternWidth > 0) {
+  //     flake.value = true;
+  //    }
+ 
+  //   if (tableDataa.value[1].patternWidth > 0) {
+  //   flakea.value = true;
+  //   }
+  //   }
+  //   } else {
+  //   ElMessage.warning(res.msg);
+  //   // router.push("/login");
+  //   }
+  //  });
+   async function fetchTableDataa() {  
+  try {  
+    const res = await request.get("/loadGlass/LoadGlass/list");  
+    if (res.code === 200) {  
+      tableDataa.value = res.data;  
+  
+      // 鏍规嵁鏁版嵁鏇存柊 flake 鍜� flakea 鐨勫��  
+      if (res.data.length >= 2) {  
+        if (res.data[0].patternWidth > 0) {  
+          flake.value = true;  
+        } else {  
+          flake.value = false;  
+        }  
+  
+        if (res.data[1].patternWidth > 0) {  
+          flakea.value = true;  
+        } else {  
+          flakea.value = false;  
+        }  
+      }  
+    } else {  
+      ElMessage.warning(res.msg);  
+    }  
+  } catch (error) {  
+    console.error('鑾峰彇琛ㄦ牸鏁版嵁澶辫触', error);  
+    // 鍙互鍦ㄨ繖閲屾坊鍔犻澶栫殑閿欒澶勭悊閫昏緫  
+  }  
+}  
+// request.get("/loadGlass/LoadGlass/list").then((res) => {
+//       window.localStorage.setItem('patternWidth', res.data.patternWidth)
+//       window.localStorage.setItem('workstationId', res.data.workstationId)
+//           if (res.code == 200) {
+//           console.log(res.data);
+//           tableDataa.value = res.data
+//           console.log(res.data.patternWidth);
+          
+//       let workstationId = window.localStorage.getItem('workstationId')
+//       let patternWidth = window.localStorage.getItem('patternWidth')
+//       if (patternWidth !== '' || workstationId == '1') {
+//       flake.value = true
+//     } else if (patternWidth !== '' || workstationId == '2') {
+//       flakea.value = true
+//     }
+//           } else {
+//           ElMessage.warning(res.msg)
+//           // router.push("/login")
+//           }
+//           });
 //瀹氫箟鎺ユ敹鍔犺浇琛ㄥご涓嬫媺鏁版嵁
 const titleSelectJson = ref({
   processType: [],
+ 
+})
+const titleSelectJsona = ref({
+  processTypea: [],
  
 })
 // const getBasicData = ref({
@@ -108,6 +195,7 @@
 };  
 // 鍝嶅簲寮忔暟鎹�  
 const selectedProjectNo = ref(''); // 褰撳墠閫変腑鐨勫伐绋嬪彿  
+const selectedProjectNoa = ref(''); // 褰撳墠閫変腑鐨勫伐绋嬪彿  
 const options = ref<any[]>([]); // 涓嬫媺閫夐」鍒楄〃  
   
 // 璋冪敤鎺ュ彛鑾峰彇閫夐」鏁版嵁鐨勫嚱鏁�  
@@ -121,14 +209,8 @@
     
     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);  
     }  
@@ -136,7 +218,22 @@
     console.error('Error fetching options:', error);  
   }  
 };  
-  
+  // 寮�濮嬩笂鐗囦笅鎷夐��  
+const fetchOptionsa = async (queryString: string) => {  
+  try {  
+    // 鍙戦�佽姹傚埌鍚庣鎺ュ彛  
+    const response = await request.get('/loadGlass/engineering/engineering/selectTask');  
+    if (response.code == 200) {  
+    titleSelectJsona.value.processTypea = response.data;
+    console.log(response.data);
+ 
+    } else {  
+      ElMessage.warning(response.data);  
+    }  
+  } catch (error) {  
+    console.error('Error fetching options:', error);  
+  }  
+}; 
 // 澶勭悊鐢ㄦ埛杈撳叆鍙樺寲鐨勬柟娉�  
 const handleInputChange = async (value: string) => {  
   if (value) {  
@@ -145,13 +242,23 @@
     options.value = []; // 娓呯┖閫夐」鍒楄〃  
   }  
 };  
-  
+  // 澶勭悊鐢ㄦ埛杈撳叆鍙樺寲鐨勬柟娉�  
+const handleInputChangea = async (value: string) => {  
+  if (value) {  
+    await fetchOptionsa(value);  
+  } else {  
+    options.value = []; // 娓呯┖閫夐」鍒楄〃  
+  }  
+};  
 // 鍒濆鍖栧姞杞芥暟鎹紙濡傛灉闇�瑕侊級  
 onMounted(() => {  
   // 鍦ㄧ粍浠舵寕杞藉悗璋冪敤 fetchOptions('') 鏉ュ姞杞藉垵濮嬫暟鎹紙濡傛灉闇�瑕侊級  
   fetchOptions('');  
 });  
-  
+onMounted(() => {  
+  // 鍦ㄧ粍浠舵寕杞藉悗璋冪敤 fetchOptions('') 鏉ュ姞杞藉垵濮嬫暟鎹紙濡傛灉闇�瑕侊級  
+  fetchOptionsa('');  
+}); 
 // const billall  = () => {
 //   request.post("/loadGlass/optimizeProject/listByState", requestData)
 //     .then((res: any) => {
@@ -164,33 +271,50 @@
 // }
 const user = ref('');
 // 瀹氫箟琛ㄥご涓婁紶鏁版嵁
-let titleUploadData = ref({
-  projectNo:'',
-})
-// const engineeringId = ref('');
+// let titleUploadData = ref({
+//   projectNo:'',
+// })
+const projectNo = ref('');
 const workstationId = ref('');
-const patternHeigth = ref('');
+const id = ref('');
+const patternHeight = ref('');
 const patternWidth = ref('');
 const filmsId = ref('');
 const patternThickness = ref('');
 const number = ref('');
- 
+// 娣诲姞
+const handleBindRack = (row) => {
+  workstationId.value = row.workstationId; // 鍋囪rackNumber鏄灦鍙峰瓧娈电殑灞炴�у悕
+  ida.value = row.id;
+  console.log(ida.value);
+  add.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
+};
 // 娣诲姞
     const handleConfirm = async () => {
-  try {
+  console.log(ida.value);
+      // console.log('id.value:', id.value);
+  if ((ida.value === 2 || ida.value === 4) && (parseInt(patternHeight.value, 10) >= 2700 )) {  
+    try {
     const response = await request.post('/loadGlass/LoadGlass/updateGlassMessage', {
+      id: workstationId.value,
       workstationId: workstationId.value,
-      patternHeigth: patternHeigth.value,
+      patternHeight: patternHeight.value,
       patternWidth: patternWidth.value,
       filmsId: filmsId.value,
       patternThickness: patternThickness.value,
       number: number.value
     }); 
- 
     if (response.code == 200) {
       // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
       ElMessage.success(response.message);
+      // window.location.reload() 
       add.value = false;
+     tableDataa.value = response.data;
+    //  patternHeight = '';
+    //  patternWidth.value = '';
+    //  filmsId.value = '';
+    //  patternThickness.value = '';
+    //  number.value = '';
       window.localStorage.setItem('workstationId', response.data.workstationId)
       let workstationId = window.localStorage.getItem('workstationId')
       if (workstationId == '1') {
@@ -202,17 +326,60 @@
       // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
       ElMessage.error(response.msg);
     }
-  } catch (error) {
-    // 澶勭悊閿欒
-    console.error(error);
-  }
-};
+  } catch (error) {  
+      // 澶勭悊璇锋眰閿欒  
+      console.error(error);  
+      alert('璇锋眰澶辫触锛岃绋嶅悗鍐嶈瘯锛�');  
+    }  
+  }  
+  else if( ida.value === 1 || ida.value === 3){
+      try {
+    const response = await request.post('/loadGlass/LoadGlass/updateGlassMessage', {
+      id: workstationId.value,
+      workstationId: workstationId.value,
+      patternHeight: patternHeight.value,
+      patternWidth: patternWidth.value,
+      filmsId: filmsId.value,
+      patternThickness: patternThickness.value,
+      number: number.value
+    }); 
+    if (response.code == 200) {
+      // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
+      ElMessage.success(response.message);
+      // window.location.reload() 
+      add.value = false;
+     tableDataa.value = response.data;
+      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);
+    }
+  } catch (error) {  
+      // 澶勭悊璇锋眰閿欒  
+      console.error(error);  
+      alert('璇锋眰澶辫触锛岃绋嶅悗鍐嶈瘯锛�');  
+    } 
+    }
+  else  {
+      ElMessage({
+        type: 'info',
+        message: '绗簩琛屽拰绗洓琛岀殑楂樺繀椤诲ぇ浜�2700鎵嶈兘淇濆瓨锛�',
+      })
+    }
+   
+};  
 // 鍒犻櫎
 const handleConfirma = async () => {
   try {
     const response = await request.post('/loadGlass/LoadGlass/updateGlassMessage', {
       workstationId: workstationId.value,
-      patternHeigth: 0,
+      patternHeight: 0,
       patternWidth: 0,
       filmsId: "",
       patternThickness: 0,
@@ -223,6 +390,7 @@
       // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
       ElMessage.success(response.message);
       adda.value = false;
+     tableDataa.value = response.data;
       window.localStorage.setItem('workstationId', response.data.workstationId)
       let workstationId = window.localStorage.getItem('workstationId')
       if (workstationId == '1') {
@@ -239,30 +407,45 @@
     console.error(error);
   }
 };
-// 寮�濮嬩笂鐗�
-const handle = async () => {
+// 閫夋嫨宸ョ▼纭
+const handleup = 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,
+  const response = await request.post('/loadGlass/up-patten-usage/saveUpPattenUsage', {
+    engineerId: selectedProjectNo.value,
     })
     if (response.code == 200) {
       // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
       ElMessage.success(response.message);
-      blind.value = false;
+      // window.location.reload() 
+      dialogFormVisible.value = false;
+      selectedProjectNo.value = ''
     } else {
       // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
       ElMessage.error(response.msg);
     }
+}
+catch (error) {
+    // 澶勭悊閿欒
+    console.error(error);
   }
-    else  {
-      ElMessage({
-        type: 'info',
-        message: '宸ョ▼鍙蜂笉鑳戒负绌猴紒',
-      })
+}
+// 寮�濮嬩笂鐗�
+const handle = async () => {
+  try  {
+  const response = await request.post('/loadGlass/engineering/engineering/changeTask', {
+    engineerId: selectedProjectNoa.value,
+    state: 1,
+    })
+    if (response.code == 200) {
+      // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
+      ElMessage.success(response.message);
+      // window.location.reload() 
+      blind.value = false;
+      tableData.splice(0, tableData.length, ...response.data);
+      selectedProjectNoa.value = ''
+    } else {
+      // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
+      ElMessage.error(response.msg);
     }
 }
 catch (error) {
@@ -283,7 +466,11 @@
     if (response.code == 200) {
       // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
       ElMessage.success(response.message);
+      // window.location.reload() 
       blinda.value = false;
+      // tableData.value = response.data
+      // tableData.value = [];
+      tableData.splice([]);
     } else {
       // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
       ElMessage.error(response.msg);
@@ -301,7 +488,7 @@
     console.error(error);
   }
 }
-// 寮�濮嬩笂鐗�
+// 鍋滄浠诲姟
 const handleb = async () => {
   try  {
   let engineeringId = window.localStorage.getItem('engineeringId')
@@ -314,8 +501,10 @@
     if (response.code == 200) {
       // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
       ElMessage.success(response.message);
+      // window.location.reload() 
       blindb.value = false;
-    } else {
+      tableData.splice([]);
+
       // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
       ElMessage.error(response.msg);
     }
@@ -333,7 +522,26 @@
   }
 }
 onMounted(fetchTableData);
- 
+onMounted(fetchTableDataa);
+function getStatusText(state: number) {
+  switch (state) {
+    case 0:  
+      return '绛夊緟涓�';  
+    case 1:  
+      return '涓婄墖涓�';  
+    case 2:  
+      return '涓婄墖涓�';  
+    case 100:  
+      return '宸插畬鎴�';  
+    default:  
+      return '鏈煡鐘舵��';  
+  }  
+}  
+  
+function getStatusType(state: number) {  
+  // 杩欓噷鍋囪鍙湁100鏃剁被鍨嬩笉鏄痵uccess锛屽叾浠栭兘鏄痵uccess  
+  return state === 100 ? 'info' : 'success'; // 鏍规嵁闇�瑕佽皟鏁寸被鍨�  
+}  
 // const open = () => {
 //   ElMessageBox.confirm(
 //     '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
@@ -375,12 +583,7 @@
  
   blindb.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
 };
-// 娣诲姞
-const handleBindRack = (row) => {
-  workstationId.value = row.workstationId; // 鍋囪rackNumber鏄灦鍙峰瓧娈电殑灞炴�у悕
- 
-  add.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
-};
+
 // 鍒犻櫎
 const handleBindRacka = (row) => {
   workstationId.value = row.workstationId; // 鍋囪rackNumber鏄灦鍙峰瓧娈电殑灞炴�у悕
@@ -462,15 +665,39 @@
             min-width="80"
             prop="state"
           >
-          <template #default="scope">
-            <el-tag type="success" >{{ scope.row.state==1?"灏辩华":"鏈氨缁�"  }}</el-tag>
-          </template>
+          <template #default="scope">  
+        <el-tag :type="getStatusType(scope.row.state)">  
+          {{ getStatusText(scope.row.state) }}  
+        </el-tag>  
+      </template> 
+          <!-- <template #default="scope">
+            <el-tag type="success" >{{ scope.row.state==0?"绛夊緟涓�":"涓婄墖涓�"  }}</el-tag>
+          </template> -->
           </el-table-column>
     </el-table>
       </div>
       
     </el-card>
-  <el-dialog v-model="blind" top="30vh" width="25%" title="鏄惁寮�濮嬩笂鐗�?" >
+    <el-dialog v-model="blind" top="24vh" width="30%" title="鏄惁寮�濮嬩笂鐗囷紵" >
+    <div style="margin-left: 50px;margin-bottom: 10px;">
+      <el-form-item label="宸ョ▼鍙凤細" :required="true">
+        <el-select  
+           v-model="selectedProjectNoa"  
+           filterable  
+           clearable  
+           placeholder="璇烽�夋嫨宸ョ▼"  
+           style="width: 220px"  
+           @input="handleInputChangea"  
+         >  
+      <el-option  
+         v-for="item in titleSelectJsona['processTypea']"  
+         :key="item.id"  
+         :label="item.engineerId"  
+         :value="item.engineerId"  
+      />  
+    </el-select>  
+              </el-form-item>
+          </div>
     <template #footer>
       <div id="dialog-footer">
         <el-button type="primary" @click="handle">
@@ -480,6 +707,16 @@
       </div>
     </template>
   </el-dialog>
+  <!-- <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">
@@ -510,7 +747,7 @@
      :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"
         >
           <el-table-column prop="patternWidth" align="center" label="瀹�" min-width="80" />
-          <el-table-column prop="patternHeigth" align="center" label="闀�" min-width="80" />
+          <el-table-column prop="patternHeight" align="center" label="楂�" min-width="80" />
           <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">
@@ -530,8 +767,8 @@
           <el-col :span="6">
               <div id="dt" style="font-size: 15px;">
         <div>
-              <el-form-item label="闀匡細" :required="true" style="width: 14vw">
-                <el-input  v-model="patternHeigth" autocomplete="off" />
+              <el-form-item label="楂橈細" :required="true" style="width: 14vw">
+                <el-input  v-model="patternHeight" autocomplete="off" />
               </el-form-item></div></div>
           </el-col>
           <el-col :span="9">
@@ -611,20 +848,11 @@
          :value="item.projectNo"  
       />  
     </el-select>  
-        <!-- <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 type="primary" @click="handleup">
           纭
         </el-button>
         <el-button @click="dialogFormVisible = false">鍙栨秷</el-button>

--
Gitblit v1.8.0