From 019b6cf4ccaa06fc5ca8f5dc5663975eb027d360 Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期三, 04 六月 2025 15:15:16 +0800
Subject: [PATCH] 前端-政府采购投诉数据处理管理

---
 Web/src/views/fb_p_complaints/procurementComplaint/index.vue |  315 ++++++++++++++++++++++++++++-----------------------
 1 files changed, 173 insertions(+), 142 deletions(-)

diff --git a/Web/src/views/fb_p_complaints/procurementComplaint/index.vue b/Web/src/views/fb_p_complaints/procurementComplaint/index.vue
index 0650757..9eab2ca 100644
--- a/Web/src/views/fb_p_complaints/procurementComplaint/index.vue
+++ b/Web/src/views/fb_p_complaints/procurementComplaint/index.vue
@@ -1,176 +1,201 @@
 锘�<script lang="ts" setup name="procurementComplaint">
-import { ref, reactive, onMounted } from "vue";
+import { ref, reactive, onMounted } from 'vue';
 import { auth } from '/@/utils/authFunction';
-import { ElMessageBox, ElMessage } from "element-plus";
-import { downloadStreamFile } from "/@/utils/download";
+import { ElMessageBox, ElMessage } from 'element-plus';
+import { downloadStreamFile } from '/@/utils/download';
 import { useProcurementComplaintApi } from '/@/api/fb_p_complaints/procurementComplaint';
-import editDialog from '/@/views/fb_p_complaints/procurementComplaint/component/editDialog.vue'
-import printDialog from '/@/views/system/print/component/hiprint/preview.vue'
+import editDialog from '/@/views/fb_p_complaints/procurementComplaint/component/editDialog.vue';
+import printDialog from '/@/views/system/print/component/hiprint/preview.vue';
 import ModifyRecord from '/@/components/table/modifyRecord.vue';
-import ImportData from "/@/components/table/importData.vue";
+import ImportData from '/@/components/table/importData.vue';
 
 const procurementComplaintApi = useProcurementComplaintApi();
 const printDialogRef = ref();
 const editDialogRef = ref();
 const importDataRef = ref();
 const state = reactive({
-  exportLoading: false,
-  tableLoading: false,
-  stores: {},
-  showAdvanceQueryUI: false,
-  dropdownData: {} as any,
-  selectData: [] as any[],
-  tableQueryParams: {} as any,
-  tableParams: {
-    page: 1,
-    pageSize: 20,
-    total: 0,
-    field: 'createTime', // 榛樿鐨勬帓搴忓瓧娈�
-    order: 'descending', // 鎺掑簭鏂瑰悜
-    descStr: 'descending', // 闄嶅簭鎺掑簭鐨勫叧閿瓧绗�
-  },
-  tableData: [],
+	exportLoading: false,
+	tableLoading: false,
+	stores: {},
+	showAdvanceQueryUI: false,
+	dropdownData: {} as any,
+	selectData: [] as any[],
+	tableQueryParams: {} as any,
+	tableParams: {
+		page: 1,
+		pageSize: 20,
+		total: 0,
+		field: 'createTime', // 榛樿鐨勬帓搴忓瓧娈�
+		order: 'descending', // 鎺掑簭鏂瑰悜
+		descStr: 'descending', // 闄嶅簭鎺掑簭鐨勫叧閿瓧绗�
+	},
+	tableData: [],
 });
 
 // 椤甸潰鍔犺浇鏃�
