Xiao_123 há 11 meses atrás
pai
commit
9ebecdfb44

+ 9 - 2
src/locales/en.js

@@ -27,6 +27,9 @@ export default {
     currentlyUnavailable: 'Currently unavailable',
     upload: 'Upload',
     home: 'Home',
+    activation: 'Activation',
+    activatePosition: 'Activate position',
+    topping: 'Topping',
     position: 'Position',
     company: 'Company',
     operationSuccessful: 'Operation successful',
@@ -41,7 +44,9 @@ export default {
     alreadyExists: 'Already exists',
     pleaseSelect: 'Please select',
     pleaseEnter: 'Please Enter',
-    actions: 'operation'
+    actions: 'operation',
+    selectAll: 'Select All',
+    noData: 'There is currently no data available'
   },
   sys: {
     api: {
@@ -146,7 +151,9 @@ export default {
     companyCollection: 'Company Collection',
     recruitmentStatistics: 'Recruitment statistics',
     positionInformation: 'Basic information of the position',
-    requirementDesc: 'We will accurately recommend suitable talents to you based on the following conditions. Please fill in as much detail as possible'
+    requirementDesc: 'We will accurately recommend suitable talents to you based on the following conditions. Please fill in as much detail as possible',
+    talentSearch: 'Talent search',
+    refreshTime: 'Refresh time'
   },
   enterprise: {
     companyInfo: 'Company Information',

+ 9 - 2
src/locales/zh-CN.js

@@ -31,6 +31,9 @@ export default {
     company: '公司',
     operationSuccessful: '操作成功',
     close: '关闭',
+    activation: '激活',
+    topping: '置顶',
+    activatePosition: '激活职位',
     suspend: '暂停',
     release: '发布',
     clearFilterCriteria: '清空筛选条件',
@@ -41,7 +44,9 @@ export default {
     alreadyExists: '已存在',
     pleaseSelect: '请选择',
     pleaseEnter: '请输入',
-    actions: '操作'
+    actions: '操作',
+    selectAll: '全选',
+    noData: '暂无数据'
   },
   sys: {
     api: {
@@ -146,7 +151,9 @@ export default {
     companyCollection: '公司收藏',
     recruitmentStatistics: '招聘统计',
     positionInformation: '职位基本信息',
-    requirementDesc: '我们将通过以下条件,为您精确推荐合适的人才,请尽量详细填写'
+    requirementDesc: '我们将通过以下条件,为您精确推荐合适的人才,请尽量详细填写',
+    talentSearch: '人才搜索',
+    refreshTime: '刷新时间'
   },
   enterprise: {
     companyInfo: '公司信息',

+ 15 - 18
src/views/enterprise/positionManagement/components/item.vue

@@ -1,13 +1,13 @@
 <template>
   <div>
     <div v-if="props.items.length" class="d-flex align-center mb-1">
-      <v-checkbox v-model="selectAll" :label="!selectAll ? '全选' : `已选中${selectList.length}条`" hide-details color="primary" @update:model-value="handleChangeSelectAll"></v-checkbox>
+      <v-checkbox v-model="selectAll" :label="!selectAll ? $t('common.selectAll') : `已选中${selectList.length}条`" hide-details color="primary" @update:model-value="handleChangeSelectAll"></v-checkbox>
       <div v-if="tab === 1" class="ml-8">
-        <v-btn :disabled="!selectAll" color="primary" variant="tonal" size="small" @click="handleAction(2, 'batch', {})">刷新</v-btn>
-        <v-btn class="mx-3" :disabled="!selectAll" color="primary" variant="tonal" size="small" @click="handleAction(3, 'top', {})">置顶</v-btn>
-        <v-btn :disabled="!selectAll" color="primary" variant="tonal" size="small" @click="handleAction(0, 'close', {})">关闭</v-btn>
+        <v-btn :disabled="!selectAll" color="primary" variant="tonal" size="small" @click="handleAction(2, 'batch', {})">{{ $t('common.refresh') }}</v-btn>
+        <v-btn class="mx-3" :disabled="!selectAll" color="primary" variant="tonal" size="small" @click="handleAction(3, 'top', {})">{{ $t('common.topping') }}</v-btn>
+        <v-btn :disabled="!selectAll" color="primary" variant="tonal" size="small" @click="handleAction(0, 'close', {})">{{ $t('common.close') }}</v-btn>
       </div>
-      <v-btn v-if="tab === 2" class="ml-8" :disabled="!selectAll" color="primary" variant="tonal" size="small" @click="handleAction(1, 'activation', {})">激活</v-btn>
+      <v-btn v-if="tab === 2" class="ml-8" :disabled="!selectAll" color="primary" variant="tonal" size="small" @click="handleAction(1, 'activation', {})">{{ $t('common.activation') }}</v-btn>
     </div>
     <div v-for="val in items" :key="val.id" class="itemBox mb-3">
       <div class="d-flex justify-space-between pa-5">
@@ -34,20 +34,20 @@
         </div>
         <div class="d-flex align-center">
           <div v-if="tab === 1">
-            <v-btn color="primary" variant="tonal">人才搜索</v-btn>
-            <v-btn class="ml-3" color="primary" @click="handleAction(2, '', val)">刷新职位</v-btn>
+            <v-btn color="primary" variant="tonal">{{ $t('position.talentSearch') }}</v-btn>
+            <v-btn class="ml-3" color="primary" @click="handleAction(2, '', val)">{{ $t('common.refresh') + $t('common.position') }}</v-btn>
           </div>
           <div v-if="tab === 2">
-            <v-btn color="primary" @click="handleAction(1, '', val)">激活职位</v-btn>
+            <v-btn color="primary" @click="handleAction(1, '', val)">{{ $t('common.activatePosition') }}</v-btn>
           </div>
         </div>
       </div>
       <div class="bottom pa-5 d-flex justify-space-between align-center">
-        <div>刷新时间:{{ timesTampChange(val.updateTime).slice(0, 10) }} {{ val.expireDay && Number(val.expireDay) >= 1 ? `(${ val.expireDay }天后到期)` : '' }}</div>
+        <div>{{ $t('position.refreshTime') }} :{{ timesTampChange(val.updateTime).slice(0, 10) }} {{ val.expireDay && Number(val.expireDay) >= 1 ? `(${ val.expireDay }天后到期)` : '' }}</div>
         <div class="d-flex">
           <div class="ml-10 d-flex">
             <div v-if="tab === 1">
-              <span class="cursor-pointer" @click="handleAction(3, '', val)">置顶</span>
+              <span class="cursor-pointer" @click="handleAction(3, '', val)">{{ $t('common.topping') }}</span>
               <span class="lines"></span>
               <span class="cursor-pointer" @click="handleAction(0, '', val)">{{ $t('common.close') }}</span>
               <span class="lines"></span>
@@ -73,9 +73,11 @@ defineOptions({ name: 'enterprise-position-item'})
 import { defineEmits, ref, watch } from 'vue'
 import { useRouter } from 'vue-router'
 import { timesTampChange } from '@/utils/date'
+import { useI18n } from '@/hooks/web/useI18n'
 import { closeJobAdvertised, enableJobAdvertised, refreshJobAdvertised, topJobAdvertised } from '@/api/position'
 import Snackbar from '@/plugins/snackbar'
 
+const { t } = useI18n()
 const emit = defineEmits(['refresh'])
 const props = defineProps({
   tab: {
@@ -130,19 +132,14 @@ watch(
   { deep: true }
 )
 
-const apiList = [
-  { api: closeJobAdvertised, desc: '关闭成功' },
-  { api: enableJobAdvertised, desc: '激活成功' },
-  { api: refreshJobAdvertised, desc: '刷新成功' },
-  { api: topJobAdvertised, desc: '置顶成功' }
-]
+const apiList = [ closeJobAdvertised, enableJobAdvertised, refreshJobAdvertised, topJobAdvertised ]
 
 // 职位关闭、激活、刷新、置顶
 const handleAction = async (index, type, { id }) => {
   const ids = type ? props.items.filter(e => e.select).map(k => k.id) : [id]
   if (!ids.length && !index) return
-  await apiList[index].api(ids)
-  Snackbar.success(apiList[index].desc)
+  await apiList[index](ids)
+  Snackbar.success(t('common.operationSuccessful'))
   // 清空选项
   selectList.value = []
   selectAll.value = false

+ 2 - 5
src/views/enterprise/positionManagement/index.vue

@@ -5,7 +5,7 @@
         <TextUI :item="textItem" @enter="handleEnter" @appendInnerClick="handleEnter"></TextUI>
       </div>
       <div class="text-end">
-        <v-btn class="btn" prepend-icon="mdi-plus" color="primary" @click="handleAdd">{{ $t('position.newPositionsAdded') }}</v-btn>
+        <v-btn prepend-icon="mdi-plus" color="primary" @click="handleAdd">{{ $t('position.newPositionsAdded') }}</v-btn>
       </div>
       
       <div class="mt-3">
@@ -44,7 +44,7 @@ const { t } = useI18n()
 const router = useRouter()
 const tab = ref(1)
 const total = ref(0)
-const tipsText = ref('暂无数据')
+const tipsText = ref(t('common.noData'))
 const query = ref({
   pageSize: 10,
   pageNo: 1
@@ -103,7 +103,4 @@ const handleEnter = (e) => {
 </script>
 
 <style scoped lang="scss">
-.btn {
-  width: 116px;
-}
 </style>