menu.ts 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. export interface Menu {
  2. index: number;
  3. title: string;
  4. component: Component;
  5. }
  6. export type MenuPath =
  7. | '/step/deploy'
  8. | '/step/deploy-recheck'
  9. | '/step/soak'
  10. | '/step/decoction'
  11. | '/step/pack'
  12. | '/step/pack-recheck'
  13. ;
  14. export const menus: Record<MenuPath, Menu> = {
  15. '/step/deploy': {
  16. index: 21,
  17. title: '调配管理',
  18. component: defineAsyncComponent(() => import(`@/module/step/StepDeploy.vue`)),
  19. },
  20. '/step/deploy-recheck': {
  21. index: 22,
  22. title: '调配复核管理',
  23. component: defineAsyncComponent(() => import(`@/module/step/StepDeployRecheck.vue`)),
  24. },
  25. '/step/soak': {
  26. index: 31,
  27. title: '浸泡管理',
  28. component: defineAsyncComponent(() => import(`@/module/step/StepSoak.vue`)),
  29. },
  30. '/step/decoction': {
  31. index: 41,
  32. title: '煎煮管理',
  33. component: defineAsyncComponent(() => import(`@/module/step/StepDecoction.vue`)),
  34. },
  35. '/step/pack': {
  36. index: 51,
  37. title: '打包管理',
  38. component: defineAsyncComponent(() => import(`@/module/step/StepPack.vue`)),
  39. },
  40. '/step/pack-recheck': {
  41. index: 52,
  42. title: '打包复核管理',
  43. component: defineAsyncComponent(() => import(`@/module/step/StepPackRecheck.vue`)),
  44. },
  45. } as const;
  46. export const defaultMenus = Object.entries(menus)
  47. .sort(([_1, { index: a }], [_2, { index: b }]) => a - b)
  48. .map(([path, { title: name }]) => {
  49. return { name, path };
  50. });