From be57c60a2b1ce03ebdd264176149c52870c0b760 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期二, 11 十一月 2025 10:52:28 +0800
Subject: [PATCH] 企业改成单位

---
 src/views/work/marketingManagement/contractManagement/contractChange/index.vue |   82 +++++++++++++++++------------------------
 1 files changed, 34 insertions(+), 48 deletions(-)

diff --git a/src/views/work/marketingManagement/contractManagement/contractChange/index.vue b/src/views/work/marketingManagement/contractManagement/contractChange/index.vue
index 76f4dc2..ce03607 100644
--- a/src/views/work/marketingManagement/contractManagement/contractChange/index.vue
+++ b/src/views/work/marketingManagement/contractManagement/contractChange/index.vue
@@ -8,9 +8,10 @@
               plain
               icon="Plus"
               @click="openDialog('add',{})"
+              v-hasPermi="['contractChange: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"
@@ -20,7 +21,7 @@
             </el-option>
           </el-select>
         </el-form-item>
-        <el-form-item>
+        <el-form-item  v-if="data.isAdmin">
           <el-button type="primary" style="margin-left: 30px" @click="searchClick">查询</el-button>
           <el-button plain @click="reset">重置</el-button>
         </el-form-item>
@@ -36,19 +37,19 @@
     <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 label="合同编号" prop="num" align="center" />
-      <el-table-column label="合同名称" prop="num" align="center" />
-      <el-table-column label="签订日期" prop="num" align="center" />
-      <el-table-column label="评审类型" prop="num" align="center" >
+      <el-table-column label="合同编号" prop="number" align="center" />
+      <el-table-column label="合同名称" prop="contractName" align="center" />
+      <el-table-column label="签订日期" prop="signDate" align="center" />
+      <el-table-column label="评审类型" prop="type" align="center" >
         <template #default="scope">
-
+          <span>{{scope.row.type == 1 ?'评审':scope.row.type == 2 ?'变更':''}}</span>
         </template>
       </el-table-column>
       <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="['contractChange:edit']">编辑</el-button>
+          <el-button link type="danger"  @click="handleDelete(scope.row)" v-hasPermi="['contractChange:del']">删除</el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -77,6 +78,7 @@
 import {generateWordDocument} from "@/utils/exportWord";
 import {delTable, getTable} from "@/api/qualityObjectives/table";
 import {delNeedDiscren, getNeedDiscren} from "@/api/need/need";
+import {delContractReview, getContractReview} from "@/api/contractChange";
 const { proxy } = getCurrentInstance();
 const loading = ref(false);
 const noticeRef = ref();
@@ -115,16 +117,15 @@
   }
 });
 const getList = async () => {
-  // loading.value = true;
-  // const res = await getNeedDiscren(data.queryParams);
-  // if(res.code === 200){
-  //   dataList.value = res.data.list
-  //   total.value = res.data.total
-  // }else{
-  //   ElMessage.warning(res.message)
-  // }
-  // loading.value = false;
-  dataList.value = [{}]
+  loading.value = true;
+  const res = await getContractReview(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 = () => {
@@ -188,37 +189,16 @@
     startGeneration()
   }
 }
-const templatePath = ref('/contractChangeExample.docx')
+const templatePath = ref()
 const startGeneration = async () => {
   const data = JSON.parse(JSON.stringify(choosedData.value))
   data.forEach(item => {
-    item.expectContents = [
-      {
-        name: '张三',
-        expectContentMesses: [
-          {
-            need: 'xxx',
-            personName: 'x',
-            visit:true,
-            network: true,
-            other: false
-
-          },
-          {
-            need: '22',
-            personName: '2',
-            visit:false,
-            network: false,
-            other: true
-
-          },
-        ]
-      }
-    ]
-    item.tableData = item.expectContents.map((i,index) => {
+    const msg = item.type == 1 ? '评审' : '变更'
+    templatePath.value = item.type == 1 ?  '/contractReviewExample.docx' : '/contractChangeExample.docx'
+    item.reviewMesses = item.reviewMesses.map((i,index) => {
       return{
         ...i,
-        expectContentMesses: i.expectContentMesses.map((q,qindex) => {
+        contractReviewMessbs: i.contractReviewMessbs.map((q,qindex) => {
           return{
             ...q,
             first: qindex == 0,
@@ -227,9 +207,15 @@
         })
       }
     })
-    console.log('xxx',item.tableData)
+    item.contractReviewRequires = item.contractReviewRequires.map((item,index) => {
+      return {
+        ...item,
+        num: index+1,
+        remark: item.remark ? item.remark : ' '
+      }
+    })
     try {
-      generateWordDocument(templatePath.value, item, item.companyName + `_合同评审变更表.docx`);
+      generateWordDocument(templatePath.value, item, item.contractName + `_合同${msg}表.docx`);
     } catch (error){
       ElMessage({
         type: 'warning',
@@ -251,7 +237,7 @@
         type: 'warning',
       })
       .then( async() => {
-        const res = await delNeedDiscren(val.id);
+        const res = await delContractReview(val.id);
         if(res.code === 200){
           ElMessage({
             type: 'success',

--
Gitblit v1.9.2