|
|
@@ -89,9 +89,9 @@
|
|
|
<el-radio :value="'1'">是</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="学校要求" prop="schoolRequirement">
|
|
|
+ <el-form-item label="学历要求" prop="schoolRequirement">
|
|
|
<el-select v-model="form.schoolRequirement" placeholder="请选择学校要求" clearable>
|
|
|
- <el-option v-for="item in schoolRequirementOptions" :key="item" :label="item" :value="item" />
|
|
|
+ <el-option v-for="item in schoolRequirementOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="性别" prop="genderRequirement">
|
|
|
@@ -101,17 +101,17 @@
|
|
|
</el-form-item>
|
|
|
<el-form-item label="年级" prop="gradeRequirement">
|
|
|
<el-select v-model="form.gradeRequirement" placeholder="请选择年级" clearable>
|
|
|
- <el-option v-for="item in gradeOptions" :key="item" :label="item" :value="item" />
|
|
|
+ <el-option v-for="item in gradeOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="到岗时间" prop="arrivalTime">
|
|
|
<el-select v-model="form.arrivalTime" placeholder="请选择到岗时间" clearable>
|
|
|
- <el-option v-for="item in arrivalTimeOptions" :key="item" :label="item" :value="item" />
|
|
|
+ <el-option v-for="item in arrivalTimeOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="实习时间" prop="internshipDuration">
|
|
|
<el-select v-model="form.internshipDuration" placeholder="请选择实习时间" clearable>
|
|
|
- <el-option v-for="item in internshipDurationOptions" :key="item" :label="item" :value="item" />
|
|
|
+ <el-option v-for="item in internshipDurationOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="是否出差" prop="travelRequired">
|
|
|
@@ -152,7 +152,7 @@
|
|
|
<div v-show="activeStep === 2" class="step-panel finish-panel">
|
|
|
<div class="finish-icon">✓</div>
|
|
|
<div class="finish-title">创建成功</div>
|
|
|
- <div class="finish-subtitle">快去平台审核</div>
|
|
|
+ <div class="finish-subtitle">等待平台审核</div>
|
|
|
</div>
|
|
|
|
|
|
<div class="post-create-footer">
|
|
|
@@ -180,7 +180,7 @@ import PageShell from '@/components/PageShell/index.vue';
|
|
|
import { addPostManage, getPostManage, updatePostManage } from '@/api/main/postManage';
|
|
|
import type { MainPostApplyVO } from '@/api/main/postManage/types';
|
|
|
import { getDicts } from '@/api/system/dict/data';
|
|
|
-import { listIndustry, listIndustrySkill } from '@/api/system/industry';
|
|
|
+import { listIndustryOpen, listIndustrySkillOpen } from '@/api/system/industry';
|
|
|
import type { IndustrySkillVO, IndustryVO } from '@/api/system/industry/types';
|
|
|
import { listTag } from '@/api/system/tag';
|
|
|
import type { TagVO } from '@/api/system/tag/types';
|
|
|
@@ -238,15 +238,15 @@ const postNameProps = { value: 'value', label: 'label', children: 'children', em
|
|
|
const jobTypeOptions = ref<DictDataVO[]>([]);
|
|
|
const postLevelOptions = ref<DictDataVO[]>([]);
|
|
|
const tagOptions = ref<TagVO[]>([]);
|
|
|
-const schoolRequirementOptions = ['不限', '大专', '本科', '硕士及以上', '双一流优先'];
|
|
|
+const schoolRequirementOptions = ref<DictDataVO[]>([]);
|
|
|
+const gradeOptions = ref<DictDataVO[]>([]);
|
|
|
+const arrivalTimeOptions = ref<DictDataVO[]>([]);
|
|
|
+const internshipDurationOptions = ref<DictDataVO[]>([]);
|
|
|
const genderOptions = [
|
|
|
- { label: '不限', value: '0' },
|
|
|
- { label: '男', value: '1' },
|
|
|
- { label: '女', value: '2' }
|
|
|
+ { label: '不限', value: '2' },
|
|
|
+ { label: '男', value: '0' },
|
|
|
+ { label: '女', value: '1' }
|
|
|
];
|
|
|
-const gradeOptions = ['不限', '大一', '大二', '大三', '大四', '研一', '研二', '研三'];
|
|
|
-const arrivalTimeOptions = ['立即到岗', '3天内', '一周内', '两周内', '一个月内'];
|
|
|
-const internshipDurationOptions = ['不限', '1个月', '3个月', '6个月', '长期'];
|
|
|
|
|
|
const form = reactive<PostCreateFormModel>({
|
|
|
id: undefined,
|
|
|
@@ -417,7 +417,7 @@ const findRegionPathByLabels = (province?: string, city?: string, district?: str
|
|
|
};
|
|
|
|
|
|
const loadPostNameOptions = async () => {
|
|
|
- const [industryRes, skillRes] = await Promise.all([listIndustry({ status: '0' }), listIndustrySkill({ status: '0' })]);
|
|
|
+ const [industryRes, skillRes] = await Promise.all([listIndustryOpen({ status: '0' }), listIndustrySkillOpen({ status: '0' })]);
|
|
|
buildPostNameOptions(industryRes.data || [], skillRes.data || []);
|
|
|
};
|
|
|
|
|
|
@@ -431,6 +431,26 @@ const loadPostLevelOptions = async () => {
|
|
|
postLevelOptions.value = res.data || [];
|
|
|
};
|
|
|
|
|
|
+const loadSchoolRequirementOptions = async () => {
|
|
|
+ const res = await getDicts('main_education');
|
|
|
+ schoolRequirementOptions.value = res.data || [];
|
|
|
+};
|
|
|
+
|
|
|
+const loadGradeOptions = async () => {
|
|
|
+ const res = await getDicts('main_experience');
|
|
|
+ gradeOptions.value = res.data || [];
|
|
|
+};
|
|
|
+
|
|
|
+const loadArrivalTimeOptions = async () => {
|
|
|
+ const res = await getDicts('main_arrival_time');
|
|
|
+ arrivalTimeOptions.value = res.data || [];
|
|
|
+};
|
|
|
+
|
|
|
+const loadInternshipDurationOptions = async () => {
|
|
|
+ const res = await getDicts('main_internship_duration');
|
|
|
+ internshipDurationOptions.value = res.data || [];
|
|
|
+};
|
|
|
+
|
|
|
const loadTagOptions = async () => {
|
|
|
const res = await listTag({
|
|
|
pageNum: 1,
|
|
|
@@ -583,7 +603,16 @@ const handleCancel = () => {
|
|
|
};
|
|
|
|
|
|
onMounted(async () => {
|
|
|
- await Promise.all([loadPostNameOptions(), loadJobTypeOptions(), loadPostLevelOptions(), loadTagOptions()]);
|
|
|
+ await Promise.all([
|
|
|
+ loadPostNameOptions(),
|
|
|
+ loadJobTypeOptions(),
|
|
|
+ loadPostLevelOptions(),
|
|
|
+ loadSchoolRequirementOptions(),
|
|
|
+ loadGradeOptions(),
|
|
|
+ loadArrivalTimeOptions(),
|
|
|
+ loadInternshipDurationOptions(),
|
|
|
+ loadTagOptions()
|
|
|
+ ]);
|
|
|
await loadDetail();
|
|
|
});
|
|
|
</script>
|