Ver Fonte

职位名称

Xiao_123 há 4 meses atrás
pai
commit
8a3ae62cde

+ 2 - 2
src/utils/index.ts

@@ -450,7 +450,7 @@ export function jsonParse(str: string) {
   }
 }
 
-// 处理企业名称
-export const dealEnterpriseName = (name: string) =>{
+// 格式化企业名称、职位名称
+export const formatName = (name: string) =>{
   return name ? name.replace(/&/g, '&') : ''
 }

+ 3 - 2
src/views/menduner/system/analysis/statisticAnalysis/components/jobDetails.vue

@@ -11,8 +11,8 @@
       <div v-if="list.length" class="scroll-box">
         <vue3-seamless-scroll :list="list" style="height: 100%;" :step="0.5">
           <div v-for="val in list" :key="val.id" class="!h-40px list-item">
-            <div>{{ val.name }}</div>
-            <div>{{ val.enterpriseName }}</div>
+            <div>{{ formatName(val.name) }}</div>
+            <div>{{ formatName(val.enterpriseName) }}</div>
             <div>{{ timesTampChange(val.createTime) }}</div>
           </div>
         </vue3-seamless-scroll>
@@ -27,6 +27,7 @@ defineOptions({name: 'JobCount'})
 import { statisticAnalysisApi } from '@/api/menduner/system/analysis/statisticAnalysis'
 import { timesTampChange } from '@/utils/transform/date'
 import { Vue3SeamlessScroll } from "vue3-seamless-scroll"
+import { formatName } from '@/utils'
 
 const props = defineProps({
   queryParams: Object

+ 15 - 10
src/views/menduner/system/analysis/statisticAnalysis/index.vue

@@ -183,7 +183,7 @@ import ageDistribution from './components/AgeDistribution.vue'
 import workExperience from './components/WorkExperience.vue'
 import education from './components/Education.vue'
 import JobStatistics from './job.vue'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 import { statisticAnalysisApi } from '@/api/menduner/system/analysis/statisticAnalysis'
 defineOptions({name: 'StatisticAnalysis'})
 import download from '@/utils/download'
@@ -473,7 +473,8 @@ const dealTableData = async () => {
   if (currentItem.value.name === 'pageViews') {
     const areaList = await getDictOptions('areaList')
     tableData.value = tableData.value.map(item => {
-      item.enterpriseName = dealEnterpriseName(item.enterpriseName)
+      item.name = formatName(item.name)
+      item.enterpriseName = formatName(item.enterpriseName)
       item.salaryDisplay = item.payFrom && item.payTo ? `${item.payFrom}-${item.payTo}/${getDictLabel(DICT_TYPE.MENDUNER_PAY_UNIT, item.payUnit)}` : '面议'
       item.areaName = !item.areaId ? '全国' : getText(item.areaId, areaList)
       item.expName = getDictLabel(DICT_TYPE.MENDUNER_EXP_TYPE, item.expType)
@@ -486,7 +487,8 @@ const dealTableData = async () => {
     const areaList = await getDictOptions('areaList')
     const positionData = await getDictOptions('positionData')
     tableData.value = tableData.value.map(item => {
-      item.enterpriseName = dealEnterpriseName(item.enterpriseName)
+      item.name = formatName(item.name)
+      item.enterpriseName = formatName(item.enterpriseName)
       item.areaName = !item.areaId ? '全国' : getText(item.areaId, areaList)
       item.positionName = getText(item.positionId, positionData, 'nameCn', 'id')
       item.salaryDisplay = item.payFrom && item.payTo ? `${item.payFrom}-${item.payTo}/${getDictLabel(DICT_TYPE.MENDUNER_PAY_UNIT, item.payUnit)}` : '面议'
@@ -502,7 +504,8 @@ const dealTableData = async () => {
     const areaList = await getDictOptions('areaList')
     const positionData = await getDictOptions('positionData')
     tableData.value = tableData.value.map(item => {
-      item.enterpriseName = dealEnterpriseName(item.enterpriseName)
+      item.name = formatName(item.name)
+      item.enterpriseName = formatName(item.enterpriseName)
       item.areaName = !item.areaId ? '全国' : getText(item.areaId, areaList)
       item.positionName = getText(item.positionId, positionData, 'nameCn', 'id')
       item.salaryDisplay = item.payFrom && item.payTo ? `${item.payFrom}-${item.payTo}/${getDictLabel(DICT_TYPE.MENDUNER_PAY_UNIT, item.payUnit)}` : '面议'
@@ -517,7 +520,8 @@ const dealTableData = async () => {
   if (currentItem.value.name === 'resumeReceived') {
     const areaList = await getDictOptions('areaList')
     tableData.value = tableData.value.map(item => {
-      item.enterpriseName = dealEnterpriseName(item.enterpriseName)
+      item.job.name = formatName(item.job.name)
+      item.enterpriseName = formatName(item.enterpriseName)
       item.areaName = !item.job.areaId ? '全国' : getText(item.job.areaId, areaList)
       item.salaryDisplay = item.job?.payFrom && item.job.payTo ? `${item.job.payFrom}-${item.job.payTo}/${getDictLabel(DICT_TYPE.MENDUNER_PAY_UNIT, item.job.payUnit)}` : '面议'
       item.jobStatus = getDictLabel(DICT_TYPE.MENDUNER_JOB_SEEK_STATUS, item.person.jobStatus)
@@ -530,7 +534,8 @@ const dealTableData = async () => {
   // 已查看简历
   if (currentItem.value.name === 'resumeViewed') {
     tableData.value = tableData.value.map(item => {
-      item.enterpriseName = dealEnterpriseName(item.enterpriseName)
+      item.job.name = formatName(item.job.name)
+      item.enterpriseName = formatName(item.enterpriseName)
       item.personName = item.person.name
       item.address = item.job.address
       item.typeName = Number(item.type) === 0 ? '平台投递': '赏金投递'
@@ -542,7 +547,7 @@ const dealTableData = async () => {
   if (currentItem.value.name === 'invitedInterviews') {
     tableData.value = tableData.value.map(item => {
       item.personName = item.person.name
-      item.jobName = item.job.name
+      item.jobName = formatName(item.job.name)
       item.typeName = item.type === 0 ? '线上面试': '线下面试'
       item.timeName = timesTampChange(item.time, 'Y-M-D h:m')
       item.addressName = item.job.address
@@ -552,9 +557,9 @@ const dealTableData = async () => {
   // 面试完成
   if (currentItem.value.name === 'invitedCompleted') {
     tableData.value = tableData.value.map(item => {
-      item.enterpriseName = dealEnterpriseName(item.enterpriseName)
+      item.enterpriseName = formatName(item.enterpriseName)
       item.personName = item.person.name
-      item.jobName = item.job.name
+      item.jobName = formatName(item.job.name)
       item.typeName = item.type === 0 ? '线上面试': '线下面试'
       item.timeName = timesTampChange(item.time, 'Y-M-D h:m')
       item.addressName = item.job.address
@@ -573,7 +578,7 @@ const dealTableData = async () => {
   // 企业用户登录数
   if (currentItem.value.name === 'enterpriseUserLoginNum') {
     tableData.value = tableData.value.map(item => {
-      item.enterpriseName = dealEnterpriseName(item.enterprise.name || item.enterprise.anotherName)
+      item.enterpriseName = formatName(item.enterprise.name || item.enterprise.anotherName)
       item.username = item.userBind.name || item.userBind.phone
       item.loginTime = timesTampChange(item.loginLog.createTime)
       return item

+ 3 - 3
src/views/menduner/system/enterprise/message/EnterpriseForm.vue

@@ -95,7 +95,7 @@
 <script setup lang="ts">
 import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
 import { EnterpriseApi } from '@/api/menduner/system/enterprise/message'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 
 defineOptions({ name: 'EnterpriseForm' })
 
@@ -146,8 +146,8 @@ const open = async (id: number) => {
     formLoading.value = true
     try {
       formData.value = await EnterpriseApi.getEnterprise(id)
-      formData.value.anotherName = dealEnterpriseName(formData.value.anotherName)
-      formData.value.name = dealEnterpriseName(formData.value.name)
+      formData.value.anotherName = formatName(formData.value.anotherName)
+      formData.value.name = formatName(formData.value.name)
     } finally {
       formLoading.value = false
     }

+ 2 - 2
src/views/menduner/system/enterprise/message/details/components/businessInfo.vue

@@ -1,7 +1,7 @@
 <template>
   <div>
     <el-descriptions class="margin-top" :column="2" border>
-    <el-descriptions-item label="企业名称">{{ dealEnterpriseName(info.name) }}</el-descriptions-item>
+    <el-descriptions-item label="企业名称">{{ formatName(info.name) }}</el-descriptions-item>
     <el-descriptions-item label="统一社会信用代码">{{ info.code }}</el-descriptions-item>
     <el-descriptions-item label="法定代表人">{{ info.representative }}</el-descriptions-item>
     <el-descriptions-item label="成立时间">{{ formatDate(info.establishmentTime, 'YYYY-MM-DD') }}</el-descriptions-item>
@@ -23,7 +23,7 @@ defineOptions({ name: 'EnterpriseDetailsBusinessInfo'})
 import { EnterpriseApi } from '@/api/menduner/system/enterprise/message'
 import { formatDate } from '@/utils/formatTime'
 import { DICT_TYPE } from '@/utils/dict'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 
 const props = defineProps({
   id: String

+ 3 - 3
src/views/menduner/system/enterprise/message/details/components/info.vue

@@ -7,8 +7,8 @@
     <el-descriptions-item label="企业LOGO">
       <el-image v-if="info.logoUrl" style="width: 100px; height: 100px" :src="info.logoUrl" fit="contain" hide-on-click-modal :preview-src-list="[info.logoUrl]"/>
     </el-descriptions-item>
-    <el-descriptions-item label="企业全称">{{ dealEnterpriseName(info.name) }}</el-descriptions-item>
-    <el-descriptions-item label="企业别名">{{ dealEnterpriseName(info.anotherName) }}</el-descriptions-item>
+    <el-descriptions-item label="企业全称">{{ formatName(info.name) }}</el-descriptions-item>
+    <el-descriptions-item label="企业别名">{{ formatName(info.anotherName) }}</el-descriptions-item>
     <el-descriptions-item label="企业官网">
       <el-link :href="info.website" target="_blank" type="primary">{{ info.website }}</el-link>
     </el-descriptions-item>
@@ -37,7 +37,7 @@ defineOptions({ name: 'EnterpriseDetailsInfo'})
 import { EnterpriseApi } from '@/api/menduner/system/enterprise/message'
 import { formatDate } from '@/utils/formatTime'
 import { DICT_TYPE } from '@/utils/dict'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 
 const props = defineProps({
   id: String

+ 5 - 2
src/views/menduner/system/enterprise/message/details/components/job.vue

@@ -1,6 +1,8 @@
 <template>
   <el-table v-loading="loading" :data="tableData" :stripe="true" class="m-t-20px">
-    <el-table-column label="职位名称" align="center" prop="name" />
+    <el-table-column label="职位名称" align="center" prop="name">
+      <template #default="{ row }">{{ formatName(row.name) }}</template>
+    </el-table-column>
     <el-table-column label="职位类型" align="center" prop="positionName" />
     <el-table-column label="地区" align="center" prop="areaName">
       <template #default="scope">
@@ -65,7 +67,7 @@
 
   <Dialog title="职位详情" v-model="dialogVisible">
     <el-descriptions :column="1" border>
-      <el-descriptions-item label="职位名称">{{ itemData.name }}</el-descriptions-item>
+      <el-descriptions-item label="职位名称">{{ formatName(itemData.name) }}</el-descriptions-item>
       <el-descriptions-item label="职位类型">{{ itemData.positionName }}</el-descriptions-item>
       <el-descriptions-item label="工作城市">{{ !itemData.areaId ? '全国' : itemData.areaName }}</el-descriptions-item>
       <el-descriptions-item label="详细地址">{{ itemData.address }}</el-descriptions-item>
@@ -110,6 +112,7 @@ import { EnterpriseApi } from '@/api/menduner/system/enterprise/message'
 import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
 import { dealDictArrayData } from '@/utils/transform/position'
 import { timesTampChange } from '@/utils/transform/date'
+import { formatName } from '@/utils'
 
 const props = defineProps({
   id: String

+ 3 - 3
src/views/menduner/system/enterprise/message/details/components/subordinateEnterprises.vue

@@ -1,10 +1,10 @@
 <template>
   <el-table v-loading="loading" :data="tableData" :stripe="true" class="m-t-20px">
     <el-table-column label="企业全称" align="center" prop="name">
-      <template #default="scope">{{ dealEnterpriseName(scope.row.name) }}</template>
+      <template #default="scope">{{ formatName(scope.row.name) }}</template>
     </el-table-column>
     <el-table-column label="企业别称" align="center" prop="anotherName">
-      <template #default="scope">{{ dealEnterpriseName(scope.row.anotherName) }}</template>
+      <template #default="scope">{{ formatName(scope.row.anotherName) }}</template>
     </el-table-column>
     <el-table-column label="联系人" align="center" prop="contact" />
     <el-table-column label="联系电话" align="center" prop="phone" />
@@ -41,7 +41,7 @@ defineOptions({ name: 'SubordinateEnterprises'})
 import { EnterpriseApi } from '@/api/menduner/system/enterprise/message'
 import { DICT_TYPE } from '@/utils/dict'
 import { dateFormatter } from '@/utils/formatTime'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 
 const props = defineProps({
   id: String

+ 3 - 3
src/views/menduner/system/enterprise/message/index.vue

@@ -83,10 +83,10 @@
         </template>
       </el-table-column>
       <el-table-column label="企业全称" align="center" prop="name" fixed="left">
-        <template #default="scope">{{ dealEnterpriseName(scope.row.name) }}</template>
+        <template #default="scope">{{ formatName(scope.row.name) }}</template>
       </el-table-column>
       <el-table-column label="企业别称" align="center" prop="anotherName">
-        <template #default="scope">{{ dealEnterpriseName(scope.row.anotherName) }}</template>
+        <template #default="scope">{{ formatName(scope.row.anotherName) }}</template>
       </el-table-column>
       <el-table-column label="联系人" align="center" prop="contact" />
       <el-table-column label="联系电话" align="center" prop="phone" />
@@ -147,7 +147,7 @@ import { IndustryApi, IndustryVO } from '@/api/menduner/system/industry'
 import { handleTree } from '@/utils/tree'
 import { dealDictObjData } from '@/utils/transform/position'
 import { formatToDate } from '@/utils/dateUtil'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 
 /** 门墩儿-企业信息 列表 */
 defineOptions({ name: 'Enterprise' })

+ 2 - 2
src/views/menduner/system/enterprise/register/details.vue

@@ -1,7 +1,7 @@
 <template>
   <Dialog title="企业注册详情" v-model="dialogVisible" width="70%">
     <el-descriptions title="" border :column="2">
-      <el-descriptions-item label="企业名称">{{ dealEnterpriseName(info?.name) }}</el-descriptions-item>
+      <el-descriptions-item label="企业名称">{{ formatName(info?.name) }}</el-descriptions-item>
       <el-descriptions-item label="营业执照图片">
         <el-image style="width: 80px; height: 80px" :src="info?.businessLicenseUrl || ''" hide-on-click-modal :preview-src-list="[info?.businessLicenseUrl]"/>
       </el-descriptions-item>
@@ -46,7 +46,7 @@
 import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
 import { EnterpriseRegisterApi } from '@/api/menduner/system/enterprise/register'
 import { formatDate } from '@/utils/formatTime'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 
 defineOptions({ name: 'EnterpriseRegisterDetails' })
 const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调

+ 2 - 2
src/views/menduner/system/enterprise/register/index.vue

@@ -89,7 +89,7 @@
   <ContentWrap>
     <el-table v-loading="loading" :data="list" :stripe="true">
       <el-table-column label="企业名称" align="center" prop="name" fixed="left">
-        <template #default="scope">{{ dealEnterpriseName(scope.row.name) }}</template>
+        <template #default="scope">{{ formatName(scope.row.name) }}</template>
       </el-table-column>
       <el-table-column label="管理员姓名" align="center" prop="contactName" />
       <el-table-column label="管理员电话" align="center" prop="phone" />
@@ -157,7 +157,7 @@ import { EnterpriseRegisterApi, EnterpriseRegisterVO } from '@/api/menduner/syst
 import EnterpriseRegisterForm from './EnterpriseRegisterForm.vue'
 import EnterpriseRegisterReject from './EnterpriseRegisterReject.vue'
 import DetailsPage from './details.vue'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 // import { ElMessageBox } from 'element-plus'
 
 

+ 2 - 2
src/views/menduner/system/enterprise/userbind/details/components/user.vue

@@ -13,7 +13,7 @@
     </el-descriptions-item>
     <el-descriptions-item label="联系电话">{{ info.phone }}</el-descriptions-item>
     <el-descriptions-item label="邮箱">{{ info.email }}</el-descriptions-item>
-    <el-descriptions-item label="企业名称">{{ dealEnterpriseName(info.enterpriseName) }}</el-descriptions-item>
+    <el-descriptions-item label="企业名称">{{ formatName(info.enterpriseName) }}</el-descriptions-item>
     <el-descriptions-item label="岗位名称">{{ info.postName }}</el-descriptions-item>
     <el-descriptions-item label="账号状态">
       <dict-tag :type="DICT_TYPE.MENDUNER_STATUS" :value="info.status" />
@@ -31,7 +31,7 @@ defineOptions({ name: 'EnterpriseUserDetails'})
 import { EnterpriseUserBindApi } from '@/api/menduner/system/enterprise/userBind'
 import { formatDate } from '@/utils/formatTime'
 import { DICT_TYPE } from '@/utils/dict'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 
 const props = defineProps({
   id: String

+ 2 - 2
src/views/menduner/system/enterprise/userbind/index.vue

@@ -87,7 +87,7 @@
   <ContentWrap>
     <el-table v-loading="loading" :data="list" :stripe="true">
       <el-table-column label="企业名称" align="center" prop="enterpriseName" fixed="left">
-        <template #default="scope">{{ dealEnterpriseName(scope.row.enterpriseName) }}</template>
+        <template #default="scope">{{ formatName(scope.row.enterpriseName) }}</template>
       </el-table-column>
       <el-table-column label="姓名" align="center" prop="name" />
       <el-table-column label="用户头像" align="center" prop="avatar">
@@ -143,7 +143,7 @@
 import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
 import { dateFormatter } from '@/utils/formatTime'
 import download from '@/utils/download'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 import { EnterpriseUserBindApi, EnterpriseUserBindVO } from '@/api/menduner/system/enterprise/userBind'
 // import EditEmail from './EditEmail.vue'
 import Edit from './Edit.vue'

+ 2 - 2
src/views/menduner/system/hunt/index.vue

@@ -99,7 +99,7 @@
     <el-table v-loading="loading" :data="list" :stripe="true">
       <el-table-column label="姓名" align="center" prop="name" />
       <el-table-column label="企业名称" align="center" prop="enterpriseName">
-        <template #default="scope">{{ dealEnterpriseName(scope.row.enterpriseName) }}</template>
+        <template #default="scope">{{ formatName(scope.row.enterpriseName) }}</template>
       </el-table-column>
       <el-table-column label="联系方式" align="center" prop="phone" />
       <el-table-column
@@ -165,7 +165,7 @@ import { dateFormatter } from '@/utils/formatTime'
 import download from '@/utils/download'
 import { HuntApi, HuntVO } from '@/api/menduner/system/hunt'
 import HuntForm from './HuntForm.vue'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 
 /** 猎寻服务 列表 */
 defineOptions({ name: 'Hunt' })

+ 4 - 1
src/views/menduner/system/job/index.vue

@@ -113,7 +113,9 @@
   <!-- 列表 -->
   <ContentWrap>
     <el-table v-loading="loading" :data="list" :stripe="true">
-      <el-table-column label="职位名称" align="center" prop="name" />
+      <el-table-column label="职位名称" align="center" prop="name">
+        <template #default="scope">{{ formatName(scope.row.name) }}</template>
+      </el-table-column>
       <el-table-column label="职位类型" align="center" prop="positionName" />
       <el-table-column label="工作地区" align="center" prop="areaName">
         <template #default="scope">{{ !scope.row.areaId ? '全国' : scope.row.areaName }}</template>
@@ -188,6 +190,7 @@ import JobRadioForm from './RadioForm.vue'
 import { dealDictArrayData } from '@/utils/transform/position'
 import { getDict } from '@/hooks/web/useDictionaries'
 import { EnterpriseApi } from '@/api/menduner/system/enterprise/message'
+import { formatName } from '@/utils'
 
 /** 门墩儿-招聘职位 列表 */
 defineOptions({ name: 'JobAdvertised' })

+ 4 - 4
src/views/menduner/system/jobFair/manage/details/index.vue

@@ -25,13 +25,13 @@
   <!-- 列表 -->
   <ContentWrap>
     <el-table v-loading="loading" :data="list" :stripe="true">
-      <el-table-column label="招聘会标题" align="center" prop="jobFair.title">
+      <!-- <el-table-column label="招聘会标题" align="center" prop="jobFair.title">
         <template #default="scope">
           <div v-html="scope.row.jobFair.title"></div>
         </template>
-      </el-table-column>
+      </el-table-column> -->
       <el-table-column label="企业名称" align="center" prop="name">
-        <template #default="scope">{{ dealEnterpriseName(scope.row.name) }}</template>
+        <template #default="scope">{{ formatName(scope.row.name) }}</template>
       </el-table-column>
       <el-table-column label="操作" align="center">
         <template #default="scope">
@@ -63,7 +63,7 @@ import JobFairForm from './jobFairForm.vue'
 import download from '@/utils/download'
 import { useTagsViewStore } from '@/store/modules/tagsView'
 import { ElMessage } from 'element-plus'
-import { dealEnterpriseName } from '@/utils'
+import { formatName } from '@/utils'
 import { JobFairManageApi } from '@/api/menduner/system/jobFair/manage'
 
 /** 招聘会 列表 */

+ 4 - 1
src/views/menduner/system/order/index.vue

@@ -93,7 +93,9 @@
     <el-table v-loading="loading" :data="list" :stripe="true">
       <!-- <el-table-column label="编号" align="center" prop="id" :show-overflow-tooltip="true" /> -->
       <!-- <el-table-column label="用户编号" align="center" prop="userId" :show-overflow-tooltip="true" /> -->
-      <el-table-column label="商品名字" align="center" prop="spuName" />
+      <el-table-column label="商品名字" align="center" prop="spuName">
+        <template #default="scope">{{ formatName(scope.row.spuName) }}</template>
+      </el-table-column>
       <el-table-column label="价格" align="center" prop="price">
         <template #default="scope">
           {{ (scope.row.price / 100.0).toFixed(2) }}
@@ -160,6 +162,7 @@ import { dateFormatter } from '@/utils/formatTime'
 import { DICT_TYPE } from '@/utils/dict'
 import { TradeOrderApi, TradeOrderVO } from '@/api/menduner/system/order'
 import TradeOrderForm from './TradeOrderForm.vue'
+import { formatName } from '@/utils'
 
 /** 交易订单	 列表 */
 defineOptions({ name: 'TradeOrder' })

+ 7 - 4
src/views/menduner/system/person/details/components/deliveryJob.vue

@@ -1,8 +1,10 @@
 <template>
   <el-table v-loading="loading" :data="tableData" :stripe="true" class="m-t-20px">
-    <el-table-column label="职位名称" align="center" prop="job.name" />
+    <el-table-column label="职位名称" align="center" prop="job.name">
+      <template #default="scope">{{ formatName(scope.row.job.name) }}</template>
+    </el-table-column>
     <el-table-column label="发布企业" align="center" prop="enterprise.anotherName">
-      <template #default="scope">{{ scope.row.enterprise.anotherName || scope.row.enterprise.name}}</template>
+      <template #default="scope">{{ formatName(scope.row.enterprise.anotherName || scope.row.enterprise.name) }}</template>
     </el-table-column>
     <el-table-column label="地区" align="center" prop="job.areaName">
       <template #default="scope">{{ !scope.row.job.areaId ? '全国' : scope.row.job.areaName }}</template>
@@ -39,8 +41,8 @@
 
   <Dialog title="职位详情" v-model="dialogVisible">
     <el-descriptions :column="1" border>
-      <el-descriptions-item label="职位名称">{{ itemData.name }}</el-descriptions-item>
-      <el-descriptions-item label="发布企业">{{ itemData.enterpriseName }}</el-descriptions-item>
+      <el-descriptions-item label="职位名称">{{ formatName(itemData.name) }}</el-descriptions-item>
+      <el-descriptions-item label="发布企业">{{ formatName(itemData.enterpriseName) }}</el-descriptions-item>
       <el-descriptions-item label="职位类型">{{ itemData.positionName }}</el-descriptions-item>
       <el-descriptions-item label="工作城市">{{ !itemData.areaId ? '全国' : itemData.areaName }}</el-descriptions-item>
       <el-descriptions-item label="详细地址">{{ itemData.address }}</el-descriptions-item>
@@ -86,6 +88,7 @@ import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
 import { dateFormatter } from '@/utils/formatTime'
 import { timesTampChange } from '@/utils/transform/date'
 import { dealDictObjData } from '@/utils/transform/position'
+import { formatName } from '@/utils'
 
 const props = defineProps({
   userId: String

+ 5 - 2
src/views/menduner/system/person/details/components/interviewInvite.vue

@@ -1,14 +1,16 @@
 <template>
   <ContentWrap>
     <el-table v-loading="loading" :data="list" :stripe="true">
-      <el-table-column label="投递岗位" align="center" prop="job.name" />
+      <el-table-column label="投递岗位" align="center" prop="job.name">
+        <template #default="scope">{{ formatName(scope.row.job.name) }}</template>
+      </el-table-column>
       <el-table-column label="岗位薪资" align="center" prop="job.payFrom">
         <template #default="{ row }">
           {{ !row.job.payFrom && !row.job.payTo ? '面议' : `${row.job.payFrom}-${row.job.payTo}/${payUnit.find(e => e.value === Number(row.job.payUnit))?.label}` }}
         </template>
       </el-table-column>
       <el-table-column label="发布企业" align="center" prop="enterprise.name">
-        <template #default="{ row }">{{ row.enterprise.anotherName || row.enterprise.name }}</template>
+        <template #default="{ row }">{{ formatName(row.enterprise.anotherName || row.enterprise.name) }}</template>
       </el-table-column>
       <el-table-column label="面试时间" align="center" prop="time">
         <template #default="{ row }">{{ timesTampChange(row.time, 'Y-M-D h:m') }}</template>
@@ -36,6 +38,7 @@
 import { timesTampChange } from '@/utils/transform/date'
 import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
 import { PersonInfoApi } from '@/api/menduner/system/person'
+import { formatName } from '@/utils'
 defineOptions({ name: 'PersonInterviewInvite' })
 
 const props = defineProps({

+ 7 - 2
src/views/menduner/system/person/index.vue

@@ -129,8 +129,12 @@
       <el-table-column label="用户姓名" align="center" prop="person.name" fixed="left" />
       <el-table-column label="英文名" align="center" prop="person.foreignName" />
       <el-table-column label="联系电话" align="center" prop="user.phone" width="120px" />
-      <el-table-column label="任职酒店" align="center" prop="work.enterpriseName" />
-      <el-table-column label="职位" align="center" prop="work.positionName" />
+      <el-table-column label="任职酒店" align="center" prop="work.enterpriseName">
+        <template #default="{ row }">{{ formatName(row.work?.enterpriseName) }}</template>
+      </el-table-column>
+      <el-table-column label="职位" align="center" prop="work.positionName">
+        <template #default="{ row }">{{ formatName(row.work?.positionName) }}</template>
+      </el-table-column>
       <el-table-column label="求职状态" align="center" prop="person.jobStatus" width="130px">
         <template #default="scope">
           <dict-tag :type="DICT_TYPE.MENDUNER_JOB_SEEK_STATUS" :value="scope.row.person?.jobStatus" />
@@ -181,6 +185,7 @@ import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
 import { PersonInfoApi, PersonInfoVO } from '@/api/menduner/system/person'
 import PersonInfoForm from './PersonInfoForm.vue'
 import ResetPassword from './ResetPassword.vue'
+import { formatName } from '@/utils'
 
 /** 人才信息 列表 */
 defineOptions({ name: 'PersonInfo' })