From ed4eef49411cd7e673d1f9a16ef3f716f9ca1c28 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 25 二月 2025 17:46:11 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 src/views/CNAS/process/reportResults/index.vue |  173 +++++++++++++++++++++++++--------------------------------
 1 files changed, 76 insertions(+), 97 deletions(-)

diff --git a/src/views/CNAS/process/reportResults/index.vue b/src/views/CNAS/process/reportResults/index.vue
index dd4403e..f87bb11 100644
--- a/src/views/CNAS/process/reportResults/index.vue
+++ b/src/views/CNAS/process/reportResults/index.vue
@@ -1,12 +1,5 @@
 <template>
   <div class="report-results">
-    <el-row class="title">
-      <el-col :span="12" style="padding-left: 20px;text-align: left;">鎶ュ憡缁撴灉</el-col>
-      <el-col :span="12" style="text-align: right;">
-        <el-button size="medium" type="primary" @click="handleDown" :loading="outLoading" v-if="outPower">瀵煎嚭</el-button>
-        <el-button size="medium" type="primary" @click="openAdd" v-if="addPower">鏂板</el-button>
-      </el-col>
-    </el-row>
     <div class="search">
       <div class="search_thing">
         <div class="search_label">妫�楠屾姤鍛婄紪鍙凤細</div>
@@ -17,12 +10,15 @@
         <el-button size="small" @click="refresh()">閲� 缃�</el-button>
         <el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
       </div>
+      <div class="btn">
+        <el-button size="medium" type="primary" @click="handleDown" :loading="outLoading" v-if="outPower">瀵煎嚭</el-button>
+        <el-button size="medium" type="primary" @click="openAdd" v-if="addPower">鏂板</el-button>
+      </div>
     </div>
     <div class="table">
-      <lims-table :tableData="tableData" :column="column" :tableLoading="tableLoading" :height="'calc(100vh - 290px)'"
-        :page="page" @pagination="pagination"></lims-table>
-      <!-- <ValueTable ref="ValueTable" :url="$api.processReport.pageProcessReport"
-        :delUrl="$api.processReport.delProcessReport" :componentData="componentData" :key="upIndex" /> -->
+      <lims-table :tableData="tableData" :column="column" :tableLoading="tableLoading" :height="'calc(100vh - 270px)'"
+        :page="page" @pagination="pagination" :isSelection="true"
+        :handleSelectionChange="handleSelectionChange"></lims-table>
     </div>
     <el-dialog :title="title" :visible.sync="addDialogVisible" width="400px" top="6vh">
       <el-row>
@@ -114,7 +110,9 @@
 import {
   exportProcessReport,
   doProcessReport,
-  addProcessReport
+  addProcessReport,
+  pageProcessReport,
+  delProcessReport
 } from '@/api/cnas/process/reportResults.js'
 import {
   selectUserCondition,
@@ -128,50 +126,6 @@
       outLoading: false,
       addPower: true,
       outPower: true,
-      componentData: {
-        entity: {
-          insReportCode: null,
-          // sendUserName: null,
-          orderBy: {
-            field: 'createTime',
-            order: 'desc'
-          }
-        },
-        isIndex: true,
-        showSelect: true,
-        select: true,
-        selectMethod: 'handleChangeTask',
-        do: [
-          {
-            id: 'handleWork',
-            font: '淇敼',
-            type: 'text',
-            method: 'handleWork'
-          },
-          {
-            id: 'delete',
-            font: '鍒犻櫎',
-            type: 'text',
-            method: 'doDiy'
-          }
-        ],
-        tagField: {},
-        selectField: {
-          sendUser: {
-            select: []
-          },
-          signatory: {
-            select: []
-          },
-        },
-        // addUpload:['signatoryUrl'],
-        requiredAdd: [],
-        requiredUp: [],
-        needSort: [],
-        inputType: ''
-      },
-      entityCopy: {},
-      upIndex: 0,
       personList: [],
       title: '鏂板',
       addDialogVisible: false,
@@ -183,20 +137,18 @@
       queryParams: {},
       tableData: [],
       column: [
-        { label: "缂栧彿", prop: "number" },
-        { label: "杈呭姪椤圭洰鍚嶇О", prop: "auxiliaryProject", width: "120px" },
+        { label: "妫�楠屾姤鍛婄紪鍙�", prop: "insReportCode" },
+        { label: "椤垫暟", prop: "pages", width: "120px" },
         {
-          label: "瀹為獙瀹�",
-          prop: "laboratory",
-          dataType: "tag",
-          formatData: (params) => {
-            return this.laboratoryList.find((m) => m.value == params).label;
-          },
+          label: "鍙戦�佷唤鏁�",
+          prop: "number",
         },
-        { label: "鍗曚綅", prop: "unit" },
-        { label: "鏍稿噯宸ユ椂", prop: "approvedWorkingHour" },
-        { label: "閮ㄩ棬", prop: "department" },
-        { label: "澶囨敞", prop: "remarks" },
+        { label: "鍙戝線浣曞", prop: "send" },
+        { label: "鍙戦�佹柟寮�", prop: "method" },
+        { label: "鍙戦�佹棩鏈�", prop: "sendTime" },
+        { label: "鍙戦�佷汉", prop: "sendUserName" },
+        { label: "绛炬敹浜�", prop: "signatoryName" },
+        { label: "澶囨敞", prop: "remark" },
         {
           dataType: "action",
           fixed: "right",
@@ -206,12 +158,7 @@
               name: "缂栬緫",
               type: "text",
               clickFun: (row) => {
-                this.openAdd("缂栬緫", row);
-              },
-              showHide: (row) => {
-                return this.checkPermi([
-                  "performance:manHour:workTimeConfig:edit",
-                ]);
+                this.handleWork(row);
               },
             },
             {
@@ -219,11 +166,6 @@
               type: "text",
               clickFun: (row) => {
                 this.handleDelete(row);
-              },
-              showHide: (row) => {
-                return this.checkPermi([
-                  "performance:manHour:workTimeConfig:del",
-                ]);
               },
             },
           ],
@@ -239,7 +181,7 @@
   },
   mounted() {
     // this.entityCopy = this.HaveJson(this.componentData.entity);
-    // this.getPower()
+    this.getList()
     this.getAuthorizedPerson()
   },
   methods: {
@@ -277,14 +219,12 @@
         this.$message.warning('璇烽�夋嫨瑕佸鍑虹殑鏁版嵁')
         return
       }
