From 137910cf4fc73a3a2787a3a02718f1e1f637c368 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期五, 14 六月 2024 16:01:17 +0800
Subject: [PATCH] bug修改

---
 src/views/safetyReview/projectManage/components/signConfirm.vue |  167 +++++++++++++++++++++++++++++++++----------------------
 1 files changed, 99 insertions(+), 68 deletions(-)

diff --git a/src/views/safetyReview/projectManage/components/signConfirm.vue b/src/views/safetyReview/projectManage/components/signConfirm.vue
index 5c66699..d0b7d93 100644
--- a/src/views/safetyReview/projectManage/components/signConfirm.vue
+++ b/src/views/safetyReview/projectManage/components/signConfirm.vue
@@ -1,79 +1,104 @@
 <template>
   <div class="riskBox">
-    <el-table v-loading="loading" ref="tableRef" :data="tableData" :border="true">
-      <el-table-column type="index" width="55" />
-      <el-table-column label="人员姓名" prop="name" align="center"/>
-      <el-table-column label="联系电话" prop="phone" align="center"/>
-      <el-table-column label="职位" prop="phone" align="center"/>
-      <el-table-column label="项目担任角色" prop="username" align="center"/>
-      <el-table-column label="评价师等级" prop="username" align="center"/>
-      <el-table-column label="专业能力" prop="username" align="center"/>
-      <el-table-column label="人员类型" prop="username" align="center"/>
-      <el-table-column label="扫脸时间" prop="username" align="center"/>
-      <el-table-column label="是否扫脸" prop="username" align="center"/>
-      <el-table-column label="是否变更" prop="username" align="center"/>
-      <el-table-column label="人员类型" prop="username" align="center"/>
+    <el-table v-loading="loading" ref="tableRef" :data="tableData" :border="true" style="margin-top: 20px">
+      <el-table-column label="序号" type="index" width="55" />
+      <el-table-column label="人员姓名" prop="planPerson.person.name" align="center"/>
+      <el-table-column label="联系电话" prop="planPerson.person.phone" align="center"/>
+      <el-table-column label="职位" prop="planPerson.person.post" align="center"/>
+      <el-table-column label="项目担任角色" prop="username" align="center" width="180">
+        <template #default="scope">
+          <div v-for="(item,index) in scope.row.playRolesName" :key="index">
+            <span>{{item.roleName}}</span><span v-if="index!==scope.row.playRolesName.length-1">,</span>
+          </div>
+        </template>
+      </el-table-column>
+      <el-table-column label="评价师等级" prop="planPerson.person.level" align="center"/>
+      <el-table-column label="专业能力" prop="planPerson.person.majorNames" align="center"/>
+      <el-table-column label="工作类型"  align="center">
+        <template #default="scope">
+          <span>{{scope.row.planPerson.jobType === 1 ? '普通人员' : scope.row.planPerson.jobType === 2?'组长': ''}}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="扫脸时间" prop="faceRecord.updateTime" align="center" width="120"/>
+      <el-table-column label="是否扫脸" prop="username" align="center">
+        <template #default="scope">
+          <span v-if="scope.row.facePic.length>0">是</span>
+          <span v-else>否</span>
+        </template>
+      </el-table-column>
+<!--      <el-table-column label="是否变更" prop="username" align="center"/>-->
       <el-table-column label="人脸照片" prop="socialSecurity" align="center" width="120">
         <template #default="scope">
-          <div class="demo-image__preview" v-if="scope.row.socialAttach && scope.row.socialAttach.length>0">
+          <div class="demo-image__preview" v-if="scope.row.facePic && scope.row.facePic.length>0">
             <el-image
                 style="width: 100px; height: 100px"
-                :src= "scope.row.socialAttach[0]"
+                :src= "scope.row.facePic[0]"
                 :zoom-rate="1.2"
                 :max-scale="7"
                 :min-scale="0.2"
-                :preview-src-list="scope.row.socialAttach"
+                :preview-src-list="scope.row.facePic"
                 :initial-index="0"
                 fit="cover"
-                preview-teleported="true"
+                :preview-teleported=true
             />
           </div>
         </template>
       </el-table-column>
       <el-table-column label="签字图片" prop="socialSecurity" align="center" width="120">
         <template #default="scope">
-          <div class="demo-image__preview" v-if="scope.row.socialAttach && scope.row.socialAttach.length>0">
+          <div class="demo-image__preview" v-if="scope.row.signPic && scope.row.signPic.length>0">
             <el-image
                 style="width: 100px; height: 100px"
-                :src= "scope.row.socialAttach[0]"
+                :src= "scope.row.signPic[0]"
                 :zoom-rate="1.2"
                 :max-scale="7"
                 :min-scale="0.2"
-                :preview-src-list="scope.row.socialAttach"
+                :preview-src-list="scope.row.signPic"
                 :initial-index="0"
                 fit="cover"
