From 1d15badcefebc428501306f74a621fa1089048f9 Mon Sep 17 00:00:00 2001
From: wjt <1797368093@qq.com>
Date: 星期一, 24 六月 2024 20:00:17 +0800
Subject: [PATCH] 搜索修改

---
 src/views/infomanger/complating/index.vue |  132 +++++++++++++++++++++++++++++++++++++-------
 1 files changed, 111 insertions(+), 21 deletions(-)

diff --git a/src/views/infomanger/complating/index.vue b/src/views/infomanger/complating/index.vue
index 276397a..3be4575 100644
--- a/src/views/infomanger/complating/index.vue
+++ b/src/views/infomanger/complating/index.vue
@@ -1,20 +1,22 @@
 <template>
   <div  class="app-container">
-    <el-form inline ref="formRef" :model="form.queryParams" label-width="80px">
+    <el-form inline ref="formRef" :model="form.quparams" label-width="80px">
       <el-form-item label="鎶曡瘔鍐呭" prop="content">
-        <el-input placeholder="璇疯緭鍏�" v-model="form.queryParams.content"></el-input>
+        <el-input placeholder="璇疯緭鍏�" v-model="form.quparams.complaintReason"></el-input>
       </el-form-item>
-      <el-form-item label="鎶曡瘔瀵硅薄">
-        <el-input placeholder="璇疯緭鍏�"></el-input>
+      <el-form-item label="鎶曡瘔瀵硅薄" prop="executeDeptName">
+        <el-input placeholder="璇疯緭鍏�" v-model="form.quparams.executeDeptName"></el-input>
       </el-form-item>
-      <el-form-item label="鎶曡瘔浜�">
-        <el-input placeholder="璇疯緭鍏�"></el-input>
+      <el-form-item label="鎶曡瘔浜�" prop="companyName">
+        <el-input placeholder="璇疯緭鍏�" v-model="form.quparams.companyName"></el-input>
       </el-form-item>
-      <el-form-item label="鎵ф硶璁板綍">
-        <el-input placeholder="璇疯緭鍏�"></el-input>
+      <el-form-item label="鎵ф硶涓婚" prop="enforceReason">
+        <el-input placeholder="璇疯緭鍏�" v-model="form.quparams.enforceReason"></el-input>
       </el-form-item>
-      <el-form-item label="鍔炵悊鐘舵��">
-        <el-input placeholder="璇疯緭鍏�"></el-input>
+      <el-form-item label="鍔炵悊鐘舵��" prop="complaintStatus">
+        <el-select style="width: 180px;" v-model="form.quparams.complaintStatus" placeholder="璇烽�夋嫨">
+          <el-option v-for="(item,index) in form.status" :key="index" :label="item" :value="index"></el-option>
+        </el-select>
       </el-form-item>
       <el-form-item>
         <el-button type="primary" icon="Search" @click="handleQuery">鎼滅储</el-button>
@@ -26,31 +28,119 @@
         <el-button icon="Download" type="primary" plain>瀵煎嚭</el-button>
       </el-col>
     </el-row>