-onMounted(async () => {
-});
+onMounted(async () => {});
 
 // 鏌ヨ鎿嶄綔
 const handleQuery = async (params: any = {}) => {
-  state.tableLoading = true;
-  state.tableParams = Object.assign(state.tableParams, params);
-  const result = await procurementComplaintApi.page(Object.assign(state.tableQueryParams, state.tableParams)).then(res => res.data.result);
-  state.tableParams.total = result?.total;
-  state.tableData = result?.items ?? [];
-  state.tableLoading = false;
+	state.tableLoading = true;
+	state.tableParams = Object.assign(state.tableParams, params);
+	const result = await procurementComplaintApi.page(Object.assign(state.tableQueryParams, state.tableParams)).then((res) => res.data.result);
+	state.tableParams.total = result?.total;
+	state.tableData = result?.items ?? [];
+	state.tableLoading = false;
 };
 
 // 鍒楁帓搴�
 const sortChange = async (column: any) => {
-  state.tableParams.field = column.prop;
-  state.tableParams.order = column.order;
-  await handleQuery();
+	state.tableParams.field = column.prop;
+	state.tableParams.order = column.order;
+	await handleQuery();
 };
 
 // 鍒犻櫎
 const delProcurementComplaint = (row: any) => {
-  ElMessageBox.confirm(`纭畾瑕佸垹闄ゅ悧?`, "鎻愮ず", {
-    confirmButtonText: "纭畾",
-    cancelButtonText: "鍙栨秷",
-    type: "warning",
-  }).then(async () => {
-    await procurementComplaintApi.delete({ id: row.id });
-    handleQuery();
-    ElMessage.success("鍒犻櫎鎴愬姛");
-  }).catch(() => {});
+	ElMessageBox.confirm(`纭畾瑕佸垹闄ゅ悧?`, '鎻愮ず', {
+		confirmButtonText: '纭畾',
+		cancelButtonText: '鍙栨秷',
+		type: 'warning',
+	})
+		.then(async () => {
+			await procurementComplaintApi.delete({ id: row.id });
+			handleQuery();
+			ElMessage.success('鍒犻櫎鎴愬姛');
+		})
+		.catch(() => {});
 };
 
 // 鎵归噺鍒犻櫎
 const batchDelProcurementComplaint = () => {
-  ElMessageBox.confirm(`纭畾瑕佸垹闄�${state.selectData.length}鏉¤褰曞悧?`, "鎻愮ず", {
-    confirmButtonText: "纭畾",
-    cancelButtonText: "鍙栨秷",
-    type: "warning",
-  }).then(async () => {
-    await procurementComplaintApi.batchDelete(state.selectData.map(u => ({ id: u.id }) )).then(res => {
-      ElMessage.success(`鎴愬姛鎵归噺鍒犻櫎${res.data.result}鏉¤褰昤);
-      handleQuery();
-    });
-  }).catch(() => {});
+	ElMessageBox.confirm(`纭畾瑕佸垹闄�${state.selectData.length}鏉¤褰曞悧?`, '鎻愮ず', {
+		confirmButtonText: '纭畾',
+		cancelButtonText: '鍙栨秷',
+		type: 'warning',
+	})
+		.then(async () => {
+			await procurementComplaintApi.batchDelete(state.selectData.map((u) => ({ id: u.id }))).then((res) => {
+				ElMessage.success(`鎴愬姛鎵归噺鍒犻櫎${res.data.result}鏉¤褰昤);
+				handleQuery();
+			});
+		})
+		.catch(() => {});
 };
 
 // 瀵煎嚭鏁版嵁
 const exportProcurementComplaintCommand = async (command: string) => {
-  try {
-    state.exportLoading = true;
-    if (command === 'select') {
-      const params = Object.assign({}, state.tableQueryParams, state.tableParams, { selectKeyList: state.selectData.map(u => u.id) });
-      await procurementComplaintApi.exportData(params).then(res => downloadStreamFile(res));
-    } else if (command === 'current') {
-      const params = Object.assign({}, state.tableQueryParams, state.tableParams);
-      await procurementComplaintApi.exportData(params).then(res => downloadStreamFile(res));
-    } else if (command === 'all') {
-      const params = Object.assign({}, state.tableQueryParams, state.tableParams, { page: 1, pageSize: 99999999 });
-      await procurementComplaintApi.exportData(params).then(res => downloadStreamFile(res));
-    }
-  } finally {
-    state.exportLoading = false;
-  }
-}
+	try {
+		state.exportLoading = true;
+		if (command === 'select') {
+			const params = Object.assign({}, state.tableQueryParams, state.tableParams, { selectKeyList: state.selectData.map((u) => u.id) });
+			await procurementComplaintApi.exportData(params).then((res) => downloadStreamFile(res));
+		} else if (command === 'current') {
+			const params = Object.assign({}, state.tableQueryParams, state.tableParams);
+			await procurementComplaintApi.exportData(params).then((res) => downloadStreamFile(res));
+		} else if (command === 'all') {
+			const params = Object.assign({}, state.tableQueryParams, state.tableParams, { page: 1, pageSize: 99999999 });
+			await procurementComplaintApi.exportData(params).then((res) => downloadStreamFile(res));
+		}
+	} finally {
+		state.exportLoading = false;
+	}
+};
 
 handleQuery();
 </script>
 <template>
   <div class="procurementComplaint-container" v-loading="state.exportLoading">
