From eb5d50f5ce1ddc9c32ca54276952e68d0f132e0e Mon Sep 17 00:00:00 2001
From: zhouwenxuan <1175765986@qq.com>
Date: 星期二, 27 二月 2024 14:08:57 +0800
Subject: [PATCH] bug修改

---
 src/assets/images/cardHeader1.png                                          |    0 
 src/assets/images/choosed2.png                                             |    0 
 src/layout/components/Sidebar/menu.js                                      |   36 ++--
 src/assets/images/choosed.png                                              |    0 
 src/layout/index.vue                                                       |    5 
 src/views/safetyReview/projectManage/components/signConfirm.vue            |    7 
 src/views/safetyReview/projectManage/components/expertsList.vue            |   26 ++
 src/views/safetyReview/userManage/expertUsers/components/projectDialog.vue |    7 
 src/views/safetyReview/projectManage/components/uploadReviewRcd.vue        |   10 
 src/assets/images/back1.png                                                |    0 
 src/views/safetyReview/userManage/expertUsers/index.vue                    |    4 
 src/assets/images/bg2.png                                                  |    0 
 src/views/safetyReview/projectManage/components/rateConclusion.vue         |   39 ++--
 src/views/safetyReview/projectManage/components/employNoticeRecord.vue     |    4 
 src/views/safetyReview/projectManage/components/evaluatePlan.vue           |   15 +
 src/views/homePage.vue                                                     |    6 
 src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue  |   47 +++--
 src/views/safetyReview/projectManage/components/mapLocation.vue            |   90 +++++-----
 src/views/safetyReview/projectManage/components/confirmEnd.vue             |    8 
 src/assets/images/itemStatus2-1.png                                        |    0 
 src/views/safetyReview/projectManage/components/projectArchive.vue         |   20 +-
 src/views/safetyReview/projectManage/components/siteCheckRcd.vue           |   96 ++++++-----
 src/layout/components/TagsView/index.vue                                   |    2 
 src/assets/images/bg1.png                                                  |    0 
 src/views/originLogin.vue                                                  |    2 
 src/assets/images/cardHeader2.png                                          |    0 
 src/views/safetyReview/projectManage/process.vue                           |   45 +++-
 src/views/safetyReview/projectManage/index.vue                             |    6 
 28 files changed, 265 insertions(+), 210 deletions(-)

diff --git a/src/assets/images/back1.png b/src/assets/images/back1.png
new file mode 100644
index 0000000..f2ead8e
--- /dev/null
+++ b/src/assets/images/back1.png
Binary files differ
diff --git a/src/assets/images/bg1.png b/src/assets/images/bg1.png
new file mode 100644
index 0000000..3e4c519
--- /dev/null
+++ b/src/assets/images/bg1.png
Binary files differ
diff --git a/src/assets/images/bg2.png b/src/assets/images/bg2.png
new file mode 100644
index 0000000..62844db
--- /dev/null
+++ b/src/assets/images/bg2.png
Binary files differ
diff --git a/src/assets/images/cardHeader1.png b/src/assets/images/cardHeader1.png
new file mode 100644
index 0000000..46148f4
--- /dev/null
+++ b/src/assets/images/cardHeader1.png
Binary files differ
diff --git a/src/assets/images/cardHeader2.png b/src/assets/images/cardHeader2.png
new file mode 100644
index 0000000..95e2b91
--- /dev/null
+++ b/src/assets/images/cardHeader2.png
Binary files differ
diff --git a/src/assets/images/choosed.png b/src/assets/images/choosed.png
index cabdfb0..90901bc 100644
--- a/src/assets/images/choosed.png
+++ b/src/assets/images/choosed.png
Binary files differ
diff --git a/src/assets/images/choosed2.png b/src/assets/images/choosed2.png
new file mode 100644
index 0000000..4ee8bde
--- /dev/null
+++ b/src/assets/images/choosed2.png
Binary files differ
diff --git a/src/assets/images/itemStatus2-1.png b/src/assets/images/itemStatus2-1.png
new file mode 100644
index 0000000..33d3948
--- /dev/null
+++ b/src/assets/images/itemStatus2-1.png
Binary files differ
diff --git a/src/layout/components/Sidebar/menu.js b/src/layout/components/Sidebar/menu.js
index 20c8ce0..3c54d3d 100644
--- a/src/layout/components/Sidebar/menu.js
+++ b/src/layout/components/Sidebar/menu.js
@@ -9,86 +9,86 @@
         {
             path: '/institution',
             name: 'Institution',
-            meta: { title: '机构公示',icon: 'form',affix: true }
+            meta: { title: '机构公示',icon: 'chart',affix: true }
         },
         {
             path: '/notice',
             name: 'Notice',
-            meta: { title: '公告发布',icon: 'form', affix: true }
+            meta: { title: '公告发布',icon: 'email', affix: true }
         },
         {
             path: '/law',
             name: 'Law',
-            meta: { title: '法律法规',icon: 'form', affix: true }
+            meta: { title: '法律法规',icon: 'excel', affix: true }
         },
         {
             path: '/userManage',
             redirect: '/userManage/supervise',
-            meta: { title: '用户管理',icon: 'form'},
+            meta: { title: '用户管理',icon: 'peoples'},
             children: [
                 {
                     path: 'supervise',
                     name: 'supervise',
-                    meta: { title: '监管用户管理',icon: 'form'}
+                    meta: { title: '监管用户管理',icon: 'monitor'}
                 },
                 {
                     path: 'institutionUser',
                     name: 'institutionUser',
-                    meta: { title: '机构用户管理',icon: 'form'}
+                    meta: { title: '机构用户管理',icon: 'list'}
                 },
                 {
                     path: 'expertUsers',
                     name: 'expertUsers',
-                    meta: { title: '专家用户管理',icon: 'form'}
+                    meta: { title: '专家用户管理',icon: 'logininfor'}
                 }
             ]
         },
         {
             path: '/expertManage',
             redirect: '/expertManage/experts',
-            meta: { title: '厅专家库管理',icon: 'form'},
+            meta: { title: '厅专家库管理',icon: 'post'},
             children: [
                 {
                     path: 'experts',
                     name: 'experts',
-                    meta: { title: '厅专家库',icon: 'form'}
+                    meta: { title: '厅专家库',icon: 'server'}
                 },
                 {
                     path: 'applyRecords',
                     name: 'applyRecords',
-                    meta: { title: '专家申请记录',icon: 'form'}
+                    meta: { title: '专家申请记录',icon: 'skill'}
                 }
             ]
         },
         {
             path: '/baseSet',
             redirect: '/baseSet/evaluate',
-            meta: { title: '基础设置',icon: 'form'},
+            meta: { title: '基础设置',icon: 'dict'},
             children: [
                 {
                     path: 'evaluate',
                     name: 'evaluate',
-                    meta: { title: '评价类型管理',icon: 'form'}
+                    meta: { title: '评价类型管理',icon: 'build'}
                 },
                 {
                     path: 'expertsType',
                     name: 'expertsType',
-                    meta: { title: '专家类型管理',icon: 'form'}
+                    meta: { title: '专家类型管理',icon: 'clipboard'}
                 },
                 {
                     path: 'business',
                     name: 'business',
-                    meta: { title: '业务范围管理',icon: 'form'}
+                    meta: { title: '业务范围管理',icon: 'cascader'}
                 },
                 {
                     path: 'area',
                     name: 'area',
-                    meta: { title: '地区维护管理',icon: 'form'}
+                    meta: { title: '地区维护管理',icon: 'component'}
                 },
                 {
                     path: 'major',
                     name: 'major',
-                    meta: { title: '专业方向管理',icon: 'form'}
+                    meta: { title: '专业方向管理',icon: 'documentation'}
                 }
 
             ]
@@ -104,12 +104,12 @@
         {
             path: '/userManage',
             redirect: '/userManage/supervise',
-            meta: { title: '用户管理',icon: 'form'},
+            meta: { title: '用户管理',icon: 'peoples'},
             children: [
                 {
                     path: 'expertUsers',
                     name: 'expertUsers',
-                    meta: { title: '专家用户管理',icon: 'form'}
+                    meta: { title: '专家用户管理',icon: 'logininfor'}
                 } ,
             ]
         },
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
index d5d492f..59a8aa3 100644
--- a/src/layout/components/TagsView/index.vue
+++ b/src/layout/components/TagsView/index.vue
@@ -335,4 +335,4 @@
     }
   }
 }