-      // html瀵煎嚭涓簑ord锛屾牱瀛愬お涓戜簡锛屼唬鐮佸厛鏀剧潃鍚�
-      // exportHtmlToWord(this.$refs.content,'妫�楠屾姤鍛婂彂鏀剧櫥璁拌〃')
       this.outLoading = true
       exportProcessReport({ ids: this.mutilSelect.map(m => m.id) }).then(res => {
         this.outLoading = false
         if (res.code === 201) return
         this.$message.success('瀵煎嚭鎴愬姛')
-        const url = this.javaApi + '/word/' + res.message;
+        const url = this.javaApi + '/word/' + res.data;
         this.$download.saveAs(url, "鎶ュ憡缁撴灉");
       })
     },
@@ -295,13 +235,38 @@
       }
       this.addDialogVisible = true;
     },
-    refreshTable() {
-      this.$refs['ValueTable'].selectList()
+    getList() {
+      this.tableLoading = true;
+      let param = { ...this.queryParams, ...this.page };
+      delete param.total;
+      pageProcessReport({ ...param })
+        .then((res) => {
+          this.tableLoading = false;
+          if (res.code === 200) {
+            this.tableData = res.data.records;
+            this.page.total = res.data.total;
+          }
+        })
+        .catch((err) => {
+          this.tableLoading = false;
+        });
+    },
+    pagination({ page, limit }) {
+      this.page.current = page;
+      this.page.size = limit;
+      this.getList();
     },
     refresh() {
-      this.componentData.entity = this.HaveJson(this.entityCopy)
-      this.upIndex++
-      this.refreshTable()
+      this.queryParams = {};
+      this.page.current = 1;
+      this.getList();
+    },
+    refreshTable() {
+      this.page.current = 1;
+      this.getList();
+    },
+    handleSelectionChange(val) {
+      this.mutilSelect = val
     },
     getAuthorizedPerson() {
       selectUserCondition().then(res => {
@@ -362,22 +327,33 @@
     },
     handleChangeTask(list) {
       this.mutilSelect = list
-    }
+    },
+    handleDelete(row) {
+      this.$confirm("鏄惁鍒犻櫎璇ユ潯鏁版嵁?", "鎻愮ず", {
+        confirmButtonText: "纭畾",
+        cancelButtonText: "鍙栨秷",
+        type: "warning",
+      })
+        .then(() => {
+          delProcessReport({ id: row.id }).then((res) => {
+            if (res.code == 201) return;
+            this.$message.success("鍒犻櫎鎴愬姛");
+            this.refresh();
+          });
+        })
+        .catch(() => { });
+    },
   }
 }
 </script>
 
 <style scoped>
-.title {
-  height: 60px;
-  line-height: 60px;
-}
-
 .search {
   background-color: #fff;
   height: 80px;
   display: flex;
   align-items: center;
+  position: relative;
 }
 
 .search_thing {
@@ -397,9 +373,7 @@
 }
 
 .table {
-  margin-top: 10px;
   background-color: #fff;
-  width: calc(100% - 40px);
   height: calc(100% - 60px - 80px - 10px - 40px);
   padding: 20px;
 }
@@ -407,7 +381,6 @@
 .tables {
   table-layout: fixed;
   width: 100%;
-  margin-top: 10px;
 }
 
 .tables td {
@@ -428,4 +401,10 @@
   white-space: normal;
   /* 榛樿鎹㈣ */
 }
+
+.btn {
+  position: absolute;
+  top: 16px;
+  right: 20px;
+}
 </style>

--
Gitblit v1.9.3