From eee656c8d1aab0b5aa8935bf1630f782321fc7f4 Mon Sep 17 00:00:00 2001
From: zhouwenxuan <1175765986@qq.com>
Date: 星期三, 21 二月 2024 16:53:35 +0800
Subject: [PATCH] bug修改

---
 src/views/safetyReview/projectManage/components/innerReview.vue       |    5 +-
 src/views/safetyReview/projectManage/components/techLeaderReview.vue  |    3 +
 src/views/safetyReview/projectManage/components/projectArchive.vue    |   27 ++++++++++---
 src/views/safetyReview/projectManage/components/siteCheckRcd.vue      |   22 ++++++-----
 src/views/safetyReview/projectManage/components/processCtrlReview.vue |    8 +++
 src/views/safetyReview/projectManage/components/uploadReviewRcd.vue   |   14 ++++++-
 src/views/safetyReview/projectManage/index.vue                        |    2 
 7 files changed, 58 insertions(+), 23 deletions(-)

diff --git a/src/views/safetyReview/projectManage/components/innerReview.vue b/src/views/safetyReview/projectManage/components/innerReview.vue
index 730b748..665241d 100644
--- a/src/views/safetyReview/projectManage/components/innerReview.vue
+++ b/src/views/safetyReview/projectManage/components/innerReview.vue
@@ -15,7 +15,7 @@
           </el-form-item>
         </el-col>
         <el-col :span="6">
-          <el-form-item prop="leader.name" label="内部审核员">
+          <el-form-item prop="assessor.name" label="内部审核员">
             <el-input
                 v-model="state.formData.assessor.name"
                 size="large"
@@ -107,7 +107,8 @@
   },
   rules: {
     "assessor.name": [{required: true, message: '请选择内部审核员', trigger: 'blur'}],
-    auditDate: [{required: true, message: '请选择审核日期', trigger: 'blur'}]
+    auditDate: [{required: true, message: '请选择审核日期', trigger: 'blur'}],
+    affirmDate: [{required: true, message: '请选择内部审核确认日期', trigger: 'blur'}]
   },
   tableData: [
     {id: 1, content: '评价依据是否充分、准确、有效',key: 'isBasis', status: 1},
diff --git a/src/views/safetyReview/projectManage/components/processCtrlReview.vue b/src/views/safetyReview/projectManage/components/processCtrlReview.vue
index 60bf3cc..f04ff2c 100644
--- a/src/views/safetyReview/projectManage/components/processCtrlReview.vue
+++ b/src/views/safetyReview/projectManage/components/processCtrlReview.vue
@@ -42,7 +42,7 @@
         <el-table-column label="过程控制关键点" prop="content" header-align="center" :show-overflow-tooltip="true"/>
         <el-table-column label="审核结果" header-align="center" class-name="small-padding fixed-width" width="175">
           <template #default="scope">
-            <el-radio-group v-model="scope.row.status" >
+            <el-radio-group v-model="scope.row.status" @change="changeStatus(scope.row)">
               <el-radio :label="1">符合</el-radio>
               <el-radio :label="0">不符合</el-radio>
             </el-radio-group>
@@ -225,6 +225,12 @@
     }
   }
 }
