import type { ArchiveStatus, RecordListMode } from './types';
|
|
import { ref } from 'vue';
|
|
import { useBaseStore } from '#/store';
|
import {
|
TMS_DIC,
|
labelOfDic,
|
loadTmsDic,
|
type TmsDicOpt,
|
} from '#/views/x/tms/shared/dic';
|
|
export const ARCHIVE_STATUS_OPTIONS = ref<TmsDicOpt[]>([]);
|
export const TASK_CATEGORY_OPTIONS = ref<TmsDicOpt[]>([]);
|
export const TRAIN_MODE_OPTIONS = ref<TmsDicOpt[]>([]);
|
export const EVAL_MODE_OPTIONS = ref<TmsDicOpt[]>([]);
|
|
export async function loadRecordDics() {
|
const baseStore = useBaseStore();
|
const [archive, category, trainMode, evalMode] = await Promise.all([
|
loadTmsDic(baseStore, TMS_DIC.archiveStatus),
|
loadTmsDic(baseStore, TMS_DIC.taskCategory),
|
loadTmsDic(baseStore, TMS_DIC.trainMode),
|
loadTmsDic(baseStore, TMS_DIC.evalMode),
|
]);
|
ARCHIVE_STATUS_OPTIONS.value = archive;
|
TASK_CATEGORY_OPTIONS.value = category;
|
TRAIN_MODE_OPTIONS.value = trainMode;
|
EVAL_MODE_OPTIONS.value = evalMode;
|
}
|
|
export const LIST_MODE_LABEL: Record<RecordListMode, string> = {
|
main: '培训记录',
|
ready: '可归档列表',
|
archived: '已归档列表',
|
};
|
|
export const RECORD_LIST_PATH: Record<RecordListMode, string> = {
|
main: '/tms/record',
|
ready: '/tms/record/ready',
|
archived: '/tms/record/archived',
|
};
|
|
export function labelOfArchiveStatus(status?: ArchiveStatus | string) {
|
return labelOfDic(ARCHIVE_STATUS_OPTIONS.value, status);
|
}
|
|
export function labelOfCategory(v?: string) {
|
return labelOfDic(TASK_CATEGORY_OPTIONS.value, v);
|
}
|
|
export function labelOfTrainMode(v?: string) {
|
return labelOfDic(TRAIN_MODE_OPTIONS.value, v);
|
}
|
|
export function labelOfEvalMode(v?: string) {
|
return labelOfDic(EVAL_MODE_OPTIONS.value, v);
|
}
|
|
export function colorOfArchiveStatus(status?: ArchiveStatus | string) {
|
if (status === 'ready') return '#1677ff';
|
if (status === 'archived') return '#52c41a';
|
if (status === 'invalid') return '#ff4d4f';
|
return undefined;
|
}
|