|
|
@@ -21,12 +21,12 @@
|
|
|
</el-form-item>
|
|
|
<el-form-item prop="postType" class="search-form-item search-select-item">
|
|
|
<el-select v-model="queryParams.postType" placeholder="岗位类型" clearable>
|
|
|
- <el-option v-for="item in postTypeOptions" :key="item" :label="item" :value="item" />
|
|
|
+ <el-option v-for="item in postTypeOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item prop="postLevel" class="search-form-item search-select-item">
|
|
|
<el-select v-model="queryParams.postLevel" placeholder="岗位级别" clearable>
|
|
|
- <el-option v-for="item in postCategoryOptions" :key="item" :label="item" :value="item" />
|
|
|
+ <el-option v-for="item in postCategoryOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
@@ -48,12 +48,12 @@
|
|
|
<el-table-column label="岗位名称" align="center" prop="postName" min-width="140" />
|
|
|
<el-table-column label="岗位类型" align="center" prop="postType" min-width="120">
|
|
|
<template #default="scope">
|
|
|
- <span>{{ scope.row.postType || '--' }}</span>
|
|
|
+ <span>{{ scope.row.postTypeLabel || '--' }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="岗位级别" align="center" prop="postLevel" min-width="120">
|
|
|
<template #default="scope">
|
|
|
- <span>{{ scope.row.postLevel || '--' }}</span>
|
|
|
+ <span>{{ scope.row.postLevelLabel || '--' }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="审核状态" align="center" min-width="180">
|
|
|
@@ -168,6 +168,7 @@ import { getMainAudit, listMainAudit } from '@/api/main/audit';
|
|
|
import PageShell from '@/components/PageShell/index.vue';
|
|
|
import { delPostManage, listPostManage, publishPostManage, unpublishPostManage } from '@/api/main/postManage';
|
|
|
import { MainPostApplyQuery, MainPostApplyVO } from '@/api/main/postManage/types';
|
|
|
+import { getDicts } from '@/api/system/dict/data';
|
|
|
import { globalHeaders } from '@/utils/request';
|
|
|
|
|
|
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
|
|
@@ -187,8 +188,8 @@ const ids = ref<Array<number | string>>([]);
|
|
|
const multiple = ref(true);
|
|
|
const total = ref(0);
|
|
|
const publishLoadingMap = reactive<Record<string, boolean>>({});
|
|
|
-const postCategoryOptions = ref<string[]>([]);
|
|
|
-const postTypeOptions = ref<string[]>([]);
|
|
|
+const postCategoryOptions = ref<any[]>([]);
|
|
|
+const postTypeOptions = ref<any[]>([]);
|
|
|
const queryFormRef = ref<ElFormInstance>();
|
|
|
const auditStatusOptions = [
|
|
|
{ label: '待审核', value: 0 },
|
|
|
@@ -273,8 +274,6 @@ const getList = async () => {
|
|
|
const res = await listPostManage(queryParams);
|
|
|
postList.value = res.rows;
|
|
|
total.value = res.total;
|
|
|
- postTypeOptions.value = Array.from(new Set(res.rows.map((item) => item.postType).filter(Boolean) as string[]));
|
|
|
- postCategoryOptions.value = Array.from(new Set(res.rows.map((item) => item.postLevel).filter(Boolean) as string[]));
|
|
|
} finally {
|
|
|
loading.value = false;
|
|
|
}
|
|
|
@@ -409,7 +408,18 @@ const handleDownloadImportTemplate = () => {
|
|
|
proxy?.download('main/postApply/importTemplate', {}, `post_template_${new Date().getTime()}.xlsx`);
|
|
|
};
|
|
|
|
|
|
+/** 加载字典数据 */
|
|
|
+const loadDictOptions = async () => {
|
|
|
+ const [typeRes, levelRes] = await Promise.all([
|
|
|
+ getDicts('main_position_type'),
|
|
|
+ getDicts('main_position_level')
|
|
|
+ ]);
|
|
|
+ postTypeOptions.value = typeRes.data || [];
|
|
|
+ postCategoryOptions.value = levelRes.data || [];
|
|
|
+};
|
|
|
+
|
|
|
onMounted(() => {
|
|
|
+ loadDictOptions();
|
|
|
getList();
|
|
|
});
|
|
|
</script>
|