-</style>
\ No newline at end of file
+</style>
diff --git a/src/layout/index.vue b/src/layout/index.vue
index 3ddb165..679e264 100644
--- a/src/layout/index.vue
+++ b/src/layout/index.vue
@@ -27,7 +27,8 @@
 const sideTheme = computed(() => settingsStore.sideTheme);
 const sidebar = computed(() => useAppStore().sidebar);
 const device = computed(() => useAppStore().device);
-const needTagsView = computed(() => settingsStore.tagsView);
+// const needTagsView = computed(() => settingsStore.tagsView);
+const needTagsView = false;
 const fixedHeader = computed(() => settingsStore.fixedHeader);
 
 const classObj = computed(() => ({
@@ -108,4 +109,4 @@
 .mobile .fixed-header {
   width: 100%;
 }
-</style>
\ No newline at end of file
+</style>
diff --git a/src/views/homePage.vue b/src/views/homePage.vue
index ac24b1e..4cc13a1 100644
--- a/src/views/homePage.vue
+++ b/src/views/homePage.vue
@@ -5,7 +5,7 @@
     <div class="main-content">
       <div class="top" style="z-index: 1">
         <div class="top-cont">
-          <div class="logo blueFont">智慧安评</div>
+          <div class="logo blueFont">新疆维吾尔自治区智慧安评服务平台</div>
           <div class="time">
             <div>
               <span>{{state.date}}</span>
@@ -48,7 +48,7 @@
     </div>
     <!--  底部  -->
     <div class="el-login-footer">
-      <span>Copyright © All Rights Reserved.</span>
+      <span>Copyright ©2023-{{nowYear}} All Rights Reserved.</span>
     </div>
   </div>
 </template>
@@ -64,6 +64,7 @@
 const { proxy } = getCurrentInstance()
 const route = useRoute()
 const router = useRouter()
+const nowYear = ref();
 // 时间格式化
 const timeForm = {
   hour12: false,
@@ -92,6 +93,7 @@
 const getDateTime = () => {
   const curTime = new Date().toLocaleString('zh', timeForm).replace(/\//g, '-');
   state.date = curTime.slice(0, 10);
+  nowYear.value = curTime.slice(0, 4);
   let week = ['日', '一', '二', '三', '四', '五', '六'];
   let day = new Date().getDay();
   state.weekDay = '星期' + week[day];
diff --git a/src/views/originLogin.vue b/src/views/originLogin.vue
index f683008..6b7c7aa 100644
--- a/src/views/originLogin.vue
+++ b/src/views/originLogin.vue
@@ -7,7 +7,7 @@
         <img :src="loginImgPng">
       </div>
       <el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form">
-        <h3 class="title">智慧安评</h3>
+        <h3 class="title">新疆维吾尔自治区智慧安评服务平台</h3>
         <el-form-item prop="username">
           <el-input
             v-model="loginForm.username"
diff --git a/src/views/safetyReview/projectManage/components/confirmEnd.vue b/src/views/safetyReview/projectManage/components/confirmEnd.vue
index 491f0b5..a21b20d 100644
--- a/src/views/safetyReview/projectManage/components/confirmEnd.vue
+++ b/src/views/safetyReview/projectManage/components/confirmEnd.vue
@@ -3,7 +3,7 @@
     <el-form ref="formRef" :model="state.formData" :rules="state.rules" class="register-form" label-position="top">
       <el-row :gutter="30">
         <el-col :span="6">
-          <el-button type="primary" @click="addRectify('add',{})">新增整改</el-button>
+          <el-button type="primary" @click="addRectify('add',{})" :disabled="projectType.value ==='detail'">新增整改</el-button>
         </el-col>
       </el-row>
       <el-table :data="state.recitificationList" :border="true" style="margin: 20px 0">
@@ -19,8 +19,8 @@
         </el-table-column>
         <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
           <template #default="scope">
-            <el-button link type="primary" @click="addRectify('edit',scope.row)">编辑</el-button>
-            <el-button link type="danger" @click="del(scope.row)">删除</el-button>
+            <el-button link type="primary" @click="addRectify('edit',scope.row)" :disabled="projectType.value ==='detail'">编辑</el-button>
+            <el-button link type="danger" @click="del(scope.row)" :disabled="projectType.value ==='detail'">删除</el-button>
           </template>
         </el-table-column>
       </el-table>
@@ -89,8 +89,10 @@
   }
 }
 
+const projectType = ref('')
 const riskOpen = async (type,val) => {
   // await  getList(val);
+  projectType.value = type;
   state.formData.projectId = val;
   if(type === 'confirm') {
     const res = await doConfirm({projectId: val});
diff --git a/src/views/safetyReview/projectManage/components/employNoticeRecord.vue b/src/views/safetyReview/projectManage/components/employNoticeRecord.vue
index bf53ce7..9811559 100644
--- a/src/views/safetyReview/projectManage/components/employNoticeRecord.vue
+++ b/src/views/safetyReview/projectManage/components/employNoticeRecord.vue
@@ -51,7 +51,7 @@
         <el-table-column label="未到现场勘验原因" prop="reason" align="center" class-name="small-padding fixed-width"></el-table-column>
         <el-table-column label="是否已告知" align="center" class-name="small-padding fixed-width">
           <template #default="scope">
-            <el-radio-group v-model="scope.row.informed" size="large" @change="(value)=>changePerson(value,scope.row)">
+            <el-radio-group v-model="scope.row.informed" size="large" @change="(value)=>changePerson(value,scope.row)" :disabled="projectType==='detail'">
               <el-radio :label="1" size="large">是</el-radio>
               <el-radio :label="0" size="large">否</el-radio>
             </el-radio-group>
@@ -102,9 +102,11 @@
 
 });
 
+const projectType = ref('');
 const riskOpen = async (type,val) => {
   state.formData.projectId = val
   state.projectId = val
+  projectType.value = type;
   // await getWorksList(val)
   if(type === 'detail' || type === 'edit' ){
     const res = await getWorkDetail({projectId: val})
diff --git a/src/views/safetyReview/projectManage/components/evaluatePlan.vue b/src/views/safetyReview/projectManage/components/evaluatePlan.vue
index 3c5427f..b177222 100644
--- a/src/views/safetyReview/projectManage/components/evaluatePlan.vue
+++ b/src/views/safetyReview/projectManage/components/evaluatePlan.vue
@@ -80,7 +80,7 @@
         </el-col>
         <el-col :span="6">
           <div style="width: 100%;display: flex;justify-content: right">
-            <el-button type="primary" icon="Plus" @click="openWorksDialog('add',{})">添加成员</el-button>
+            <el-button type="primary" icon="Plus" @click="openWorksDialog('add',{})" :disabled="projectType==='detail'">添加成员</el-button>
           </div>
         </el-col>
       </el-row>
@@ -102,8 +102,8 @@
         <el-table-column label="未到现场勘验原因" prop="reason" align="center" class-name="small-padding fixed-width"></el-table-column>
         <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
           <template #default="scope">
-            <el-button link @click="openWorksDialog('edit',scope.row)">修改</el-button>
-            <el-button link type="danger" @click="delMember(scope.row)">删除</el-button>
+            <el-button link @click="openWorksDialog('edit',scope.row)" :disabled="projectType==='detail'">修改</el-button>
+            <el-button link type="danger" @click="delMember(scope.row)" :disabled="projectType==='detail'">删除</el-button>
           </template>
         </el-table-column>
       </el-table>
@@ -113,7 +113,7 @@
         </el-col>
         <el-col :span="6">
           <div style="width: 100%;display: flex;justify-content: right">
-            <el-button type="primary" icon="Plus" @click="openDeviceDialog('add',{})">添加设备</el-button>
+            <el-button type="primary" icon="Plus" @click="openDeviceDialog('add',{})" :disabled="projectType==='detail'">添加设备</el-button>
           </div>
         </el-col>
       </el-row>
@@ -132,8 +132,8 @@
         </el-table-column>
         <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
           <template #default="scope">
-            <el-button link @click="openDeviceDialog('edit',scope.row)">修改</el-button>
-            <el-button link type="danger" @click="delDeviceItem(scope.row)">删除</el-button>
+            <el-button link @click="openDeviceDialog('edit',scope.row)" :disabled="projectType==='detail'">修改</el-button>
+            <el-button link type="danger" @click="delDeviceItem(scope.row)" :disabled="projectType==='detail'">删除</el-button>
           </template>
         </el-table-column>
       </el-table>
@@ -279,10 +279,11 @@
   }
 })
 
-
+const projectType = ref('');
 const riskOpen = async (type,val) => {
   state.formData.projectId = val
   state.projectId = val
+  projectType.value = type;
   for(let i of state.formData.estimateSchedules){
     i.projectId = val
   }
diff --git a/src/views/safetyReview/projectManage/components/expertsList.vue b/src/views/safetyReview/projectManage/components/expertsList.vue
index 8c4d603..2d78c70 100644
--- a/src/views/safetyReview/projectManage/components/expertsList.vue
+++ b/src/views/safetyReview/projectManage/components/expertsList.vue
@@ -38,7 +38,7 @@
               </el-select>
             </el-form-item>
             <el-form-item label="专业方向">
-              <el-select v-model="queryParams.major" value-key="id" style="width: 250px" placeholder="专业方向">
+              <el-select v-model="queryParams.major" clearable value-key="id" style="width: 250px" placeholder="专业方向">
                 <el-option
                     v-for="item in majorList"
                     :key="item.id"
@@ -47,8 +47,8 @@
                 />
               </el-select>
             </el-form-item>
-            <el-form-item label="专业方向">
-              <el-select v-model="queryParams.post" style="width: 250px" placeholder="请选择职务">
+            <el-form-item label="职务">
+              <el-select v-model="queryParams.post" clearable style="width: 250px" placeholder="请选择职务">
                 <el-option
                     v-for="item in postList"
                     :key="item.id"
@@ -130,8 +130,14 @@
             <el-table-column label="职称" prop="jobTitle" align="center"  />
             <el-table-column label="专业方向" prop="majorNames" align="center" width="100" />
             <el-table-column label="评价师等级" prop="level" align="center" width="100" />
-            <el-table-column label="业绩汇总" prop="summary" align="center"  />
-            <el-table-column label="最近评价时间" prop="lastTime" align="center" width="120" />
+            <el-table-column label="业绩汇总" prop="summary" align="center">
+              <template #default="scope">
+                <div style="cursor:pointer;color: #3b82f6;" @click="openList(scope.row)">
+                  <span>{{scope.row.projectCount}}</span>
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column label="最近评价时间" prop="lastEstimateTime" align="center" width="120" />
           </el-table>
 
           <pagination
@@ -148,12 +154,14 @@
                     </span>
             </template>
         </el-dialog>
+      <project-dialog ref="projectRef" @getList="getList"></project-dialog>
     </div>
 </template>
 <script setup>
 import {getCurrentInstance, onMounted, reactive, ref, toRefs,defineEmits} from "vue";
 import {getDictList} from "@/api/backManage/evaluate";
 import {ElMessage, ElMessageBox} from "element-plus";
+import projectDialog from "@/views/safetyReview/userManage/expertUsers/components/projectDialog.vue"
 import Cookies from "js-cookie";
 import {delMonitor, getExpertList, getMonitorList} from "@/api/sysUsers";
 const { proxy } = getCurrentInstance();
@@ -243,7 +251,9 @@
         ...item,
         socialAttach: item.socialAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}),
         medicalAttach: item.medicalAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}),