-    <el-card shadow="hover" :body-style="{ paddingBottom: '0' }"> 
+    <el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
       <el-form :model="state.tableQueryParams" ref="queryForm" labelWidth="90">
         <el-row>
-          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
+          <el-col :xs="24" :sm="12" :md="12" :lg="5" :xl="4" class="mb10">
+            <el-form-item label="鍐冲畾鏃ユ湡">
+              <el-date-picker type="daterange" v-model="state.tableQueryParams.decisionDateRange"
+                value-format="YYYY-MM-DD HH:mm:ss" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡"
+                :default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]" />
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="4" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
+            <el-form-item label="椤圭洰鍚嶇О">
+              <el-input v-model="state.tableQueryParams.projectName" clearable placeholder="璇疯緭鍏ラ」鐩悕绉�" />
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="4" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
+            <el-form-item label="椤圭洰缂栧彿">
+              <el-input v-model="state.tableQueryParams.projectCode" clearable placeholder="璇疯緭鍏ラ」鐩紪鍙�" />
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="4" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
+            <el-form-item label="閲囪喘浜�">
+              <el-input v-model="state.tableQueryParams.purchaser" clearable placeholder="璇疯緭鍏ラ噰璐汉" />
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="4" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
+            <el-form-item label="閲囪喘浠g悊鏈烘瀯">
+              <el-input v-model="state.tableQueryParams.procurementAgency" clearable placeholder="璇疯緭鍏ラ噰璐唬鐞嗘満鏋�" />
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="5" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
+            <el-form-item label="閲囪喘鐩戠潱閮ㄩ棬">
+              <el-input v-model="state.tableQueryParams.procurementSupervisionDepartment" clearable
+                placeholder="璇疯緭鍏ラ噰璐洃鐫i儴闂�" />
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="4" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
+            <el-form-item label="鎶曡瘔浜�">
+              <el-input v-model="state.tableQueryParams.complainant" clearable placeholder="璇疯緭鍏ユ姇璇変汉" />
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="4" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
+            <el-form-item label="鎶曡瘔浜嬮」">
+              <el-input v-model="state.tableQueryParams.keyword" clearable placeholder="璇疯緭鍏ユ姇璇変簨椤�" />
+            </el-form-item>
+          </el-col>
+          <!-- <el-col :xs="24" :sm="12" :md="12" :lg="4" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
+            <el-form-item label="鏄惁鎴愮珛">
+              <el-select v-model="state.tableQueryParams.status" placeholder="璇烽�夋嫨" clearable>
+                <el-option label="鏄�" :value="200" />
+                <el-option label="鍚�" :value="400" />
+              </el-select>
+            </el-form-item>
+          </el-col> -->
+
+          <!-- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
             <el-form-item label="鍏抽敭瀛�">
               <el-input v-model="state.tableQueryParams.keyword" clearable placeholder="璇疯緭鍏ユā绯婃煡璇㈠叧閿瓧"/>
             </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
