Browse Source

企业名称处理

Xiao_123 5 months ago
parent
commit
1f16dab982

+ 5 - 0
src/utils/index.ts

@@ -449,3 +449,8 @@ export function jsonParse(str: string) {
     return ''
   }
 }
+
+// 处理企业名称
+export const dealEnterpriseName = (name: string) =>{
+  return name ? name.replace(/&/g, '&') : ''
+}

+ 2 - 2
src/views/Home/Index.vue

@@ -42,8 +42,8 @@
   <div>
     <CardTitle title="招聘进展"  style="margin-left: 5px;"/>
     <el-row :gutter="16" class="row" style="margin-top: 10px;">
-      <el-col v-for="item in statisticList" :key="item.name" :md="3" :sm="12" :xs="24" :loading="loading">
-        <ComparisonCard :title="item.title" :value="statistic[item.name]" />
+      <el-col v-for="item in statisticList" :key="item.name" :md="4" :sm="12" :xs="24" :loading="loading">
+        <ComparisonCard :title="item.title" :value="statistic[item.name]" class="mb-10px" />
       </el-col>
     </el-row>
   </div>

+ 8 - 1
src/views/menduner/system/analysis/statisticAnalysis/index.vue

@@ -183,6 +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 { statisticAnalysisApi } from '@/api/menduner/system/analysis/statisticAnalysis'
 defineOptions({name: 'StatisticAnalysis'})
 import download from '@/utils/download'