-        salaryAttach: item.salaryAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path})
+        salaryAttach: item.salaryAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}),
+        lastEstimateTime: item.personProjectVO ? item.personProjectVO.lastEstimateTime.slice(0,10) : '',
+        projectCount: item.personProjectVO ? item.personProjectVO.projectCount : ''
       }
     })
     console.log('RES',data.dataList)
@@ -253,6 +263,10 @@
   }
   loading.value = false
 }
+const projectRef = ref();
+const openList = (val) => {
+  projectRef.value.openDialog(val);
+}
 
 const getMajor = async () => {
   const queryParams = {
diff --git a/src/views/safetyReview/projectManage/components/mapLocation.vue b/src/views/safetyReview/projectManage/components/mapLocation.vue
index 27b8fd2..e566954 100644
--- a/src/views/safetyReview/projectManage/components/mapLocation.vue
+++ b/src/views/safetyReview/projectManage/components/mapLocation.vue
@@ -1,41 +1,41 @@
 <template>
-    <el-dialog
-        v-model="state.mapLocationVisible"
-        append-to-body
-        :close-on-click-modal="false"
-        width="75%"
-        :title="state.title"
-    >
-        <div class="mapLocation_head">
-            <div>
-                <el-alert
-                    title="点击地点获取经纬度信息"
-                    type="info"
-                    :closable="false"
-                >
-                </el-alert>
-            </div>
-            <div class="mapLocation_latlng">
-                <span>经度:</span>
-                <el-input class="mapLocation_latlng_input" id="lng" v-model="state.longitude"></el-input>
-            </div>
-            <div class="mapLocation_latlng">
-                <span>纬度:</span>
-                <el-input class="mapLocation_latlng_input" id="lat" v-model="state.latitude"></el-input>
-            </div>
-        </div>
-        <div class="mapLocation_body">
-          <baidu-map class="map" ak="BkZdiHBj9aGrMdVFM48r2njNiMzsekga" v="3.0" type="API" :center="state.center" :zoom="15" scroll-wheel-zoom @ready="initMap" @click="getPosition">
-            <bm-marker :position="{lng: state.longitude, lat: state.latitude}" :dragging="true" animation="BMAP_ANIMATION_BOUNCE">
-              <bm-label content="选择地点" :labelStyle="{color: 'red', fontSize : '24px'}" :offset="{width: -35, height: 30}"/>
-            </bm-marker>
-          </baidu-map>
-        </div>
-        <div  align="right" style="margin-top: 10px">
-            <el-button @click="state.mapLocationVisible = false">取消</el-button>
-            <el-button type="primary" @click="submitLatLng()">确认</el-button>
-        </div>
-    </el-dialog>
+  <el-dialog
+      v-model="state.mapLocationVisible"
+      append-to-body
+      :close-on-click-modal="false"
+      width="75%"
+      :title="state.title"
+  >
+    <div class="mapLocation_head">
+      <div>
+        <el-alert
+            title="点击地点获取经纬度信息"
+            type="info"
+            :closable="false"
+        >
+        </el-alert>
+      </div>
+      <div class="mapLocation_latlng">
+        <span>经度:</span>
+        <el-input class="mapLocation_latlng_input" id="lng" v-model="state.longitude"></el-input>
+      </div>
+      <div class="mapLocation_latlng">
+        <span>纬度:</span>
+        <el-input class="mapLocation_latlng_input" id="lat" v-model="state.latitude"></el-input>
+      </div>
+    </div>
+    <div class="mapLocation_body">
+      <baidu-map class="map" ak="BkZdiHBj9aGrMdVFM48r2njNiMzsekga" v="3.0" type="API" :center="state.center" :zoom="15" scroll-wheel-zoom @ready="initMap" @click="getPosition">
+        <bm-marker :position="{lng: state.longitude, lat: state.latitude}" :dragging="true" animation="BMAP_ANIMATION_BOUNCE">
+          <bm-label content="选择地点" :labelStyle="{color: 'red', fontSize : '24px'}" :offset="{width: -35, height: 30}"/>
+        </bm-marker>
+      </baidu-map>
+    </div>
+    <div  align="right" style="margin-top: 10px">
+      <el-button @click="state.mapLocationVisible = false">取消</el-button>
+      <el-button type="primary" @click="submitLatLng()">确认</el-button>
+    </div>
+  </el-dialog>
 </template>
 
 <script setup>
@@ -100,19 +100,19 @@
   }
 }
 .mapLocation_head{
-    width:100%;
-    height:100px;
+  width:100%;
+  height:100px;
 }
 .mapLocation_body{
-    width:100%;
-    height:500px
+  width:100%;
+  height:500px
 }
 .mapLocation_latlng{
-    padding-top:10px;
-    display:inline-block;
-    margin-right: 20px;
+  padding-top:10px;
+  display:inline-block;
+  margin-right: 20px;
 }
 .mapLocation_latlng_input{
-    width:250px;
+  width:250px;
 }
 </style>
