|
@@ -61,7 +61,7 @@
|
|
<industryTypeCard :select="query.industryIdList" :currentData="currentSelect" showSelect @handleClickIndustry="handleIndustry"></industryTypeCard>
|
|
<industryTypeCard :select="query.industryIdList" :currentData="currentSelect" showSelect @handleClickIndustry="handleIndustry"></industryTypeCard>
|
|
</v-menu>
|
|
</v-menu>
|
|
</template>
|
|
</template>
|
|
- <template #workAreaId="{ item }">
|
|
|
|
|
|
+ <!-- <template #workAreaId_old="{ item }">
|
|
<v-menu :close-delay="1" :open-delay="0" v-bind="$attrs">
|
|
<v-menu :close-delay="1" :open-delay="0" v-bind="$attrs">
|
|
<template v-slot:activator="{ props }">
|
|
<template v-slot:activator="{ props }">
|
|
<textUI
|
|
<textUI
|
|
@@ -71,9 +71,9 @@
|
|
style="position: relative;"
|
|
style="position: relative;"
|
|
></textUI>
|
|
></textUI>
|
|
</template>
|
|
</template>
|
|
- <areaType :select="[query.workAreaId].filter(Boolean)" @handleAreaClick="handleArea" class="jobTypeCardBox" isSingle></areaType>
|
|
|
|
|
|
+ <areaType :select="[query.workAreaId_old].filter(Boolean)" @handleAreaClick="handleArea" class="jobTypeCardBox" isSingle></areaType>
|
|
</v-menu>
|
|
</v-menu>
|
|
- </template>
|
|
|
|
|
|
+ </template> -->
|
|
</CtForm>
|
|
</CtForm>
|
|
<div class="text-end">
|
|
<div class="text-end">
|
|
<v-btn class="half-button mr-3" variant="tonal" @click="isAdd = false; resetForm()">{{ $t('common.cancel') }}</v-btn>
|
|
<v-btn class="half-button mr-3" variant="tonal" @click="isAdd = false; resetForm()">{{ $t('common.cancel') }}</v-btn>
|
|
@@ -89,11 +89,12 @@ import CtForm from '@/components/CtForm'
|
|
import textUI from '@/components/FormUI/TextInput'
|
|
import textUI from '@/components/FormUI/TextInput'
|
|
import jobTypeCard from '@/components/jobTypeCard'
|
|
import jobTypeCard from '@/components/jobTypeCard'
|
|
import industryTypeCard from '@/components/industryTypeCard'
|
|
import industryTypeCard from '@/components/industryTypeCard'
|
|
-import areaType from '@/components/AreaSelect'
|
|
|
|
|
|
+// import areaType from '@/components/AreaSelect'
|
|
import Snackbar from '@/plugins/snackbar'
|
|
import Snackbar from '@/plugins/snackbar'
|
|
import Confirm from '@/plugins/confirm'
|
|
import Confirm from '@/plugins/confirm'
|
|
import { saveResumeJobInterested, getResumeJobInterested, deleteResumeJobInterested } from '@/api/recruit/personal/resume'
|
|
import { saveResumeJobInterested, getResumeJobInterested, deleteResumeJobInterested } from '@/api/recruit/personal/resume'
|
|
import { dealJobData } from './dict'
|
|
import { dealJobData } from './dict'
|
|
|
|
+import { getDict } from '@/hooks/web/useDictionaries'
|
|
|
|
|
|
const isAdd = ref(false)
|
|
const isAdd = ref(false)
|
|
const formPageRef = ref()
|
|
const formPageRef = ref()
|
|
@@ -141,15 +142,31 @@ const items = ref({
|
|
outlined: true,
|
|
outlined: true,
|
|
rules: [v => !!v || '请输入薪资最高要求']
|
|
rules: [v => !!v || '请输入薪资最高要求']
|
|
},
|
|
},
|
|
|
|
+ // {
|
|
|
|
+ // slotName: 'workAreaId_old',
|
|
|
|
+ // key: 'workAreaId_old',
|
|
|
|
+ // value: null,
|
|
|
|
+ // label: '工作城市 *',
|
|
|
|
+ // valueKey: 'workArea',
|
|
|
|
+ // col: 6,
|
|
|
|
+ // flexStyle: 'mr-3',
|
|
|
|
+ // rules: [v => !!v || '请选择工作城市']
|
|
|
|
+ // },
|
|
{
|
|
{
|
|
- slotName: 'workAreaId',
|
|
|
|
|
|
+ // slotName: 'workAreaId',
|
|
|
|
+ // type: 'citySelect',
|
|
|
|
+ type: 'nestedListGroup',
|
|
key: 'workAreaId',
|
|
key: 'workAreaId',
|
|
value: null,
|
|
value: null,
|
|
label: '工作城市 *',
|
|
label: '工作城市 *',
|
|
- valueKey: 'workArea',
|
|
|
|
|
|
+ itemText: 'name',
|
|
|
|
+ itemValue: 'id',
|
|
col: 6,
|
|
col: 6,
|
|
flexStyle: 'mr-3',
|
|
flexStyle: 'mr-3',
|
|
- rules: [v => !!v || '请选择工作城市']
|
|
|
|
|
|
+ selectLevel: 2,
|
|
|
|
+ items: [],
|
|
|
|
+ rules: [v => !!v || '请选择工作城市'],
|
|
|
|
+ // valueKey: 'workArea',
|
|
},
|
|
},
|
|
{
|
|
{
|
|
type: 'autocomplete',
|
|
type: 'autocomplete',
|
|
@@ -171,6 +188,19 @@ const items = ref({
|
|
]
|
|
]
|
|
})
|
|
})
|
|
|
|
|
|
|
|
+getDict('areaTreeData', null, 'areaTreeData').then(({ data }) => {
|
|
|
|
+ data = data?.length && data || []
|
|
|
|
+ if (!data?.length) return console.error('areaTreeData获取失败!')
|
|
|
|
+ //
|
|
|
|
+ const china = data.find(e => e.id === '1')
|
|
|
|
+ const chinaTreeData = china?.children?.length ? china.children : []
|
|
|
|
+ //
|
|
|
|
+ if (!chinaTreeData?.length) return console.error('chinaTreeData获取失败!')
|
|
|
|
+ const item = items.value.options.find(e => e.key === 'workAreaId')
|
|
|
|
+ if (item?.items) item.items = chinaTreeData
|
|
|
|
+})
|
|
|
|
+getDict()
|
|
|
|
+
|
|
// 获取求职意向
|
|
// 获取求职意向
|
|
const interestList = ref([])
|
|
const interestList = ref([])
|
|
const getJobInterested = async () => {
|
|
const getJobInterested = async () => {
|
|
@@ -202,12 +232,12 @@ const handleIndustry = (list, arr) => {
|
|
setValue('industryIdList', str)
|
|
setValue('industryIdList', str)
|
|
}
|
|
}
|
|
|
|
|
|
-// 工作城市
|
|
|
|
-const handleArea = (list, name) => {
|
|
|
|
- if (!list.length) return
|
|
|
|
- query.workAreaId = list[0]
|
|
|
|
- setValue('workAreaId', name)
|
|
|
|
-}
|
|
|
|
|
|
+// // 工作城市
|
|
|
|
+// const handleArea = (list, name) => {
|
|
|
|
+// if (!list.length) return
|
|
|
|
+// query.workAreaId_old = list[0]
|
|
|
|
+// setValue('workAreaId_old', name)
|
|
|
|
+// }
|
|
|
|
|
|
const resetForm = () => {
|
|
const resetForm = () => {
|
|
items.value.options.forEach(e => {
|
|
items.value.options.forEach(e => {
|
|
@@ -219,7 +249,7 @@ const resetForm = () => {
|
|
currentSelect = []
|
|
currentSelect = []
|
|
}
|
|
}
|
|
|
|
|
|
-const arr = ['payFrom', 'payTo', 'jobType']
|
|
|
|
|
|
+const arr = ['payFrom', 'payTo', 'jobType', 'workAreaId']
|
|
const handleSave = async () => {
|
|
const handleSave = async () => {
|
|
const { valid } = await formPageRef.value.formRef.validate()
|
|
const { valid } = await formPageRef.value.formRef.validate()
|
|
if (!valid) return
|
|
if (!valid) return
|