@@ -472,6 +473,7 @@ 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.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)
@@ -484,6 +486,7 @@ 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.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)}` : '面议'
@@ -499,6 +502,7 @@ 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.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)}` : '面议'
@@ -513,6 +517,7 @@ 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.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)
@@ -525,6 +530,7 @@ const dealTableData = async () => {
   // 已查看简历
   if (currentItem.value.name === 'resumeViewed') {
     tableData.value = tableData.value.map(item => {
+      item.enterpriseName = dealEnterpriseName(item.enterpriseName)
       item.personName = item.person.name
       item.address = item.job.address
       item.typeName = Number(item.type) === 0 ? '平台投递': '赏金投递'
@@ -546,6 +552,7 @@ const dealTableData = async () => {
   // 面试完成
   if (currentItem.value.name === 'invitedCompleted') {
     tableData.value = tableData.value.map(item => {
+      item.enterpriseName = dealEnterpriseName(item.enterpriseName)
       item.personName = item.person.name
       item.jobName = item.job.name
       item.typeName = item.type === 0 ? '线上面试': '线下面试'
@@ -566,7 +573,7 @@ const dealTableData = async () => {
   // 企业用户登录数
   if (currentItem.value.name === 'enterpriseUserLoginNum') {
     tableData.value = tableData.value.map(item => {
-      item.enterpriseName = item.enterprise.name || item.enterprise.anotherName
+      item.enterpriseName = dealEnterpriseName(item.enterprise.name || item.enterprise.anotherName)
       item.username = item.userBind.name || item.userBind.phone
       item.loginTime = timesTampChange(item.loginLog.createTime)
       return item

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

@@ -95,6 +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'
 
 defineOptions({ name: 'EnterpriseForm' })
 
@@ -145,6 +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)
     } finally {
       formLoading.value = false
     }

+ 2 - 1
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="企业名称">{{ info.name }}</el-descriptions-item>
+    <el-descriptions-item label="企业名称">{{ dealEnterpriseName(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,6 +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'
 
 const props = defineProps({
   id: String

+ 3 - 2
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="企业全称">{{ info.name }}</el-descriptions-item>
-    <el-descriptions-item label="企业别名">{{ info.anotherName }}</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="企业官网">
       <el-link :href="info.website" target="_blank" type="primary">{{ info.website }}</el-link>
     </el-descriptions-item>
@@ -37,6 +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'
 
 const props = defineProps({
   id: String

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

@@ -1,7 +1,11 @@
 <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="anotherName" />
+    <el-table-column label="企业全称" align="center" prop="name">
+      <template #default="scope">{{ dealEnterpriseName(scope.row.name) }}</template>
+    </el-table-column>
+    <el-table-column label="企业别称" align="center" prop="anotherName">
+      <template #default="scope">{{ dealEnterpriseName(scope.row.anotherName) }}</template>
+    </el-table-column>
     <el-table-column label="联系人" align="center" prop="contact" />
     <el-table-column label="联系电话" align="center" prop="phone" />
     <el-table-column label="所在行业" align="center" prop="industryName" />
@@ -37,6 +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'
 
 const props = defineProps({
   id: String

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

@@ -74,7 +74,7 @@
   <!-- 列表 -->
   <ContentWrap>
     <el-table v-loading="loading" :data="list" :stripe="true">
-      <el-table-column label="企业LOGO" align="center" prop="logoUrl">
+      <el-table-column label="企业LOGO" align="center" prop="logoUrl" fixed="left">
         <template #default="scope">
           <div class="h-70px w-80px">
             <el-image v-if="scope.row.logoUrl" style="width: 50px; height: 50px" :src="scope.row.logoUrl" lazy preview-teleported :preview-src-list="[scope.row.logoUrl]" />
@@ -82,8 +82,12 @@
           </div>
         </template>
       </el-table-column>
-      <el-table-column label="企业全称" align="center" prop="name" />
-      <el-table-column label="企业别称" align="center" prop="anotherName" />
+      <el-table-column label="企业全称" align="center" prop="name" fixed="left">
+        <template #default="scope">{{ dealEnterpriseName(scope.row.name) }}</template>
+      </el-table-column>
+      <el-table-column label="企业别称" align="center" prop="anotherName">
+        <template #default="scope">{{ dealEnterpriseName(scope.row.anotherName) }}</template>
+      </el-table-column>
       <el-table-column label="联系人" align="center" prop="contact" />
       <el-table-column label="联系电话" align="center" prop="phone" />
       <el-table-column label="地址" align="center" prop="address" />
@@ -101,7 +105,7 @@
         </template>
       </el-table-column>
       <el-table-column label="创建时间" align="center" prop="createTime" :formatter="dateFormatter" width="180px" />
-      <el-table-column label="操作" align="center" fixed="right" min-width="130">
+      <el-table-column label="操作" align="center" fixed="right" min-width="180">
         <template #default="scope">
           <el-button link type="success" @click="handleSetVip(scope.row.id)">会员套餐</el-button>
           <el-button link type="primary" @click="openDetail(scope.row.id)">详情</el-button>
@@ -141,6 +145,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'
 
 /** 门墩儿-企业信息 列表 */
 defineOptions({ name: 'Enterprise' })

+ 2 - 1
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="企业名称">{{ info?.name || '-' }}</el-descriptions-item>
+      <el-descriptions-item label="企业名称">{{ dealEnterpriseName(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,6 +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'
 
 defineOptions({ name: 'EnterpriseRegisterDetails' })
 const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调

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

@@ -88,8 +88,9 @@
   <!-- 列表 -->
   <ContentWrap>
     <el-table v-loading="loading" :data="list" :stripe="true">
-      <!-- <el-table-column label="用户id" align="center" prop="userId" /> -->
-      <el-table-column label="企业名称" align="center" prop="name" />
+      <el-table-column label="企业名称" align="center" prop="name" fixed="left">
+        <template #default="scope">{{ dealEnterpriseName(scope.row.name) }}</template>
+      </el-table-column>
       <el-table-column label="管理员姓名" align="center" prop="contactName" />
       <el-table-column label="管理员电话" align="center" prop="phone" />
       <el-table-column label="管理员邮箱" align="center" prop="email" />
@@ -121,7 +122,7 @@
         :formatter="dateFormatter"
         width="180px"
       />
-      <el-table-column label="操作" fixed="right" width="180px">
+      <el-table-column label="操作">
         <template #default="scope">
           <el-button link type="primary" @click="handleDetails(scope.row.id, 'detail')">详情</el-button>
           <template v-if="scope.row.status === '0'">
@@ -156,6 +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 { ElMessageBox } from 'element-plus'
 
 

+ 2 - 1
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="企业名">{{ info.enterpriseName }}</el-descriptions-item>
+    <el-descriptions-item label="企业名">{{ dealEnterpriseName(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,6 +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'
 
 const props = defineProps({
   id: String

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

@@ -86,7 +86,9 @@
   <!-- 列表 -->
   <ContentWrap>
     <el-table v-loading="loading" :data="list" :stripe="true">
-      <el-table-column label="企业名称" align="center" prop="enterpriseName" />
+      <el-table-column label="企业名称" align="center" prop="enterpriseName" fixed="left">
+        <template #default="scope">{{ dealEnterpriseName(scope.row.enterpriseName) }}</template>
+      </el-table-column>
       <el-table-column label="姓名" align="center" prop="name" />
       <el-table-column label="用户头像" align="center" prop="avatar">
         <template #default="scope">
@@ -107,7 +109,7 @@
       </el-table-column>
       <el-table-column label="最后登录IP" align="center" prop="loginIp" />
       <el-table-column label="最后登录时间" align="center" prop="loginDate" :formatter="dateFormatter" width="180px" />
-      <el-table-column label="操作" align="center">
+      <el-table-column label="操作" align="center" fixed="right" min-width="260">
         <template #default="scope">
           <el-button link type="primary" @click="openDetail(scope.row.id, scope.row.enterpriseId, scope.row.userId)">详情</el-button>
           <!-- <el-button link type="primary" @click="openEditEmail(scope.row.id)">修改登录邮箱</el-button> -->
@@ -141,6 +143,7 @@
 import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
 import { dateFormatter } from '@/utils/formatTime'
 import download from '@/utils/download'
+import { dealEnterpriseName } from '@/utils'
 import { EnterpriseUserBindApi, EnterpriseUserBindVO } from '@/api/menduner/system/enterprise/userBind'
 // import EditEmail from './EditEmail.vue'
 import Edit from './Edit.vue'

+ 4 - 12
src/views/menduner/system/hunt/index.vue

@@ -35,15 +35,6 @@
           class="!w-240px"
         />
       </el-form-item>
-      <!-- <el-form-item label="IP地址" prop="ip" v-hasPermi="['menduner:system:hunt:query']">
-        <el-input
-          v-model="queryParams.ip"
-          placeholder="请输入IP地址"
-          clearable
-          @keyup.enter="handleQuery"
-          class="!w-240px"
-        />
-      </el-form-item> -->
       <el-form-item label="创建时间" prop="createTime" v-hasPermi="['menduner:system:hunt:query']">
         <el-date-picker
           v-model="queryParams.createTime"
@@ -106,11 +97,11 @@
   <!-- 列表 -->
   <ContentWrap>
     <el-table v-loading="loading" :data="list" :stripe="true">
-      <!-- <el-table-column label="id" align="center" prop="id" :show-overflow-tooltip="true" /> -->
       <el-table-column label="姓名" align="center" prop="name" />
-      <el-table-column label="企业名称" align="center" prop="enterpriseName" />
+      <el-table-column label="企业名称" align="center" prop="enterpriseName">
+        <template #default="scope">{{ dealEnterpriseName(scope.row.enterpriseName) }}</template>
+      </el-table-column>
       <el-table-column label="联系方式" align="center" prop="phone" />
-      <!-- <el-table-column label="IP地址" align="center" prop="ip" /> -->
       <el-table-column
         label="创建时间"
         align="center"
@@ -174,6 +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'
 
 /** 猎寻服务 列表 */
 defineOptions({ name: 'Hunt' })

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

@@ -30,7 +30,9 @@
           <div v-html="scope.row.jobFair.title"></div>
         </template>
       </el-table-column>
-      <el-table-column label="企业名称" align="center" prop="name" />
+      <el-table-column label="企业名称" align="center" prop="name">
+        <template #default="scope">{{ dealEnterpriseName(scope.row.name) }}</template>
+      </el-table-column>
       <el-table-column label="操作" align="center">
         <template #default="scope">
           <el-button
@@ -61,6 +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 { JobFairManageApi } from '@/api/menduner/system/jobFair/manage'
 
 /** 招聘会 列表 */

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

@@ -126,7 +126,7 @@
       </el-table-column>
       <el-table-column label="订单取消时间" align="center" prop="cancelTime" :formatter="dateFormatter" width="180px" />
       <el-table-column label="创建时间" align="center" prop="createTime" :formatter="dateFormatter" width="180px" />
-      <el-table-column label="操作" align="center">
+      <el-table-column label="操作" align="center" fixed="right" min-width="90">
         <template #default="scope">
           <el-button link type="primary" @click="handlePay(scope.row)" v-if="!scope.row.payStatus && scope.row.cancelType !== '10'">
             前往支付

+ 1 - 1
src/views/menduner/system/redeem/index.vue

@@ -111,7 +111,7 @@
         :formatter="dateFormatter"
         width="180px"
       />
-      <el-table-column label="操作" align="center">
+      <el-table-column label="操作" align="center" fixed="right" min-width="100">
         <template #default="scope">
           <el-button
             link