diff --git a/src/views/safetyReview/projectManage/components/projectArchive.vue b/src/views/safetyReview/projectManage/components/projectArchive.vue
index 18e88a6..94f3b59 100644
--- a/src/views/safetyReview/projectManage/components/projectArchive.vue
+++ b/src/views/safetyReview/projectManage/components/projectArchive.vue
@@ -32,10 +32,10 @@
           <template #default="scope">
             <el-upload accept=".pdf,.doc,.docx"
                        :action="state.uploadUrl"
-                       :disabled="state.disabled"
+                       :disabled="projectType === 'detail'"
                        :headers="state.header"
                        method="post"
-                       :on-success="handleAvatarSuccess"
+                       :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,scope.row)"
                        v-model:file-list="scope.row.fileList"
                        :on-remove="handleRemove"
                        :data="state.uploadData"
@@ -198,7 +198,8 @@
         ElMessage.warning("当前用户暂无权限");
         return;
       }
-      if(state.actualContract.actualContractMoney == '') {
+
+      if(state.actualContract.actualContractMoney == '' || !state.actualContract.actualContractMoney) {
         ElMessage.warning("请输入项目合同额");
         return;
       }
@@ -293,14 +294,15 @@
   }
 };
 
-const handleAvatarSuccess = (res, uploadFile) => {
+const handleAvatarSuccess = (res, uploadFile,val) => {
   if(res.code === 200){
-    console.log("if",state.uploadList)
-    // ElMessage({
-    //   type: 'success',
-    //   message: '文件上传成功'
-    // })
+    ElMessage({
+      type: 'success',
+      message: '文件上传成功'
+    })
   }else {
+    const delVal = state.uploadList.findIndex(i => i.id === val.id);
+    state.uploadList[delVal].fileList.splice(state.uploadList[delVal].fileList.indexOf(uploadFile),1)
     ElMessage({
       type: 'warning',
       message: res.message
diff --git a/src/views/safetyReview/projectManage/components/rateConclusion.vue b/src/views/safetyReview/projectManage/components/rateConclusion.vue
index 94f2f8c..0496c97 100644
--- a/src/views/safetyReview/projectManage/components/rateConclusion.vue
+++ b/src/views/safetyReview/projectManage/components/rateConclusion.vue
@@ -23,18 +23,20 @@
       <el-row :gutter="30">
         <el-col :span="18">
           <el-form-item>
-            <el-upload accept="image/*,.pdf,.doc,.docx,.xlsx,.xls"
-                       :action="state.uploadUrl"
-                       :disabled="state.disabled"
-                       :headers="state.header"
-                       method="post"
-                       :on-success="handleAvatarSuccess"
-                       :on-exceed="showTip"
-                       v-model:file-list="state.fileList"
-                       :on-remove="handleRemove"
-                       :data="state.uploadData"
-                       :on-preview="handlePreview"
-                       :limit='1'
+            <el-upload
+                v-if="state.formData.isReviseManual === 1"
+                accept="image/*,.pdf,.doc,.docx,.xlsx,.xls"
+                 :action="state.uploadUrl"
+                 :disabled="state.disabled"
+                 :headers="state.header"
+                 method="post"
+                 :on-success="handleAvatarSuccess"
+                 :on-exceed="showTip"
+                 v-model:file-list="state.fileList"
+                 :on-remove="handleRemove"
+                 :data="state.uploadData"
+                 :on-preview="handlePreview"
+                 :limit='1'
             >
               <el-button type="primary">附件上传</el-button>
               <template #tip>
@@ -175,17 +177,18 @@
 const handleAvatarSuccess = (res) => {
   if(res.code === 200){
     getProcessFiles()
-    console.log("if",state.fileList)
-    // ElMessage({
-    //   type: 'success',
-    //   message: '文件上传成功'
-    // })
+    ElMessage({
+      type: 'success',
+      message: '文件上传成功'
+    })
   }else {
+    state.fileList.splice(state.fileList.indexOf(uploadFile),1)
     ElMessage({
       type: 'warning',
-      message: '文件上传失败'
+      message: res.message
     })
   }
+
 }
 const handlePreview = (file) => {
   let path = "";
diff --git a/src/views/safetyReview/projectManage/components/signConfirm.vue b/src/views/safetyReview/projectManage/components/signConfirm.vue
index 844442c..c529f8d 100644
--- a/src/views/safetyReview/projectManage/components/signConfirm.vue
+++ b/src/views/safetyReview/projectManage/components/signConfirm.vue
@@ -10,7 +10,8 @@
           <span>{{ scope.row.planPerson.playRole === 1?'项目负责人': scope.row.planPerson.playRole === 2?
               '项目组成员':scope.row.planPerson.playRole === 3?
                   '过程控制负责人':scope.row.planPerson.playRole === 4?
-                      '机构评价负责人':scope.row.planPerson.playRole === 5?'技术负责人':''}}
+                      '机构评价负责人':scope.row.planPerson.playRole === 5?
+                          '技术负责人':scope.row.planPerson.playRole === 6?'内部审核员':''}}
           </span>
         </template>
       </el-table-column>
@@ -24,7 +25,7 @@
       <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">是</span>
+          <span v-if="scope.row.facePic.length>0">是</span>
           <span v-else>否</span>
         </template>
       </el-table-column>
@@ -135,7 +136,7 @@
         commitPic: item.insurancePath ? [import.meta.env.VITE_APP_BASE_API + '/' + item.insurancePath] : [],
       }
     })
-   console.log("res",res)
+   console.log("res", state.tableData)
   }else {
     ElMessage.warning(res.message)
   }