-                preview-teleported="true"
+                :preview-teleported=true
             />
           </div>
         </template>
       </el-table-column>
       <el-table-column label="承诺书" prop="socialSecurity" align="center" width="120">
         <template #default="scope">
-          <el-button link>承诺书</el-button>
+          <div class="demo-image__preview" v-if="scope.row.commitPic && scope.row.commitPic.length>0">
+            <el-image
+                style="width: 100px; height: 100px"
+                :src= "scope.row.commitPic[0]"
+                :zoom-rate="1.2"
+                :max-scale="7"
+                :min-scale="0.2"
+                :preview-src-list="scope.row.commitPic"
+                :initial-index="0"
+                fit="cover"
+                :preview-teleported=true
+            />
+          </div>
         </template>
       </el-table-column>
     </el-table>
-
-    <pagination
-        v-show="total > 0"
-        :total="total"
-        v-model:page="queryParams.pageNum"
-        v-model:limit="queryParams.pageSize"
-        @pagination="getList"
-    />
   </div>
 </template>
 <script setup>
 
-import {defineEmits, onMounted, reactive, ref, toRefs} from "vue";
+import {defineEmits, defineProps, onMounted, reactive, ref, toRefs} from "vue";
 import {ElMessage} from "element-plus";
 import {Search} from '@element-plus/icons-vue'
-import {addRisk, editRisk, getRiskDetail} from "@/api/projectManage/riskAnalysis"
+import {
+  addFaceRecognition,
+  addRisk, checkAll,
+  editRisk,
+  getRecognitionDetail,
+  getRiskDetail
+} from "@/api/projectManage/riskAnalysis"
 import {delPic} from "@/api/login"
 import { getToken } from "@/utils/auth";
 import Cookies from "js-cookie"
+import {getDetail} from "@/api/projectManage/contractMng";
 const emit = defineEmits(["getNextStatus"]);
-
+const props = defineProps(['projectId'])
 const state = reactive({
   loading: false,
   queryParams: {
@@ -93,45 +118,51 @@
   if(userInfo.identity === 0){
     isAmin.value = true;
   }
+  if(props.projectId){
+    getRecognition(props.projectId);
+  }
 })
+const getRecognition = async (val) =>{
+  const res = await getRecognitionDetail({projectId: val});
+  if(res.code == 200){
+    state.tableData = res.data.map(item => {
+      return {
+        ...item,
+        facePic: item.faceRecord.facePath ? [import.meta.env.VITE_APP_BASE_API + '/' + item.faceRecord.facePath ] : [],
+        signPic: item.signPath ? [import.meta.env.VITE_APP_BASE_API + '/' + item.signPath] : [],
+        commitPic: item.insurancePath ? [import.meta.env.VITE_APP_BASE_API + '/' + item.insurancePath] : [],
+        playRolesName: item.planPerson.playRoles.map(role => {
+          const roleName =  role === 1?'项目负责人':role === 2? '项目组成员':role === 3? '过程控制负责人':role === 4? '机构评价负责人':role === 5? '技术负责人':role === 6?'内部审核员':''
+          return{
+            roleName
+          }
+        })
+      }
+    })
+   console.log("res", state.tableData)
+  }else {
+    ElMessage.warning(res.message)
+  }
+}
+
+
 
 const riskOpen = async (type,val) => {
-  state.formData.projectId = val
-  if(type === 'detail' || type === 'edit' ){
-    const res = await getRiskDetail({projectId: val});
-    if(res.code == 200){
-      state.formData = res.data;
-    }else {
-      ElMessage.warning(res.message)
-    }
-  }
+  // if((type === 'detail' || type === 'edit') && !props.projectId){
+  //   getRecognition(val);
+  // }
   if(type === 'add' || type === 'clickEdit') {
-    const valid = await formRef.value.validate();
-    if(valid){
-      if (isAmin.value) {
-        ElMessage.warning("当前用户暂无权限");
-        return;
-      }
-      if(type === 'add'){
-        const {id, ...data} = JSON.parse(JSON.stringify(state.formData))
-        const res = await addRisk(data);
-        if (res.code == 200) {
-          ElMessage.success('保存成功')
-          formRef.value.clearValidate();
-          emit('getNextStatus', res.data)
-        } else {
-          ElMessage.warning(res.message)
-        }
-      }else if(type === 'clickEdit'){
-        const { ...data} = JSON.parse(JSON.stringify(state.formData))
-        const res = await editRisk(data);
-        if (res.code == 200) {
-          ElMessage.success('变更成功')
-          formRef.value.clearValidate();
-          // emit('getNextStatus', data.project.id);
-        } else {
-          ElMessage.warning(res.message)
-        }
+    if (isAmin.value) {
+      ElMessage.warning("当前用户暂无权限");
+      return;
+    }
+    if(type === 'add'){
+      const res = await addFaceRecognition({projectId: val});
+      if (res.code == 200) {
+        ElMessage.success('保存成功')
+        emit('getNextStatus', val);
+      } else {
+        ElMessage.warning(res.message)
       }
     }
   }

--
Gitblit v1.9.2