From d44d15d044c9e1b70f3dbf87b8d7a54ac8983852 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: Thu, 07 May 2026 15:22:19 +0800
Subject: [PATCH] 修改

---
 src/views/build/conpanyFunctionConsult/need/evaluate/index.vue |   78 +++++++++++++++++++++------------------
 1 files changed, 42 insertions(+), 36 deletions(-)

diff --git a/src/views/build/conpanyFunctionConsult/need/evaluate/index.vue b/src/views/build/conpanyFunctionConsult/need/evaluate/index.vue
index e913efe..72a068b 100644
--- a/src/views/build/conpanyFunctionConsult/need/evaluate/index.vue
+++ b/src/views/build/conpanyFunctionConsult/need/evaluate/index.vue
@@ -8,9 +8,10 @@
               plain
               icon="Plus"
               @click="openDialog('add',{})"
+              v-hasPermi="['needEvaluate:list:add']"
           >新增</el-button>
         </el-form-item>
-        <el-form-item label="企业名称:" v-if="data.isAdmin" style="margin-left: 20px">
+        <el-form-item label="单位名称:" v-if="data.isAdmin" style="margin-left: 20px">
           <el-select v-model="data.queryParams.companyId" placeholder="请选择" filterable clearable>
             <el-option
                 v-for="item in data.companyList"
@@ -21,23 +22,13 @@
           </el-select>
         </el-form-item>
         <el-form-item label="年份:" style="margin-left: 20px">
-          <el-select
+          <el-date-picker
               v-model="data.queryParams.year"
+              type="year"
+              value-format="YYYY"
               placeholder="请选择年份"
               style="width: 240px"
-              filterable
-              allow-create
-              default-first-option
-              :reserve-keyword="false"
-              @change="handleChangeNum"
-          >
-            <el-option
-                v-for="item in data.yearList"
-                :key="item.value"
-                :label="item.label"
-                :value="item.label"
-            />
-          </el-select>
+          />
         </el-form-item>
         <el-form-item>
           <el-button type="primary" style="margin-left: 30px" @click="searchClick">查询</el-button>
@@ -55,14 +46,18 @@
     <el-table v-loading="loading" :data="dataList" :border="true"  @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" />
       <el-table-column type="index" label="序号" width="80" align="center"></el-table-column>
-      <el-table-column label="名称" prop="companyName" align="center"  />
-      <el-table-column label="部门" prop="departName" align="center"  />
+      <el-table-column label="名称"  align="center">
+        <template #default="scope">
+          <span>{{scope.row.year}}年度{{scope.row.deptName}}相关方期望或要求评价表</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="部门" prop="deptName" align="center"  />
       <el-table-column label="年份" prop="year" align="center"  />
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="160">
         <template #default="scope">
           <el-button link type="primary"  @click="openDialog('review',scope.row)" >查看</el-button>
-          <el-button link type="primary"  @click="openDialog('edit',scope.row)" >编辑</el-button>
-          <el-button link type="danger"  @click="handleDelete(scope.row)" >删除</el-button>
+          <el-button link type="primary"  @click="openDialog('edit',scope.row)" v-hasPermi="['needEvaluate:list:edit']">编辑</el-button>
+          <el-button link type="danger"  @click="handleDelete(scope.row)" v-hasPermi="['needEvaluate:list:del']">删除</el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -90,6 +85,7 @@
 import Cookies from "js-cookie";
 import {generateWordDocument} from "@/utils/exportWord";
 import {delTable, getTable} from "@/api/qualityObjectives/table";
+import {delNeedEvaluate, getNeedEvaluate} from "@/api/need/need";
 const { proxy } = getCurrentInstance();
 const loading = ref(false);
 const noticeRef = ref();
@@ -144,25 +140,25 @@
   }else {
     data.queryParams.companyId = userInfo.companyId
   }
+  getNowYear()
   getList();
   if(data.isAdmin){
     getCompanyList()
   }
 });
+const getNowYear = () =>{
+  data.queryParams.year = new Date().getFullYear().toString()
+}
 const getList = async () => {
   loading.value = true;
-  // const res = await getTable(data.queryParams);
-  // if(res.code === 200){
-  //   dataList.value = res.data.list
-  //   total.value = res.data.total
-  // }else{
-  //   ElMessage.warning(res.message)
-  // }
-  dataList.value = [
-    {}
-  ]
+  const res = await getNeedEvaluate(data.queryParams);
+  if(res.code === 200){
+    dataList.value = res.data.list
+    total.value = res.data.total
+  }else{
+    ElMessage.warning(res.message)
+  }
   loading.value = false;
-
 }
 
 const searchClick = () => {
@@ -228,6 +224,7 @@
       type: ''
     }
   }
+  getNowYear()
   getList();
 
 }
@@ -243,13 +240,22 @@
   const data = JSON.parse(JSON.stringify(choosedData.value))
   let name = ''
   data.forEach(item => {
-    item.tableList =[
-      {
-        num: 1
+    item.evaluateTime = item.evaluateTime.substring(0,10)
+    item.tableData = item.expectContents.map((i,index) => {
+      return{
+        ...i,
+        expectContentMesses: i.expectContentMesses.map((q,qindex) => {
+          return{
+            ...q,
+            first: qindex == 0,
+            num: index+1,
+            stakeholder: i.stakeholder
+          }
+        })
       }
-    ]
+    })
     try {
-      generateWordDocument(templatePath.value, item, `_相关方期望或要求评价表.docx`);
+      generateWordDocument(templatePath.value, item, item.companyName +`_相关方期望或要求评价表.docx`);
     } catch (error){
       ElMessage({
         type: 'warning',
@@ -282,7 +288,7 @@
         type: 'warning',
       })
       .then( async() => {
-        const res = await delTable(val.id);
+        const res = await delNeedEvaluate(val.id);
         if(res.code === 200){
           ElMessage({
             type: 'success',

--
Gitblit v1.9.2