diff --git a/src/views/safetyReview/projectManage/components/siteCheckRcd.vue b/src/views/safetyReview/projectManage/components/siteCheckRcd.vue
index cc1b345..5ccb7de 100644
--- a/src/views/safetyReview/projectManage/components/siteCheckRcd.vue
+++ b/src/views/safetyReview/projectManage/components/siteCheckRcd.vue
@@ -38,7 +38,7 @@
         </el-col>
         <el-col :span="6">
           <el-form-item prop="isSafetyCheck" label="编制现场安全检查表">
-            <el-radio-group v-model="state.formData.isSafetyCheck" size="large" @change="changeRadio">
+            <el-radio-group v-model="state.formData.isSafetyCheck" size="large" @change="changeRadio" :disabled="projectType==='detail'">
               <el-radio :label="1" size="large">是</el-radio>
               <el-radio :label="0" size="large">否</el-radio>
             </el-radio-group>
@@ -48,7 +48,7 @@
       <el-row :gutter="30">
         <el-col :span="24" v-if="state.formData.isSafetyCheck == 1">
           <el-form-item label="安全检查表上传" prop="assAccessoryFiles">
-            <el-upload accept="image/*,.pdf,.doc,.docx,.xlsx,.xls" :action="state.uploadUrl" :data="{moduleType: 5,projectId: props.projectId}" :headers="state.header" method="post" :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,5)" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='1' v-model:file-list="state.safetyList" :before-upload="picSize" :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles,5)">
+            <el-upload  :disabled="projectType==='detail'" accept="image/*,.pdf,.doc,.docx,.xlsx,.xls" :action="state.uploadUrl" :data="{moduleType: 5,projectId: props.projectId}" :headers="state.header" method="post" :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,5)" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='1' v-model:file-list="state.safetyList" :before-upload="picSize" :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles,5)">
               <el-button type="primary">附件上传</el-button>
               <template #tip>
                 <div class="el-upload__tip">上传文件尺寸小于5M,最多可上传1份</div>
@@ -71,7 +71,7 @@
       <el-row style="border: 1px dashed #999;border-radius: 4px;padding: 10px;margin-top: 20px">
         <el-col :span="24">
           <el-form-item label="主要装置前合影照片" prop="deviceImages">