-            <el-form-item label="椤圭洰缂栧彿">
-              <el-input v-model="state.tableQueryParams.projectCode" clearable placeholder="璇疯緭鍏ラ」鐩紪鍙�"/>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
-            <el-form-item label="椤圭洰鍚嶇О">
-              <el-input v-model="state.tableQueryParams.projectName" clearable placeholder="璇疯緭鍏ラ」鐩悕绉�"/>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
-            <el-form-item label="鍐冲畾鏃ユ湡">
-              <el-date-picker type="daterange" v-model="state.tableQueryParams.decisionDateRange"  value-format="YYYY-MM-DD HH:mm:ss" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" :default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]" />
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
-            <el-form-item label="閲囪喘浜�">
-              <el-input v-model="state.tableQueryParams.purchaser" clearable placeholder="璇疯緭鍏ラ噰璐汉"/>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
-            <el-form-item label="閲囪喘浠g悊鏈烘瀯">
-              <el-input v-model="state.tableQueryParams.procurementAgency" clearable placeholder="璇疯緭鍏ラ噰璐唬鐞嗘満鏋�"/>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
-            <el-form-item label="鎶曡瘔浜�">
-              <el-input v-model="state.tableQueryParams.complainant" clearable placeholder="璇疯緭鍏ユ姇璇変汉"/>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
-            <el-form-item label="閲囪喘鐩戠潱閮ㄩ棬">
-              <el-input v-model="state.tableQueryParams.procurementSupervisionDepartment" clearable placeholder="璇疯緭鍏ラ噰璐洃鐫i儴闂�"/>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI">
-            <el-form-item label="绾夸笂鍦板潃">
-              <el-input v-model="state.tableQueryParams.url" clearable placeholder="璇疯緭鍏ョ嚎涓婂湴鍧�"/>
-            </el-form-item>
-          </el-col>
+          </el-col> -->
           <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
-            <el-form-item >
+            <el-form-item>
               <el-button-group style="display: flex; align-items: center;">
-                <el-button type="primary"  icon="ele-Search" @click="handleQuery" v-auth="'procurementComplaint:page'" v-reclick="1000"> 鏌ヨ </el-button>
+                <el-button type="primary" icon="ele-Search" @click="handleQuery" v-auth="'procurementComplaint:page'"
+                  v-reclick="1000"> 鏌ヨ </el-button>
                 <el-button icon="ele-Refresh" @click="() => state.tableQueryParams = {}"> 閲嶇疆 </el-button>
-                <el-button icon="ele-ZoomIn" @click="() => state.showAdvanceQueryUI = true" v-if="!state.showAdvanceQueryUI" style="margin-left:5px;"> 楂樼骇鏌ヨ </el-button>
-                <el-button icon="ele-ZoomOut" @click="() => state.showAdvanceQueryUI = false" v-if="state.showAdvanceQueryUI" style="margin-left:5px;"> 闅愯棌 </el-button>
-                <el-button type="danger" style="margin-left:5px;" icon="ele-Delete" @click="batchDelProcurementComplaint" :disabled="state.selectData.length == 0" v-auth="'procurementComplaint:batchDelete'"> 鍒犻櫎 </el-button>
-                <el-button type="primary" style="margin-left:5px;" icon="ele-Plus" @click="editDialogRef.openDialog(null, '鏂板鏀垮簻閲囪喘鎶曡瘔鏁版嵁澶勭悊')" v-auth="'procurementComplaint:add'"> 鏂板 </el-button>
-                <el-dropdown :show-timeout="70" :hide-timeout="50" @command="exportProcurementComplaintCommand">
-                  <el-button type="primary" style="margin-left:5px;" icon="ele-FolderOpened" v-reclick="20000" v-auth="'procurementComplaint:export'"> 瀵煎嚭 </el-button>
+                <el-button icon="ele-ZoomIn" @click="() => state.showAdvanceQueryUI = true"
+                  v-if="!state.showAdvanceQueryUI" style="margin-left:5px;"> 楂樼骇鏌ヨ </el-button>
+                <el-button icon="ele-ZoomOut" @click="() => state.showAdvanceQueryUI = false"
+                  v-if="state.showAdvanceQueryUI" style="margin-left:5px;"> 闅愯棌 </el-button>
+                <el-button type="danger" style="margin-left:5px;" icon="ele-Delete"
+                  @click="batchDelProcurementComplaint" :disabled="state.selectData.length == 0"
+                  v-auth="'procurementComplaint:batchDelete'"> 鍒犻櫎 </el-button>
+                <el-button type="primary" style="margin-left:5px;" icon="ele-Plus"
+                  @click="editDialogRef.openDialog(null, '鏂板鏀垮簻閲囪喘鎶曡瘔鏁版嵁澶勭悊')" v-auth="'procurementComplaint:add'"> 鏂板
+                </el-button>
+                <!-- <el-dropdown :show-timeout="70" :hide-timeout="50" @command="exportProcurementComplaintCommand">
+                  <el-button type="primary" style="margin-left:5px;" icon="ele-FolderOpened" v-reclick="20000"
+                    v-auth="'procurementComplaint:export'"> 瀵煎嚭 </el-button>
                   <template #dropdown>
                     <el-dropdown-menu>
