Kaynağa Gözat

招聘类型改为从接口取值

lifanagju_citu 7 ay önce
ebeveyn
işleme
14a2eaccc8

+ 2 - 1
components.d.ts

@@ -17,6 +17,7 @@ declare module 'vue' {
     Combobox: typeof import('./src/components/FormUI/combobox/index.vue')['default']
     ComboboxZhAndEn: typeof import('./src/components/FormUI/comboboxZhAndEn/index.vue')['default']
     ConfirmPaymentDialog: typeof import('./src/components/pay/confirmPaymentDialog.vue')['default']
+    copy: typeof import('./src/components/CtForm/index copy.vue')['default']
     CtBtn: typeof import('./src/components/CtVuetify/CtBtn/index.vue')['default']
     CtDialog: typeof import('./src/components/CtDialog/index.vue')['default']
     CtForm: typeof import('./src/components/CtForm/index.vue')['default']
@@ -29,9 +30,9 @@ declare module 'vue' {
     DatePicker: typeof import('./src/components/DatePicker/index.vue')['default']
     Details: typeof import('./src/components/Enterprise/details.vue')['default']
     Echarts: typeof import('./src/components/Echarts/index.vue')['default']
-    ElCascader: typeof import('element-plus/es')['ElCascader']
     ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider']
     ElDatePicker: typeof import('element-plus/es')['ElDatePicker']
+    ElTimePicker: typeof import('element-plus/es')['ElTimePicker']
     Empty: typeof import('./src/components/Empty/index.vue')['default']
     File: typeof import('./src/components/Upload/file.vue')['default']
     HeadSearch: typeof import('./src/components/headSearch/index.vue')['default']

+ 4 - 1
src/views/recruit/enterprise/hirePosition/components/item.vue

@@ -74,6 +74,7 @@ import { useI18n } from '@/hooks/web/useI18n'
 import { closeJobAdvertised, enableJobAdvertised, updatePositionExpireTime } from '@/api/position'
 import Snackbar from '@/plugins/snackbar'
 import confirmPaymentDialog from '@/components/pay/confirmPaymentDialog.vue'
+import { getEnterprisePubJobTypePermission } from '@/api/recruit/enterprise/position'
 
 const { t } = useI18n()
 const emit = defineEmits(['refresh'])
@@ -143,8 +144,10 @@ const handleAction = async (index, { id }) => {
 
 const router = useRouter()
 // 职位编辑
-const handleEdit = (val) => {
+const handleEdit = async (val) => {
   if (props.tab !== 1) return
+  const data = await getEnterprisePubJobTypePermission()
+  if (!data || !data.length) return Snackbar.warning('没有该操作权限,请联系平台管理员升级后再试')
   router.push(`/recruit/enterprise/hirePosition/edit?id=${val.id}`)
 }
 

+ 12 - 2
src/views/recruit/enterprise/hirePosition/components/jobRequirements.vue

@@ -57,6 +57,7 @@ import CtForm from '@/components/CtForm'
 import { reactive, ref, watch } from 'vue'
 import { getDict } from '@/hooks/web/useDictionaries'
 import { getTagTreeDataApi } from '@/api/enterprise'
+import { getEnterprisePubJobTypePermission } from '@/api/recruit/enterprise/position'
 
 const props = defineProps({
   itemData: Object
@@ -71,10 +72,10 @@ const items = ref({
       key: 'type',
       value: null,
       label: '招聘类型 *',
-      itemText: 'label',
+      itemText: 'key',
       itemValue: 'value',
       col: 4,
-      dictTypeName: 'menduner_job_type',
+      // dictTypeName: 'menduner_job_type',
       rules: [v => !!v || '招聘类型'],
       items: []
     },
@@ -188,6 +189,15 @@ const items = ref({
   ]
 })
 
+const getJobTypeList = async () => {
+  const data = await getEnterprisePubJobTypePermission()
+  if (!data || !data.length) return
+  const jobTypeItem = items.value.options.find(e => e.key === 'type')
+  if (jobTypeItem) jobTypeItem.items = data
+  //  Snackbar.warning('没有该操作权限,请联系平台管理员升级后再试')
+}
+getJobTypeList()
+
 // 招聘职位标签
 const tagList = ref([])
 const getTagList = async () => {

+ 4 - 0
src/views/recruit/enterprise/hirePosition/index.vue

@@ -42,6 +42,8 @@ import { dealDictArrayData } from '@/utils/position'
 import { useI18n } from '@/hooks/web/useI18n'
 import { useUserStore } from '@/store/user'
 import download from '@/utils/download'
+import { getEnterprisePubJobTypePermission } from '@/api/recruit/enterprise/position'
+import Snackbar from '@/plugins/snackbar'
 
 const store = useUserStore()
 
@@ -77,6 +79,8 @@ const textItem = ref({
 })
 
 const handleAdd = async () => {
+  const data = await getEnterprisePubJobTypePermission()
+  if (!data || !data.length) return Snackbar.warning('没有该操作权限,请联系平台管理员升级后再试')
   router.push('/recruit/enterprise/hirePosition/add')
   await store.getEnterpriseUserAccountInfo()
 }

+ 12 - 2
src/views/recruit/enterprise/positionManagement/components/jobRequirements.vue

@@ -57,6 +57,7 @@ import CtForm from '@/components/CtForm'
 import { reactive, ref, watch } from 'vue'
 import { getDict } from '@/hooks/web/useDictionaries'
 import { getTagTreeDataApi } from '@/api/enterprise'
+import { getEnterprisePubJobTypePermission } from '@/api/recruit/enterprise/position'
 
 const props = defineProps({
   itemData: Object
@@ -71,10 +72,10 @@ const items = ref({
       key: 'type',
       value: null,
       label: '招聘类型 *',
-      itemText: 'label',
+      itemText: 'key',
       itemValue: 'value',
       col: 4,
-      dictTypeName: 'menduner_job_type',
+      // dictTypeName: 'menduner_job_type',
       rules: [v => !!v || '招聘类型'],
       items: []
     },
@@ -188,6 +189,15 @@ const items = ref({
   ]
 })
 
+const getJobTypeList = async () => {
+  const data = await getEnterprisePubJobTypePermission()
+  if (!data || !data.length) return
+  const jobTypeItem = items.value.options.find(e => e.key === 'type')
+  if (jobTypeItem) jobTypeItem.items = data
+  //  Snackbar.warning('没有该操作权限,请联系平台管理员升级后再试')
+}
+getJobTypeList()
+
 // 招聘职位标签
 const tagList = ref([])
 const getTagList = async () => {