-            <el-upload accept="image/*" :action="state.uploadUrl" :data="{moduleType: 1,projectId: props.projectId}" list-type="picture-card" :headers="state.header" method="post" :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,1)" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='10' v-model:file-list="state.beforeDeviceList" :before-upload="picSize" :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles,1)" >
+            <el-upload accept="image/*" :disabled="projectType === 'detail'" :action="state.uploadUrl" :data="{moduleType: 1,projectId: props.projectId}" list-type="picture-card" :headers="state.header" method="post" :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,1)" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='10' v-model:file-list="state.beforeDeviceList" :before-upload="picSize" :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles,1)" >
               <el-icon><Plus /></el-icon>
               <template #tip>
                 <div class="el-upload__tip">上传照片尺寸小于5M,最多可上传10张</div>
@@ -83,7 +83,7 @@
       <el-row style="border: 1px dashed #999;border-radius: 4px;padding: 10px;margin-top: 20px">
         <el-col :span="24">
           <el-form-item label="现场勘验照片" prop="investingationImages">
-            <el-upload accept="image/*" :action="state.uploadUrl" :data="{moduleType: 2,projectId: props.projectId}" list-type="picture-card" :headers="state.header" method="post" :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,2)" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='10' v-model:file-list="state.siteCheckList" :before-upload="picSize" :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles,2)" >
+            <el-upload accept="image/*" :disabled="projectType === 'detail'" :action="state.uploadUrl" :data="{moduleType: 2,projectId: props.projectId}" list-type="picture-card" :headers="state.header" method="post" :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,2)" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='10' v-model:file-list="state.siteCheckList" :before-upload="picSize" :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles,2)" >
               <el-icon><Plus /></el-icon>
               <template #tip>
                 <div class="el-upload__tip">上传照片尺寸小于5M,最多可上传10张</div>
@@ -95,7 +95,7 @@
       <el-row style="border: 1px dashed #999;border-radius: 4px;padding: 10px;margin-top: 20px;margin-bottom: 20px">
         <el-col :span="24">
           <el-form-item label="企业陪同人员照片" prop="ccompanyImages">
-            <el-upload accept="image/*" :action="state.uploadUrl" :data="{moduleType: 3,projectId: props.projectId}" list-type="picture-card" :headers="state.header" method="post" :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,3)" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='10' v-model:file-list="state.companyList" :before-upload="picSize" :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles,3)" >
+            <el-upload :disabled="projectType === 'detail'" accept="image/*" :action="state.uploadUrl" :data="{moduleType: 3,projectId: props.projectId}" list-type="picture-card" :headers="state.header" method="post" :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,3)" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='10' v-model:file-list="state.companyList" :before-upload="picSize" :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles,3)" >
               <el-icon><Plus /></el-icon>
               <template #tip>
                 <div class="el-upload__tip">上传照片尺寸小于5M,最多可上传10张</div>
@@ -253,10 +253,11 @@
   }
 }
 
-
+const projectType = ref('');
 const riskOpen = async (type,val) => {
   state.formData.projectId = val
   state.projectId = val
+  projectType.value = type;
   if(type === 'detail' || type === 'edit' ){
     // await getDetail(val)
   }
@@ -464,54 +465,56 @@
 }
 
 const handleRemove = async (file, uploadFiles,type) => {
-  ElMessageBox.confirm(
-      '确定删除该附件?',
-      '提示',
-      {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning',
-      })
-      .then( async() => {
-        const res = await delFile(file.id)
-        if(res.code == 200){
-          ElMessage({
-            type: 'success',
-            message: '文件已删除'
-          })
+
+    ElMessageBox.confirm(
+        '确定删除该附件?',
+        '提示',
+        {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+          type: 'warning',
+        })
+        .then( async() => {
+          const res = await delFile(file.id)
+          if(res.code == 200){
+            ElMessage({
+              type: 'success',
+              message: '文件已删除'
+            })
+            if(type == 1){
+              await getBeforeFiles()
+            }
+            if(type == 2){
+              await getSiteCheckFiles()
+            }
+            if(type == 3){
+              await getCompanyFiles()
+            }
+            if(type == 5){
+              await getSafetyFiles()
+            }
+          }else{
+            ElMessage({
+              type: 'warning',
+              message: res.message
+            })
+          }
+        })
+        .catch(()=>{
           if(type == 1){
-            await getBeforeFiles()
+            getBeforeFiles()
           }
           if(type == 2){
-            await getSiteCheckFiles()
+            getSiteCheckFiles()
           }
           if(type == 3){
-            await getCompanyFiles()
+            getCompanyFiles()
           }
           if(type == 5){
-            await getSafetyFiles()
+            getSafetyFiles()
           }
-        }else{
-          ElMessage({
-            type: 'warning',
-            message: res.message
-          })
-        }
-      })
-      .catch(()=>{
-        if(type == 1){
-          getBeforeFiles()
-        }
-        if(type == 2){
-          getSiteCheckFiles()
-        }
-        if(type == 3){
-          getCompanyFiles()
-        }
-        if(type == 5){
-          getSafetyFiles()
-        }
-      })
+        })
+
 }
 
 defineExpose({
@@ -527,4 +530,5 @@
   }
 }
 
+
 </style>
diff --git a/src/views/safetyReview/projectManage/components/uploadReviewRcd.vue b/src/views/safetyReview/projectManage/components/uploadReviewRcd.vue
index 58a404b..dd293c2 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" :on-remove="handleRemove">
+            <el-upload :disabled="projectType === 'detail'" 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>
@@ -19,7 +19,7 @@
         <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>
-            <el-button link type="danger" @click="handleRemove(scope.row,[])">删除</el-button>
+            <el-button link type="danger" @click="handleRemove(scope.row,[])" :disabled="projectType === 'detail'">删除</el-button>
           </template>
         </el-table-column>
       </el-table>
@@ -58,10 +58,13 @@
   getReviewFiles(props.projectId)
 })
 
