index.ts 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. export interface Store {
  2. globalMask: boolean;
  3. downloadFailStatus: boolean;
  4. env: {
  5. server: Server;
  6. loginName: string;
  7. password: string;
  8. user: {
  9. campusId: number;
  10. schoolId: number;
  11. userId: number;
  12. userName: string;
  13. userRole: string;
  14. doubleTrack?: boolean;
  15. };
  16. exam: {
  17. id: number;
  18. name: string;
  19. examTime: string;
  20. };
  21. examId: number;
  22. };
  23. config: {
  24. db: DB;
  25. imageUrl: ImageURL;
  26. watermark: Watermark;
  27. logger: Logger;
  28. openDevTools: boolean;
  29. servers: Server[];
  30. imagemagickDev?: string;
  31. };
  32. syncTime: Array<{ id: string; time: string }>;
  33. pageInputs: {
  34. "/image-download": {
  35. type: string;
  36. template: string;
  37. dir: string;
  38. pdf: string;
  39. append: boolean;
  40. failover: boolean;
  41. watermark: boolean;
  42. showSubScore: boolean;
  43. trackMode: string;
  44. examNumber?: string;
  45. subjectCode?: string;
  46. x?: number;
  47. y?: number;
  48. };
  49. };
  50. }
  51. export interface DB {
  52. host: string;
  53. post: number;
  54. user: string;
  55. password: string;
  56. database: string;
  57. }
  58. export interface ImageURL {
  59. sheet: string;
  60. package: string;
  61. }
  62. export interface Logger {
  63. level: string;
  64. }
  65. export interface Server {
  66. name: string;
  67. host: string;
  68. }
  69. export interface Watermark {
  70. fontFile: string;
  71. fontSize: number;
  72. color: string;
  73. nextColor: string;
  74. otherColor: string;
  75. }
  76. export interface Student {
  77. id: number;
  78. schoolId: number;
  79. examNumber: string;
  80. campusCode: string;
  81. campusName: string;
  82. subjectCode: string;
  83. subjectName: string;
  84. name: string;
  85. studentCode: string;
  86. packageCode: string;
  87. batchCode: string;
  88. sheetCount: number;
  89. sliceCount: number;
  90. answers: string;
  91. upload: boolean;
  92. absent: boolean;
  93. manualAbsent: boolean;
  94. breach: boolean;
  95. objectiveScore: string;
  96. subjectiveScore: string;
  97. examRoom: string;
  98. remark: string;
  99. college: string;
  100. className: string;
  101. teacher: string;
  102. inspector?: Inspector;
  103. objectiveScoreDetail: SubjectiveScoreDetail[];
  104. subjectiveScoreDetail: SubjectiveScoreDetail[];
  105. sheetUrls: string[];
  106. }
  107. export interface Inspector {
  108. loginName: string;
  109. name: string;
  110. }
  111. export interface SubjectiveScoreDetail {
  112. mainNumber: number;
  113. subNumber: string;
  114. score: number;
  115. marker: string;
  116. groupNumber: number;
  117. mainTitle: string;
  118. }