-                      <el-dropdown-item command="select" :disabled="state.selectData.length == 0">瀵煎嚭閫変腑</el-dropdown-item>
+                      <el-dropdown-item command="select"
+                        :disabled="state.selectData.length == 0">瀵煎嚭閫変腑</el-dropdown-item>
                       <el-dropdown-item command="current">瀵煎嚭鏈〉</el-dropdown-item>
                       <el-dropdown-item command="all">瀵煎嚭鍏ㄩ儴</el-dropdown-item>
                     </el-dropdown-menu>
                   </template>
                 </el-dropdown>
-                <el-button type="warning" style="margin-left:5px;" icon="ele-MostlyCloudy" @click="importDataRef.openDialog()" v-auth="'procurementComplaint:import'"> 瀵煎叆 </el-button>
+                <el-button type="warning" style="margin-left:5px;" icon="ele-MostlyCloudy"
+                  @click="importDataRef.openDialog()" v-auth="'procurementComplaint:import'"> 瀵煎叆 </el-button> -->
               </el-button-group>
             </el-form-item>
           </el-col>
@@ -178,47 +203,53 @@
       </el-form>
     </el-card>
     <el-card class="full-table" shadow="hover" style="margin-top: 5px">
-      <el-table :data="state.tableData" @selection-change="(val: any[]) => { state.selectData = val; }" style="width: 100%" v-loading="state.tableLoading" tooltip-effect="light" row-key="id" @sort-change="sortChange" border>
-        <el-table-column type="selection" width="40" align="center" v-if="auth('procurementComplaint:batchDelete') || auth('procurementComplaint:export')" />
-        <el-table-column type="index" label="搴忓彿" width="55" align="center"/>
-        <el-table-column prop='projectCode' label='椤圭洰缂栧彿' show-overflow-tooltip />
-        <el-table-column prop='projectName' label='椤圭洰鍚嶇О' show-overflow-tooltip />
+      <el-table :data="state.tableData" @selection-change="(val: any[]) => { state.selectData = val; }" 
+        style="width: 100%" v-loading="state.tableLoading" tooltip-effect="light" row-key="id" @sort-change="sortChange"
+        border>
+        <el-table-column type="selection" width="40" align="center"
+          v-if="auth('procurementComplaint:batchDelete') || auth('procurementComplaint:export')" />
+        <el-table-column type="index" label="搴忓彿" width="55" align="center" />
         <el-table-column prop='decisionDate' label='鍐冲畾鏃ユ湡' show-overflow-tooltip />
+        <el-table-column prop='projectName' label='椤圭洰鍚嶇О' show-overflow-tooltip />
+        <el-table-column prop='projectCode' label='椤圭洰缂栧彿' show-overflow-tooltip />
         <el-table-column prop='purchaser' label='閲囪喘浜�' show-overflow-tooltip />
         <el-table-column prop='procurementAgency' label='閲囪喘浠g悊鏈烘瀯' show-overflow-tooltip />
         <el-table-column prop='complainant' label='鎶曡瘔浜�' show-overflow-tooltip />
         <el-table-column prop='procurementSupervisionDepartment' label='閲囪喘鐩戠潱閮ㄩ棬' show-overflow-tooltip />
