liuyu
22 小时以前 93c133349a5ccd7a328371fa113dce69d5611f21
apps/jnpf-web-apps-main/src/views/x/tms/record/constants.ts
@@ -1,11 +1,33 @@
import type { ArchiveStatus, RecordListMode } from './types';
export const ARCHIVE_STATUS_OPTIONS: { id: ArchiveStatus; fullName: string }[] = [
  { id: 'pending', fullName: '待归档' },
  { id: 'ready', fullName: '可归档' },
  { id: 'archived', fullName: '已归档' },
  { id: 'invalid', fullName: '无效' },
];
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: '培训记录',
@@ -13,18 +35,29 @@
  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) {
  return ARCHIVE_STATUS_OPTIONS.find((x) => x.id === status)?.fullName || status || '-';
export function labelOfArchiveStatus(status?: ArchiveStatus | string) {
  return labelOfDic(ARCHIVE_STATUS_OPTIONS.value, status);
}
export function colorOfArchiveStatus(status?: ArchiveStatus) {
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';