From ef3f5053b950475b84f46d578b2e2b54482cd3a4 Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期一, 17 二月 2025 15:43:30 +0800
Subject: [PATCH] 上片模块根据状态筛选调整位置加在表格中,前端做筛选并控制根据条件显示数据

---
 UI-Project/src/views/Returns/upreturns2.vue |   61 ++++++++++++++++++------------
 1 files changed, 37 insertions(+), 24 deletions(-)

diff --git a/UI-Project/src/views/Returns/upreturns2.vue b/UI-Project/src/views/Returns/upreturns2.vue
index b74aef1..20ae2c1 100644
--- a/UI-Project/src/views/Returns/upreturns2.vue
+++ b/UI-Project/src/views/Returns/upreturns2.vue
@@ -1,5 +1,5 @@
 <script lang="ts" setup>
-import {onBeforeUnmount, onMounted, onUnmounted, reactive, ref} from "vue";
+import {onBeforeUnmount, onMounted, onUnmounted, reactive, ref, computed} from "vue";
 import {useRouter} from "vue-router"
 import { ElMessage, ElMessageBox } from 'element-plus'
 import {useI18n} from 'vue-i18n'
@@ -26,7 +26,24 @@
 const cuttingMachineStatusColor = ref('#911005');
 const tableDataa = ref<any[]>([]);
 const tableDatab = ref<any[]>([]);
-const tableData = ref([])
+// const tableData = ref([])
+const tableData = reactive([]);
+const filteredData = computed(() => {
+  // applyFilters 鍑芥暟搴旇鍦ㄦ煇澶勫畾涔夛紝鐢ㄤ簬鏍规嵁褰撳墠绛涢�夋潯浠惰繃婊ゆ暟鎹�
+  return applyFilters(tableData, currentFilters);
+});
+// 褰撳墠绛涢�夋潯浠讹紝搴旇鏄竴涓搷搴斿紡鍙橀噺锛岀敤浜庡瓨鍌ㄧ敤鎴烽�夋嫨鐨勭瓫閫夊��
+const currentFilters = ref<{ state?: string }>({});
+const filterTag = (value: string, row: any) => {
+  // return String(row.state) === value;
+  return row.state === value
+};
+// 搴旂敤绛涢�夋潯浠剁殑鍑芥暟
+const applyFilters = (data: any[], filters: { state?: string }) => {
+  return data.filter(row => {
+    return (!filters.state || String(row.state) === filters.state);
+  });
+};
 const titleSelectJson = ref({
   engineerId: [],
 })
@@ -70,7 +87,8 @@
 const handleMessage = (data: any) => {
   tableDataa.value = data.list[0].slice(2, 4);
   if(data.loadTask2.length !=0){
-  tableData.value = data.loadTask2[0]
+  tableData.splice(0, tableData.length, ...data.loadTask1[0]);
+  // tableData.value = data.loadTask2[0]
   window.localStorage.setItem('engineeringIda', tableData.value[0].engineeringId)
   canSelectProjecta.value = false;
   canSelectProjectb.value = false;
@@ -395,18 +413,6 @@
     <el-button :disabled="!canSelectProjectc" style="margin-top: 5px;margin-left: 20px;"  id="searchButton" type="warning" @click="handleBinda">{{ $t('basicData.stop') }}</el-button>
     <el-button :disabled="!canSelectProjectc" style="margin-top: 5px;margin-left: 20px;" id="searchButton" type="danger" @click="handledelete">{{ $t('searchOrder.deleteTask') }}</el-button>
     <el-button style="margin-top: 5px;margin-left: 20px;" id="searchButton" type="info" @click="handlezhiban">{{ $t('searchOrder.dutyinformation') }}</el-button>
-    <el-select disabled v-model="selectValuesa[1]" clearable :placeholder="$t('Mounting.twoloadingline')"
-               style="margin-top: 5px;margin-left: 20px;">
-      <el-option :label="$t('Mounting.all')" value="0"></el-option>
-      <el-option :label="$t('Mounting.oneloadingline')" value="1"></el-option>
-      <el-option :label="$t('Mounting.twoloadingline')" value="2"></el-option>
-    </el-select>
-    <el-select v-model="selectValuesa[0]" clearable :placeholder="$t('film.taskstatus')" style="margin-top: 5px;margin-left: 20px;" >
-      <el-option :label="$t('Mounting.waiting')" value="1"></el-option>
-      <el-option :label="$t('film.execution')" value="2"></el-option>
-      <el-option :label="$t('film.finish')" value="3"></el-option>
-    </el-select>
-    <el-button type="primary" style="margin-left: 10px;" @click="selectReportData()">{{ $t('Mounting.setparameters') }}</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
@@ -426,20 +432,27 @@
             </template>
           </el-table-column>
           <el-table-column
-              align="center"
-              :label="$t('Mounting.state')"
-            min-width="80"
-            prop="state"
-          >
-          <template #default="scope">
-            <el-tag
+      align="center"
+      prop="state"
+      :label="$t('Mounting.state')"
+      min-width="80"
+      :filters="[
+        { text: t('Mounting.pass'), value: 100 },
+        { text: t('Mounting.waiting'), value: 0 },
+      ]"
+      :filter-method="filterTag"
+      filter-placement="bottom-end"
+    >
+      <template #default="scope">
+        <el-tag
                 :type="scope.row.state === 100 ? 'success' : 'warning'"
                 @click="toggleEnableState(scope.row)"
+                disable-transitions
             >
               {{ scope.row.state === 100 ? $t('Mounting.pass') : $t('Mounting.waiting') }}
             </el-tag>
-          </template>
-      </el-table-column>
+      </template>
+    </el-table-column>
         </el-table>
       </div>
     </el-card>

--
Gitblit v1.8.0