+const projectType = ref('');
 const riskOpen = async (type,val) => {
+  projectType.value = type;
   if(type === 'detail' || type === 'edit' ){
     await getReviewFiles
   }
+
   if(type === 'add' || type === 'clickEdit') {
     const valid = await formRef.value.validate();
     if(valid){
@@ -159,9 +162,10 @@
   if(res.code == 200){
     getReviewFiles()
   }else{
+    state.fileList.splice(state.fileList.indexOf(uploadFile),1)
     ElMessage({
       type: 'warning',
-      message: '文件上传失败'
+      message: res.message
     })
   }
 }
diff --git a/src/views/safetyReview/projectManage/index.vue b/src/views/safetyReview/projectManage/index.vue
index ae959cb..c1fe209 100644
--- a/src/views/safetyReview/projectManage/index.vue
+++ b/src/views/safetyReview/projectManage/index.vue
@@ -119,7 +119,7 @@
       <el-table-column label="归档确认" prop="" align="center"  width="150">
         <template #default="scope">
           <div style="cursor:pointer;color: #3b82f6;" >
-            <span   @click="goMenu('toThirteen',scope.row)">{{scope.row.activeConfirm}}</span>
+            <span  v-if="scope.row.process === 5" @click="goMenu('toThirteen',scope.row)">{{scope.row.activeConfirm}}</span>
 <!--            <span v-else></span>-->
           </div>
         </template>
@@ -493,10 +493,6 @@
 });
 const goMenu = (toPath,val) => {
   console.log("val",val)
-  if(toPath ==='toThirteen' && val.personRecognition && val.personRecognition. recognitionCnt === 0){
-    ElMessage.warning('未进行签字确认,无法查看!')
-    return;
-  }
   toProcess('edit',val,toPath);
 }
 
diff --git a/src/views/safetyReview/projectManage/process.vue b/src/views/safetyReview/projectManage/process.vue
index 65e713e..ce05957 100644
--- a/src/views/safetyReview/projectManage/process.vue
+++ b/src/views/safetyReview/projectManage/process.vue
@@ -3,8 +3,10 @@
     <div class="flow">
       <div class="content"  :class="{show: isShowMenu}" >
         <div class="content-middle" @click="clickMenu(true)">
-          <div style="margin-right:20px;height: 85px;display: flex;align-items: center;flex-shrink: 1;">
-            <img :src="projectPng">
+          <div class="project-title">
+<!--            <img :src="projectPng">-->
+            <span>项目</span>
+            <span>阶段</span>
           </div>
           <div v-for="item in menuList" :key="item.id" style="flex: 1" :class="{choose: item.status === 1 || item.status === 2}">
             <div class="header-item">
@@ -53,7 +55,7 @@
             <sign-confirm ref="signConfirmRef" v-if="selectedObj.id === 13" @getNextStatus="getNextStatus" :projectId="projectId"></sign-confirm>
             <confirm-end ref="confirmEndRef" v-if="selectedObj.id === 14" @getNextStatus="getNextStatus" :projectId="projectId"></confirm-end>
           </div>
-          <div style="display: flex;align-items: center;justify-content: center;margin-bottom: -20px">
+          <div style="display: flex;align-items: center;justify-content: center;margin-bottom: -30px;margin-top: 10px">
             <el-button type="primary" v-if="selectedObj.id !== 1" style="width: 80px" @click="back">上一步</el-button>
             <el-button type="warning" style="width: 80px"  v-if="(projectStatus === 'add'   && selectedObj.status === 1 && selectedObj.id !== 14)||(projectStatus === 'edit' && selectedObj.status === 1 && selectedObj.id !== 14) " @click="save">保存</el-button>
             <el-button type="warning" style="width: 80px"  v-if="(projectStatus === 'edit' && selectedObj.status !== 1 && selectedObj.id !== 13 && selectedObj.id !== 14 && reportProcess != 14) || (projectStatus === 'add'   && selectedObj.status !== 1 && selectedObj.id !== 14 && reportProcess != 14) " @click="clickEdit">变更</el-button>
@@ -83,7 +85,7 @@
 import status0Png from "@/assets/images/status0.png"
 import status1Png from "@/assets/images/status1.png"
 import status2Png from "@/assets/images/status2.png"
-import itemStatus2Png from "@/assets/images/itemStatus2.png"
+import itemStatus2Png from "@/assets/images/itemStatus2-1.png"
 import { useRoute } from 'vue-router'
 import {getProjectStatus} from "@/api/projectManage/project"
 import ContractManage from "./components/contractManage";
@@ -924,7 +926,7 @@
       max-height: 85px;
       cursor: pointer;
       background-color: hsla(0,0%,100%,.97);
-      background-image: url(../../../assets/images/bg.png);
+      //background-image: url(../../../assets/images/bg2.png);
       background-repeat: no-repeat;
       background-size: 100% 84px;
       overflow: hidden;
@@ -947,7 +949,7 @@
         pointer-events: auto;
         transform: translateX(-50%);
         width: 118px;
