From f11c12efd30a881393c85ac55070202f77535153 Mon Sep 17 00:00:00 2001
From: wang <3597712270@qq.com>
Date: 星期四, 25 四月 2024 14:14:34 +0800
Subject: [PATCH] 上片机模糊查询,掰片/识别页面

---
 UI-Project/src/views/Returns/returns.vue |  120 ++++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 92 insertions(+), 28 deletions(-)

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>

--
Gitblit v1.8.0