+const changeStatus = (val) => {
+  if(val.status == 1 && val.reason != "") {
+    const index = state.tableData.findIndex(item => item.id == val.id)
+    state.tableData[index].reason = ""
+  }
+}
 
 const openExperts = (type) =>{
   expertsListRef.value.openDialog(type)
diff --git a/src/views/safetyReview/projectManage/components/projectArchive.vue b/src/views/safetyReview/projectManage/components/projectArchive.vue
index 7b925a4..90be6e4 100644
--- a/src/views/safetyReview/projectManage/components/projectArchive.vue
+++ b/src/views/safetyReview/projectManage/components/projectArchive.vue
@@ -25,7 +25,7 @@
         </el-table-column>
         <el-table-column label="原因说明" align="center" class-name="small-padding fixed-width">
           <template #default="scope">
-            <el-input v-model="scope.row.remark"  show-word-limit type="text" size="large"/>
+            <el-input v-model="scope.row.remark"  show-word-limit type="text" size="large"  />
           </template>
         </el-table-column>
         <el-table-column label="附件上传" align="center" class-name="small-padding fixed-width">
@@ -203,13 +203,28 @@
       const file = state.uploadList.map(item => {
         return{
           id: item.id ? item.id : null,
-          fileId: item.fileList ? item.fileList[0].response ? item.fileList[0].response.data.id : item.fileList[0].id : '',
+          fileId: item.fileList && item.fileList.length>0 ? item.fileList[0].response ? item.fileList[0].response.data.id : item.fileList[0].id : '',
           name: item.name,
           type: item.type,
           remark: item.remark,
           projectId: val
         }
       })
+
+      let isOk = false;
+      try{
+        state.uploadList.forEach(item => {
+          if(item.type == 1 && (!item.fileList || item.fileList .length == 0) && item.remark == ""){
+            isOk = true;
+            throw Error();
+          }
+        })
+      }catch (e) {}
+
+      if(isOk){
+        ElMessage.warning("请完善原因说明或上传附件!");
+        return;
+      }
       const { ...data} = JSON.parse(JSON.stringify(state.formData))
       data.actualContractMoney = state.actualContract.actualContractMoney;
       data.actualContractIntroduction = state.actualContract.actualContractIntroduction;
@@ -334,10 +349,10 @@
   }
   const res = await delAccessoryFile(accessoryFileId)
   if(res.code == 200){
-    ElMessage({
-      type: 'success',
-      message: '文件已删除'
-    })
+    // ElMessage({
+    //   type: 'success',
+    //   message: '文件已删除'
+    // })
   }else{
     ElMessage({
       type: 'warning',
diff --git a/src/views/safetyReview/projectManage/components/siteCheckRcd.vue b/src/views/safetyReview/projectManage/components/siteCheckRcd.vue
index 7a24729..9f7626f 100644
--- a/src/views/safetyReview/projectManage/components/siteCheckRcd.vue
+++ b/src/views/safetyReview/projectManage/components/siteCheckRcd.vue
@@ -276,19 +276,21 @@
         if (res.code == 200) {
           ElMessage.success('保存成功')
           if(state.formData.isSafetyCheck == 0){
-            const res = await delFile(state.safetyList[0].id)
-            if(res.code == 200){
-              console.log('删除原有附件')
-              await getSafetyFiles()
-            }else{
-              ElMessage({
-                type: 'warning',
-                message: res.message
-              })
+            if(state.safetyList && state.safetyList.length >0){
+              const res = await delFile(state.safetyList[0].id)
+              if(res.code == 200){
+                console.log('删除原有附件')
+                await getSafetyFiles()
+              }else{
+                ElMessage({
+                  type: 'warning',
+                  message: res.message
+                })
+              }
             }
           }
           formRef.value.clearValidate();
-          emit('getNextStatus', state.projectId);
+          emit('getNextStatus', val);
         } else {
           ElMessage.warning(res.message)
         }
diff --git a/src/views/safetyReview/projectManage/components/techLeaderReview.vue b/src/views/safetyReview/projectManage/components/techLeaderReview.vue
index 87e98e8..abe23da 100644
--- a/src/views/safetyReview/projectManage/components/techLeaderReview.vue
+++ b/src/views/safetyReview/projectManage/components/techLeaderReview.vue
@@ -107,7 +107,8 @@
   },
   rules: {
     "assessor.name": [{required: true, message: '请选择技术负责人', trigger: 'blur'}],
-    auditDate: [{required: true, message: '请选择审核日期', trigger: 'blur'}]
+    auditDate: [{required: true, message: '请选择审核日期', trigger: 'blur'}],
+    affirmDate: [{required: true, message: '请选择确认日期', trigger: 'blur'}]
   },
   tableData: [
     {id: 1, content: '报告中所列评价依据是否得到引用和验证',key: 'isBasisQuote', status: 1},
diff --git a/src/views/safetyReview/projectManage/components/uploadReviewRcd.vue b/src/views/safetyReview/projectManage/components/uploadReviewRcd.vue
index b6ed5c3..58a404b 100644
--- a/src/views/safetyReview/projectManage/components/uploadReviewRcd.vue
+++ b/src/views/safetyReview/projectManage/components/uploadReviewRcd.vue
@@ -4,7 +4,7 @@
       <el-row :gutter="30">
         <el-col :span="18">
           <el-form-item label="附件上传">
-            <el-upload accept="image/*,.pdf,.doc,.docx" :action="state.uploadUrl" :data="{moduleType: 6,projectId: props.projectId}" :headers="state.header" method="post" :on-success="handleAvatarSuccess" :on-exceed="showTip" v-model:file-list="state.fileList" :before-upload="picSize">
+            <el-upload accept="image/*,.pdf,.doc,.docx" :action="state.uploadUrl" :data="{moduleType: 6,projectId: props.projectId}" :headers="state.header" method="post" :on-success="handleAvatarSuccess" :on-exceed="showTip" v-model:file-list="state.fileList" :before-upload="picSize" :on-remove="handleRemove">
               <el-button type="primary">上传评审记录</el-button>
               <template #tip>
                 <div class="el-upload__tip">上传文件尺寸尺寸小于2M</div>
@@ -15,7 +15,7 @@
       </el-row>
       <el-table  :data="state.tableData" :border="true" style="margin: 20px 0">
         <el-table-column label="序号" width="60" align="center" type="index"></el-table-column>
-        <el-table-column label="原名称" prop="originName" header-align="center" :show-overflow-tooltip="true"/>
+        <el-table-column label="原名称" prop="originName" align="center" :show-overflow-tooltip="true"/>
         <el-table-column label="操作" header-align="center" class-name="small-padding fixed-width" width="120">
           <template #default="scope">
             <el-button link type="primary" @click="checkFile(scope.row)">查看</el-button>
@@ -112,6 +112,16 @@
   if(res.code == 200){
     if(res.data && res.data.length>0){
       state.tableData = res.data
+      state.fileList = res.data.map(i => {
+        return {
+          name: i.originName,
+          url: import.meta.env.VITE_APP_BASE_API + '/' + i.path,
+          id: i.id,
+          projectId: i.projectId,
+          moduleType: i.moduleType
+
+        }
+      })
     }else{
       state.tableData=[]
     }
diff --git a/src/views/safetyReview/projectManage/index.vue b/src/views/safetyReview/projectManage/index.vue
index 672de99..45470fb 100644
--- a/src/views/safetyReview/projectManage/index.vue
+++ b/src/views/safetyReview/projectManage/index.vue
@@ -492,7 +492,7 @@
 });
 const goMenu = (toPath,val) => {
   console.log("val",val)
-  if(val.personRecognition && val.personRecognition. recognitionCnt === 0){
+  if(toPath ==='toThirteen' && val.personRecognition && val.personRecognition. recognitionCnt === 0){
     ElMessage.warning('未进行签字确认,无法查看!')
     return;
   }

--
Gitblit v1.9.2