From a26af4a8afc3c1b59a33c0642cd07778a89e5813 Mon Sep 17 00:00:00 2001
From: wjt <1797368093@qq.com>
Date: 星期六, 22 六月 2024 21:04:50 +0800
Subject: [PATCH] 投书处理天机

---
 src/views/infomanger/complating/index.vue |  104 ++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 92 insertions(+), 12 deletions(-)

diff --git a/src/views/infomanger/complating/index.vue b/src/views/infomanger/complating/index.vue
index 276397a..8d33215 100644
--- a/src/views/infomanger/complating/index.vue
+++ b/src/views/infomanger/complating/index.vue
@@ -1,8 +1,8 @@
 <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.content"></el-input>
       </el-form-item>
       <el-form-item label="鎶曡瘔瀵硅薄">
         <el-input placeholder="璇疯緭鍏�"></el-input>
@@ -26,31 +26,111 @@
         <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.executeUser }} ({{ scope.row.executeDeptName }})
+        </template>
+      </el-table-column>
+      <el-table-column label="鎶曡瘔绫诲瀷">
+        <template #default="scope">
+          {{ complaint_type[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");
+const handlerComRef = ref()
+const orderDetailsRef = ref()
 const formRef = ref()
 const form = reactive({
-  queryParams: {
-    content: ''
+  quparams: {
+    content: '',
+    pageSize: 10,
+    pageNum: 1,
+    total: 0
+  },
+  tableData: [],
+  status: {
+    "-1":"宸查┏鍥�",0:"寰呭搷搴�",1:"澶勭悊涓�",2:"宸插姙缁�"	
   }
 })
+const dispImgType = (e: string) => {
+  return complaint_type.value.find((f: any) => f.value == e)?.label;
+};
 function handleQuery() {
 
 }
 function resetQuery() {
   formRef.value.resetFields()
 }
+function listComplaintHttp() {
+  listComplaint().then((res: any) => {
+    console.log(res.rows)
+    form.tableData = res.rows
+  })
+}
+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