api.ts 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304
  1. import { request } from '@/service/request';
  2. // 参数接口
  3. export interface ScheduleParams {
  4. id?: number;
  5. week: number;
  6. startTime: string | number;
  7. endTime: string | number;
  8. roomId: number | null;
  9. classId: number | null;
  10. assistantId: number | null;
  11. teacherId: number | null;
  12. categoryId: number | null;
  13. lessonTime?: number;
  14. subjectsId: number | null;
  15. createTime: number;
  16. modifyTime: number;
  17. createUid: number;
  18. disabled: string;
  19. }
  20. // 响应接口
  21. export interface scheduleRes {
  22. status: boolean;
  23. msg: string;
  24. data: Record<string, unknown>;
  25. code: number;
  26. }
  27. /**
  28. * 添加课程表
  29. * @param {string} repeatTime
  30. * @param {object} params EasEduSchedule
  31. * @param {number} params.id
  32. * @param {number} params.week 当周周几
  33. * @param {object} params.startTime 起始时间
  34. * @param {object} params.endTime 结束时间
  35. * @param {number} params.roomId 教室ID
  36. * @param {number} params.classId 班级ID
  37. * @param {number} params.assistantId 助教ID
  38. * @param {number} params.teacherId 教师ID
  39. * @param {number} params.categoryId 授课类别
  40. * @param {number} params.subjectsId 授课内容
  41. * @param {object} params.createTime 创建时间
  42. * @param {object} params.modifyTime 修改时间
  43. * @param {number} params.createUid 创建用户ID
  44. * @param {string} params.disabled 状态
  45. * @returns
  46. */
  47. export function addSchedule(repeatTime: number, params: ScheduleParams): Promise<Service.RequestResult<scheduleRes>> {
  48. return request.post(`/schedule/add?repeatTime=${repeatTime}`, params);
  49. }
  50. // 参数接口
  51. export interface QueryConflictParams {
  52. startTime?: Record<string, unknown>;
  53. endTime?: Record<string, unknown>;
  54. roomId?: number;
  55. teacherId?: number;
  56. }
  57. /**
  58. * 查询排课是否冲突
  59. * @param {object} params ConflictDto
  60. * @param {object} params.startTime 课程开始时间
  61. * @param {object} params.endTime 课程结束时间
  62. * @param {number} params.roomId 教室ID
  63. * @param {number} params.teacherId 教师ID
  64. * @returns
  65. */
  66. export function queryConflict(params: QueryConflictParams): Promise<Service.RequestResult<scheduleRes>> {
  67. return request.put(`/schedule/queryConflict`, params);
  68. }
  69. export interface UserParams {
  70. id?: number;
  71. username?: string;
  72. passwd?: string;
  73. email?: string;
  74. relname?: string;
  75. phone?: string;
  76. address?: string;
  77. createTime?: Record<string, unknown>;
  78. modifyTime?: Record<string, unknown>;
  79. createUid?: number;
  80. disabled?: string;
  81. }
  82. /**
  83. * 查询用户信息根据用户名
  84. * @param {string} realname
  85. * @returns
  86. */
  87. export function queryByRealname(realname: string): Promise<Service.RequestResult<UserParams[]>> {
  88. return request.get(`/userinfo/queryUserByRealname/${realname}`);
  89. }
  90. export interface CategoryParams {
  91. id?: number;
  92. name?: string;
  93. description?: string;
  94. createTime?: Record<string, unknown>;
  95. modifyTime?: Record<string, unknown>;
  96. createUid?: number;
  97. disabled?: string;
  98. }
  99. /**
  100. * 根据条件进行查询课程类别
  101. * @param {string} pageNum
  102. * @param {string} pageSize
  103. * @param {object} params EasEduCategory
  104. * @param {number} params.id
  105. * @param {string} params.name 学科名称
  106. * @param {string} params.description 学科描述
  107. * @param {object} params.createTime 创建时间
  108. * @param {object} params.modifyTime 修改时间
  109. * @param {number} params.createUid 创建用户ID
  110. * @param {string} params.disabled 状态
  111. * @returns
  112. */
  113. export function queryCategoryParams(
  114. pageNum: number,
  115. pageSize: number,
  116. params: CategoryParams
  117. ): Promise<Service.RequestResult<CategoryParams[]>> {
  118. return request.post(`/category/query?pageNum=${pageNum}&pageSize=${pageSize}`, params);
  119. }
  120. // 参数接口
  121. export interface SubjectParams {
  122. id?: number;
  123. name?: string;
  124. description?: string;
  125. categoryId?: number;
  126. createTime?: Record<string, unknown>;
  127. modifyTime?: Record<string, unknown>;
  128. createUid?: number;
  129. disabled?: string;
  130. }
  131. /**
  132. * 根据条件进行查询课程
  133. * @param {string} pageNum
  134. * @param {string} pageSize
  135. * @param {object} params EasEduSubjects
  136. * @param {number} params.id
  137. * @param {string} params.name 学科名称
  138. * @param {string} params.description 学科描述
  139. * @param {number} params.categoryId 学科分类
  140. * @param {object} params.createTime 创建时间
  141. * @param {object} params.modifyTime 修改时间
  142. * @param {number} params.createUid 创建用户ID
  143. * @param {string} params.disabled 状态
  144. * @returns
  145. */
  146. export function querySubject(
  147. pageNum: number,
  148. pageSize: number,
  149. params: SubjectParams
  150. ): Promise<Service.RequestResult<SubjectParams[]>> {
  151. return request.post(`/subject/query?pageNum=${pageNum}&pageSize=${pageSize}`, params);
  152. }
  153. export interface ClassParams {
  154. id?: number;
  155. name?: string;
  156. manageId?: number;
  157. assistantId?: number;
  158. createTime?: Record<string, unknown>;
  159. modifyTime?: Record<string, unknown>;
  160. createUid?: number;
  161. disabled?: string;
  162. }
  163. /**
  164. * 查询所有的班级类
  165. * @returns
  166. */
  167. export function queryClassAll(): Promise<Service.RequestResult<ClassParams[]>> {
  168. return request.get(`/class/selectTotal`);
  169. }
  170. export interface ClassRoomParams {
  171. id?: number;
  172. name?: string;
  173. managerId?: number;
  174. address?: string;
  175. manager?: string;
  176. floor?: number;
  177. capacity?: number;
  178. comment?: string;
  179. disabled?: string;
  180. createTime?: Record<string, unknown>;
  181. modifyTime?: Record<string, unknown>;
  182. createUid?: number;
  183. }
  184. export function queryClassRoomList(
  185. pageNum: number,
  186. pageSize: number,
  187. params: ClassRoomParams
  188. ): Promise<Service.RequestResult<ClassRoomParams[]>> {
  189. return request.post(`/classroom/query?pageNum=${pageNum}&pageSize=${pageSize}`, params);
  190. }
  191. export interface ScheduleParamsList {
  192. id?: number;
  193. week?: number;
  194. startTime?: string;
  195. endTime?: string;
  196. roomId?: number | null;
  197. classId?: number | null;
  198. assistantId?: number | null;
  199. teacherId?: number | null;
  200. categoryId?: number | null;
  201. lessonTime?: number;
  202. subjectsId?: number | null;
  203. createTime?: number;
  204. modifyTime?: number;
  205. createUid?: number;
  206. disabled?: string;
  207. colspan?: number;
  208. empty?: boolean;
  209. break?: boolean;
  210. }
  211. export function queryScheduleList(
  212. pageNum: number,
  213. pageSize: number,
  214. params: ScheduleParamsList
  215. ): Promise<Service.RequestResult<ScheduleParamsList[]>> {
  216. return request.post(`/schedule/query?pageNum=${pageNum}&pageSize=${pageSize}`, params);
  217. }
  218. export function queryUserAll(): Promise<Service.RequestResult<UserParams[]>> {
  219. return request.get(`/userinfo/queryAll`);
  220. }
  221. export interface QueryScheduleParams {
  222. studentId?: number | null;
  223. classId?: number | null;
  224. subjectId?: number | null;
  225. teacherId?: number | null;
  226. startTime?: string | null;
  227. endTime?: string | null;
  228. week?: number | null;
  229. roomId?: number | null;
  230. assistantId?: number | null;
  231. categoryId?: number | null;
  232. }
  233. interface ScheduleResponse {
  234. id?: number;
  235. week?: number;
  236. startTime?: string;
  237. endTime?: string;
  238. roomId?: number;
  239. classroom?: string;
  240. classId?: number;
  241. assistantId?: number;
  242. assistantName?: string;
  243. teacherId?: number;
  244. teacherName?: string;
  245. categoryId?: number;
  246. category?: string;
  247. subjectsId?: number;
  248. subjects?: string;
  249. createTime?: string;
  250. modifyTime?: string;
  251. createUid?: number;
  252. disabled?: string;
  253. }
  254. export function querySchedule(params: QueryScheduleParams): Promise<Service.RequestResult<ScheduleResponse[]>> {
  255. return request.post(`/schedule/querySchedule`, params);
  256. }
  257. export interface EasSysStudentOptional {
  258. id?: number;
  259. studentNumber?: string;
  260. studentName?: string;
  261. gender?: string;
  262. phone?: string;
  263. email?: string;
  264. enrollmentDate?: Date;
  265. passwd?: string;
  266. avatar?: string;
  267. createTime?: Date;
  268. modifyTime?: Date;
  269. admissionsId?: number;
  270. managerId?: number;
  271. createUid?: number;
  272. disabled?: string;
  273. }
  274. /**
  275. * 查询所有学员信息
  276. * @param {string} keyword
  277. * @returns
  278. */
  279. export function getStudentByKeyword(keyword: string): Promise<Service.RequestResult<EasSysStudentOptional[]>> {
  280. return request.get(`/student/getStudentByKeyword?keyword=${keyword}`);
  281. }