+        <!-- <el-table-column prop='complaints' label='鏄惁鎴愮珛' show-overflow-tooltip /> -->
         <el-table-column prop='url' label='绾夸笂鍦板潃' show-overflow-tooltip />
         <el-table-column label="淇敼璁板綍" width="100" align="center" show-overflow-tooltip>
           <template #default="scope">
             <ModifyRecord :data="scope.row" />
           </template>
         </el-table-column>
-        <el-table-column label="鎿嶄綔" width="140" align="center" fixed="right" show-overflow-tooltip v-if="auth('procurementComplaint:update') || auth('procurementComplaint:delete')">
+        <el-table-column label="鎿嶄綔" width="140" align="center" fixed="right" show-overflow-tooltip
+          v-if="auth('procurementComplaint:update') || auth('procurementComplaint:delete')">
           <template #default="scope">
-            <el-button icon="ele-Edit" size="small" text type="primary" @click="editDialogRef.openDialog(scope.row, '缂栬緫鏀垮簻閲囪喘鎶曡瘔鏁版嵁澶勭悊')" v-auth="'procurementComplaint:update'"> 缂栬緫 </el-button>
-            <el-button icon="ele-Delete" size="small" text type="primary" @click="delProcurementComplaint(scope.row)" v-auth="'procurementComplaint:delete'"> 鍒犻櫎 </el-button>
+            <el-button icon="ele-Edit" size="small" text type="primary"
+              @click="editDialogRef.openDialog(scope.row, '缂栬緫鏀垮簻閲囪喘鎶曡瘔鏁版嵁澶勭悊')" v-auth="'procurementComplaint:update'"> 缂栬緫
+            </el-button>
+            <el-button icon="ele-Delete" size="small" text type="primary" @click="delProcurementComplaint(scope.row)"
+              v-auth="'procurementComplaint:delete'"> 鍒犻櫎 </el-button>
           </template>
         </el-table-column>
       </el-table>
-      <el-pagination 
-              v-model:currentPage="state.tableParams.page"
-              v-model:page-size="state.tableParams.pageSize"
-              @size-change="(val: any) => handleQuery({ pageSize: val })"
-              @current-change="(val: any) => handleQuery({ page: val })"
-              layout="total, sizes, prev, pager, next, jumper"
-              :page-sizes="[10, 20, 50, 100, 200, 500]"
-              :total="state.tableParams.total"
-              size="small"
-              background />
-      <ImportData ref="importDataRef" :import="procurementComplaintApi.importData" :download="procurementComplaintApi.downloadTemplate" v-auth="'procurementComplaint:import'" @refresh="handleQuery"/>
+      <el-pagination v-model:currentPage="state.tableParams.page" v-model:page-size="state.tableParams.pageSize"
+        @size-change="(val: any) => handleQuery({ pageSize: val })"
+        @current-change="(val: any) => handleQuery({ page: val })" layout="total, sizes, prev, pager, next, jumper"
+        :page-sizes="[10, 20, 50, 100, 200, 500]" :total="state.tableParams.total" size="small" background />
+      <ImportData ref="importDataRef" :import="procurementComplaintApi.importData"
+        :download="procurementComplaintApi.downloadTemplate" v-auth="'procurementComplaint:import'"
+        @refresh="handleQuery" />
       <printDialog ref="printDialogRef" :title="'鎵撳嵃鏀垮簻閲囪喘鎶曡瘔鏁版嵁澶勭悊'" @reloadTable="handleQuery" />
       <editDialog ref="editDialogRef" @reloadTable="handleQuery" />
     </el-card>
   </div>
 </template>
 <style scoped>
-:deep(.el-input), :deep(.el-select), :deep(.el-input-number) {
-  width: 100%;
+:deep(.el-input),
+:deep(.el-select),
+:deep(.el-input-number) {
+	width: 100%;
 }
 </style>
\ No newline at end of file

--
Gitblit v1.9.1