submission_records.ts 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import axios from 'axios';
  2. import type {
  3. SubmissionRecord,
  4. SubmissionRecordListResponse
  5. } from '../../share/types.ts';
  6. export const SubmissionRecordsAPI = {
  7. /**
  8. * 获取提交记录列表
  9. */
  10. getSubmissionRecords(params: {
  11. page?: number;
  12. pageSize?: number;
  13. user_id?: string;
  14. nickname?: string;
  15. code?: string;
  16. training_date?: string;
  17. }): Promise<SubmissionRecordListResponse> {
  18. return axios({
  19. url: '/admin/submission-records',
  20. method: 'GET',
  21. params
  22. });
  23. },
  24. /**
  25. * 获取单个提交记录
  26. */
  27. getSubmissionRecord(id: number): Promise<{ data: SubmissionRecord }> {
  28. return axios({
  29. url: `/admin/submission-records/${id}`,
  30. method: 'GET'
  31. });
  32. },
  33. /**
  34. * 创建提交记录
  35. */
  36. createSubmissionRecord(data: Omit<SubmissionRecord, 'id'>): Promise<{ data: SubmissionRecord }> {
  37. return axios({
  38. url: '/admin/submission-records',
  39. method: 'POST',
  40. data
  41. });
  42. },
  43. /**
  44. * 更新提交记录
  45. */
  46. updateSubmissionRecord(id: number, data: Partial<SubmissionRecord>): Promise<{ data: SubmissionRecord }> {
  47. return axios({
  48. url: `/admin/submission-records/${id}`,
  49. method: 'PUT',
  50. data
  51. });
  52. },
  53. /**
  54. * 删除提交记录
  55. */
  56. deleteSubmissionRecord(id: number): Promise<void> {
  57. return axios({
  58. url: `/admin/submission-records/${id}`,
  59. method: 'DELETE'
  60. });
  61. }
  62. };