-        background-image: url(../../../assets/images/back.png);
+        background-image: url(../../../assets/images/back1.png);
       }
       .choose .header-item{
         color: #fff;
@@ -964,6 +966,18 @@
       display: flex;
       flex-direction: row;
       box-shadow: 0 0 18px 3px rgba(145,146,171,.2);
+      .project-title{
+        margin-right: 20px;
+        height: 85px;
+        display: flex;
+        align-items: center;
+        flex-shrink: 1;
+        flex-direction: column;
+        justify-content: center;
+        font-size: 20px;
+        font-weight: 700;
+        color: rgb(255, 140, 138);
+      }
     }
     .header-item{
       position: relative;
@@ -995,11 +1009,11 @@
       font-size: 19px;
       color: #626c8b;
       border: 1px solid #fff;
-      background: rgba(198,230,255,.2);
+      background: rgba(233 223 211 / 20%);
       border-radius: 8px;
       display: flex;
       align-items: center;
-      width: 70%;
+      width: 80%;
       padding-left: 20px;
       padding-right: 15px;
       cursor: pointer;
@@ -1011,13 +1025,13 @@
         line-height: 20px;
         text-align: center;
         border-radius: 50%;
-        background: #b9c2d5;
+        background: #f3ccb0;
         margin-right: 10px;
         min-width: 21px;
         min-height: 21px;
       }
       .item-icon-status1{
-        color: #3b75ff;
+        color: #f17235;
         background: #fff;
       }
       .item-icon-status2{
@@ -1031,13 +1045,13 @@
       cursor: pointer;
       color: #fff;
       border: 1px solid #c6e6ff;
-      background: linear-gradient(90deg,#57b6ff,#3b75ff);
+      background: linear-gradient(90deg,rgb(239, 186, 141),rgb(255, 140, 138));
     }
     .itemPrev{
       cursor: pointer;
-      color: #3b75ff;
-      border: 1px solid #c6e6ff;
-      background: rgba(198,230,255,.4);
+      color: #f38323;
+      border: 1px solid #f5e4cf;
+      background: rgb(249 210 170 / 40%);
     }
     .itemPrev:hover{
       transform: scale(1.1);
@@ -1056,7 +1070,7 @@
       padding: 12px 56px;
       font-size: 18px;
       color: #fff;
-      background-image: url(../../../assets/images/cardHeader.png);
+      background-image: url(../../../assets/images/cardHeader2.png);
       background-size: 100% 100%;
       background-repeat: no-repeat;
       margin: -20px;
@@ -1078,6 +1092,7 @@
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
+    font-size: 16px;
   }
 
 
diff --git a/src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue b/src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue
index 06ab7a9..972aeaf 100644
--- a/src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue
+++ b/src/views/safetyReview/userManage/expertUsers/components/expertDialog.vue
@@ -372,20 +372,25 @@
 const isAgency = ref(false);
 onMounted(()=>{
 
-    const userInfo = JSON.parse(Cookies.get('userInfo'))
-
-    if(userInfo.identity === 1){
-      state.agencyName = userInfo.agentName;
-      state.form.agencyId = userInfo.agentId;
-      isAgency.value = true;
-    }else {
-      getAgency()
-    }
-    console.log("userinfo",userInfo)
 })
 
+const getUserInfoAgency = () => {
+  const userInfo = JSON.parse(Cookies.get('userInfo'))
+  if(userInfo.identity === 1){
+    state.agencyName = userInfo.agentName;
+    state.form.agencyId = userInfo.agentId;
+    isAgency.value = true;
+  }else {
+    getAgency()
+  }
+  console.log("userinfo",userInfo)
+}
+
+
+
 const openDialog = async (type, value) => {
-    getArea()
+ await getUserInfoAgency();
+  await getArea()
     state.title = type === 'add' ? '新增' : type ==='edit' ? '编辑' : type ==='pwd' ? '修改密码' : '查看' ;
     if(type === 'edit') {
         const param = {
@@ -436,6 +441,13 @@
             ElMessage.warning(res.message)
         }
 
+    }else if(type === 'add'){
+      console.log("aa",props.majorList)
+      props.majorList.forEach(item => {
+        if(item.certificateNo){
+          item.certificateNo = ''
+        }
+      })
     }
     if(type == 'pwd'){
         state.form.id = value.id
@@ -488,12 +500,9 @@
             if(res.code == 200){
                 ElMessage.success(res.message)
                 emit('getList')
+                reset();
                 superRef.value.clearValidate();
-                superRef.value.resetFields();
-                state.salaryList = [];
-                state.medicalList = [];
-                state.socialList = [];
-                state.photoList = [];
+
                 dialogVisible.value = false;
             }else{
                 ElMessage.warning(res.message)
@@ -514,8 +523,9 @@
             if(res.code == 200){
                 ElMessage.success(res.message)
                 emit('getList')
-                superRef.value.clearValidate();
                 reset()
+                superRef.value.clearValidate();
+
                 dialogVisible.value = false;
             }else{
                 ElMessage.warning(res.message)
@@ -528,8 +538,9 @@
             if(res.code == 200){
                 ElMessage.success(res.message)
                 emit('getList')
-                superRef.value.clearValidate();
                 reset()
+                superRef.value.clearValidate();
+
                 dialogVisible.value = false;
             }else{
                 ElMessage.warning(res.message)
diff --git a/src/views/safetyReview/userManage/expertUsers/components/projectDialog.vue b/src/views/safetyReview/userManage/expertUsers/components/projectDialog.vue
index 3637bbd..2b3782d 100644
--- a/src/views/safetyReview/userManage/expertUsers/components/projectDialog.vue
+++ b/src/views/safetyReview/userManage/expertUsers/components/projectDialog.vue
@@ -60,7 +60,7 @@
         <el-table-column label="归档确认" prop="" align="center"  width="150">
           <template #default="scope">
             <div style="cursor:pointer;color: #3b82f6;" >
-              <span v-if="scope.row.process === 5 && scope.row.personRecognition"  @click="goMenu('toThirteen',scope.row)">{{scope.row.personRecognition.recognitionCnt}}/{{scope.row.personRecognition.personCnt}}</span>
+              <span  v-if="scope.row.process === 5" @click="goMenu('toThirteen',scope.row)">{{scope.row.activeConfirm}}</span>
               <span v-else></span>
             </div>
           </template>
@@ -129,6 +129,7 @@
         filingDate: item.filingDate ? item.filingDate : conversionDays(item.createTime),
         contractMoney: item.contract ? item.contract.contractMoney : '',
         actualContractMoney: item.contract ? item.contract.actualContractMoney : '',
+        activeConfirm: item.personRecognition ? item.personRecognition.recognitionCnt + '/' +  item.personRecognition.personCnt: '',
         missingMaterialCnt:  3-item.materialCnt
       }
     })
@@ -157,10 +158,6 @@
 }
 const goMenu = (toPath,val) => {
   console.log("val",val)
-  if(toPath ==='toThirteen' && val.personRecognition && val.personRecognition. recognitionCnt === 0){
-    ElMessage.warning('未进行签字确认,无法查看!')
-    return;
-  }
   toProcess('edit',val,toPath);
 }
 const conversionDays = (createTime) => {
diff --git a/src/views/safetyReview/userManage/expertUsers/index.vue b/src/views/safetyReview/userManage/expertUsers/index.vue
index 75e70c9..9205b82 100644
--- a/src/views/safetyReview/userManage/expertUsers/index.vue
+++ b/src/views/safetyReview/userManage/expertUsers/index.vue
@@ -56,7 +56,7 @@
 
         <!-- 表格数据 -->
         <el-table v-loading="loading" :data="dataList" :border="true">
-            <el-table-column label="用户ID" prop="id" align="center"  />
+            <el-table-column label="序号" type="index" align="center" width="60" />
             <el-table-column label="姓名" prop="name" align="center" width="110" />
             <el-table-column label="手机号" prop="phone" align="center" width="125" />
             <el-table-column label="用户名" prop="username" align="center" width="110" />
@@ -252,7 +252,7 @@
                 medicalAttach: item.medicalAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}),
                 salaryAttach: item.salaryAttach.map(s => { return import.meta.env.VITE_APP_BASE_API + '/' + s.path}),
                 idPhoto: item.idPhoto ? [import.meta.env.VITE_APP_BASE_API + '/' + item.idPhoto ] : [],
-                lastEstimateTime: item.personProjectVO ? item.personProjectVO.lastEstimateTime : '',
+                lastEstimateTime: item.personProjectVO ? item.personProjectVO.lastEstimateTime.slice(0,10) : '',
                 projectCount: item.personProjectVO ? item.personProjectVO.projectCount : ''
             }
         })

--
Gitblit v1.9.2