zhouwx
2025-03-24 3f6bf89b1985b6668f02ffcc9af577b412e92e45
src/views/safetyReview/expertManage/experts/index.vue
@@ -1,6 +1,9 @@
<template>
    <div class="app-container">
      <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
        <el-form-item label="姓名">
          <el-input v-model.trim="queryParams.name" placeholder="请输入姓名"></el-input>
        </el-form-item>
        <el-form-item label="专业类别">
          <el-cascader
              clearable
@@ -34,21 +37,27 @@
      <el-table v-loading="loading" :data="expertList" :border="true">
        <el-table-column type="index" width="55" align="center" />
        <el-table-column label="姓名" align="center" prop="name" />
        <el-table-column label="出生日期" align="center" prop="birthday" />
        <el-table-column label="身份证号" align="center" prop="idCard" />
        <el-table-column label="出生日期" align="center" prop="birthdayName" />
        <el-table-column label="性别" align="center" prop="sex"  >
          <template #default="scope">
            <span>{{scope.row.sex === 0 ? '男' : '女'}}</span>
          </template>
        </el-table-column>
        <el-table-column label="学历" align="center" prop="degree" />
        <el-table-column label="所学专业" align="center" prop="speciality" />
        <el-table-column label="职称" align="center" prop="title"/>
        <el-table-column label="专业" align="center" prop="speciality" />
        <el-table-column label="推荐类别组别" align="center">
        <el-table-column label="在岗情况" align="center" prop="dutyStatus" >
          <template #default="scope">
            {{findNodeById(expertTypes,scope.row.bigClassify)}}/{{findNodeById(expertTypes,scope.row.smallClassify)}}
            <span>{{scope.row.dutyStatus === 0 ? '在岗' : '退休'}}</span>
          </template>
        </el-table-column>
        <el-table-column label="联系电话" align="center" prop="phone"/>
        <el-table-column label="申请时间" align="center" prop="createTime">
          <template #default="scope">
            {{scope.row.createTime?scope.row.createTime.substring(0,10):''}}
          </template>
        </el-table-column>
        <el-table-column label="单位全称" align="center" prop="companyName"/>
        <el-table-column label="现从事专业及方向" align="center" prop="currentProfession"/>
        <el-table-column label="联系方式" align="center" prop="phone"/>
        <el-table-column label="支撑方向" align="center" prop="supportName" width="100"/>
        <el-table-column label="专家领域" align="center" prop="domain"/>
        <el-table-column label="入库分级" align="center" prop="level"/>
        <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
          <template #default="scope">
            <el-button type="primary" link @click="openDialog('view',scope.row)">查看</el-button>
@@ -161,7 +170,34 @@
  loading.value = true;
  const res = await getExpertsList(data.queryParams)
  if(res.code == 200){
    data.expertList = res.data.list
    data.expertList = res.data.list.map(item => {
      return{
        ...item,
        birthdayName: item.birthday ? item.birthday.slice(0,10) : '',
        supportName: item.supportDirectionSafety.split(',')
      }
    })
    data.expertList.forEach(item => {
      item.supportName.forEach((s,index) => {
       switch (s){
         case '1':
           item.supportName[index] = '现场检查'
           break;
         case '2':
           item.supportName[index] = '调查评估'
           break;
         case '3':
           item.supportName[index] = '咨询服务'
           break;
         case '4':
           item.supportName[index] = '教育培训'
           break;
         case '5':
           item.supportName[index] = '其他'
           break;
       }
      })
    })
    data.total = res.data.total
  }else{
    ElMessage.warning(res.msg)