-    <el-table>
-      <el-table-column label="鎶曡瘔浼佷笟"></el-table-column>
-      <el-table-column label="鎶曡瘔瀵硅薄"></el-table-column>
-      <el-table-column label="鎶曡瘔绫诲瀷"></el-table-column>
-      <el-table-column label="鎶曡瘔鍐呭"></el-table-column>
-      <el-table-column label="鎵ф硶涓婚"></el-table-column>
-      <el-table-column label="鍔炵悊鐘舵��"></el-table-column>
-      <el-table-column label="鎿嶄綔"></el-table-column>
+    <el-table :data="form.tableData">
+      <el-table-column label="鎶曡瘔浼佷笟" prop="companyName"></el-table-column>
+      <el-table-column label="鎶曡瘔瀵硅薄" prop="executeDeptName">
+        <template #default="scope">
+         {{ scope.row.executeDeptName }}
+        </template>
+      </el-table-column>
+      <el-table-column label="鎶曡瘔绫诲瀷">
+        <template #default="scope">
+          {{ dispImgType(scope.row.complaintType) }}
+        </template>
+      </el-table-column>
+      <el-table-column label="鎶曡瘔鍐呭" prop="complaintReason"></el-table-column>
+      <el-table-column label="鎵ф硶涓婚" prop="enforceReason">
+        <template #default="scope">
+          <el-link type="primary" @click="look(scope.row)">{{ scope.row.enforceReason }}</el-link>
+        </template>
+      </el-table-column>
+      <el-table-column label="鍔炵悊鐘舵��" prop="complaintStatus">
+        <template #default="scope">
+          {{ form.status[scope.row.complaintStatus] }}
+        </template>
+      </el-table-column>
+      <el-table-column label="鎿嶄綔">
+        <template #default="scope">
+          <el-link type="primary" v-if="scope.row.complaintStatus == 2 || scope.row.complaintStatus == -1"  @click="look(scope.row)">鏌ョ湅</el-link>
+          <el-link type="primary" v-if="scope.row.complaintStatus == 0" @click="inComplaintLogHandler(scope.row)">鍝嶅簲</el-link>
+          <el-link type="primary"  @click="handlerRes(scope.row)"  v-if="scope.row.complaintStatus == 1">鍔炵粨</el-link> 
+        </template>
+      </el-table-column>
     </el-table>
+    <pagination v-show="form.quparams.total > 0" :total="form.quparams.total" v-model:page="form.quparams.pageNum" v-model:limit="form.quparams.pageSize" @pagination="getList" />
+      <handlerCom ref="handlerComRef"></handlerCom>
+      <orderDetails ref="orderDetailsRef"></orderDetails>
   </div>
 </template>
 
 <script lang="ts" setup>
+import { listComplaint, inComplaintLog } from '@/api/system/company/company'
+import { ElMessageBox  } from 'element-plus'
+import handlerCom from './component/index.vue'
+import orderDetails from '@/views/infomanger/enforcement/component/details.vue'
+const { proxy } = getCurrentInstance()
+const { complaint_type } = proxy.useDictPer("complaint_type");
+console.log(complaint_type)
+const handlerComRef = ref()
+const orderDetailsRef = ref()
 const formRef = ref()
 const form = reactive({
-  queryParams: {
-    content: ''
+  quparams: {
+    content: '',
+    pageSize: 10,
+    pageNum: 1,
+    total: 0,
+    complaintReason: '',
+    executeDeptName: '',
+    complaintStatus: ''
+  },
+  tableData: [],
+  status: {
+    "-1":"宸查┏鍥�",0:"寰呭搷搴�",1:"澶勭悊涓�",2:"宸插姙缁�"	
   }
 })
+const dispImgType = (e: string) => {
+  return complaint_type.value.find((f: any) => f.value == e)?.label;
+};
 function handleQuery() {
-
+  form.quparams.pageNum = 1
+  listComplaintHttp()
 }
 function resetQuery() {
   formRef.value.resetFields()
+  form.quparams.pageNum = 1
+  listComplaintHttp()
 }
+function listComplaintHttp() {
+  listComplaint(form.quparams).then((res: any) => {
+    // console.log(res.rows)
+    form.tableData = res.rows
+    form.quparams.total = res.total
+  })
+}
+function handlerRes(item) {
+  handlerComRef.value.openDialog(item)
+}
+function look(item) {
+  orderDetailsRef.value.openDialog(item)
+}
+function inComplaintLogHandler(item) {
+  ElMessageBox.confirm(
+    '纭鍝嶅簲璇ユ潯鏁版嵁?',
+    '鎻愮ず',
+    {
+      confirmButtonText: '纭',
+      cancelButtonText: '鍙栨秷',
+      type: 'warning',
+    }
+  )
+    .then(() => {
+       inComplaintLog({id: item.id}).then((res: any) => {
+        // console.log(res)
+        listComplaintHttp()
+      })
+    })
+    
+ 
+}
+function getList(e: { limit: number; page: number }) {
+  form.quparams.pageSize = e.limit
+  form.quparams.pageNum = e.page
+  listComplaintHttp()
+}
+listComplaintHttp()
 </script>
 
 <style scoped lang="scss">

--
Gitblit v1.9.1