collections.ts 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import {
  2. requestByGet,
  3. requestByPost,
  4. type PaginationParams,
  5. } from "@dage/service";
  6. import type { FileItem } from ".";
  7. export interface CollectionThumbListItem {
  8. id: number;
  9. type: string;
  10. thumb: string;
  11. }
  12. export interface CollectionListParams extends PaginationParams {
  13. type?: string;
  14. }
  15. export interface CollectionListItem {
  16. id: number;
  17. name: string;
  18. thumb: string;
  19. /** 年代 */
  20. dictAge: string;
  21. /** 摘要 */
  22. digest: string;
  23. }
  24. export interface CollectionDetail extends CollectionListItem {
  25. rtf: string;
  26. size: string;
  27. author: string;
  28. files: FileItem[];
  29. }
  30. export const getCollectionThumbListApi = () => {
  31. return requestByGet<CollectionThumbListItem[]>("/api/show/collection/thumb");
  32. };
  33. export const getCollectionListApi = (params: CollectionListParams) => {
  34. return requestByPost("/api/show/collection/pageList", params);
  35. };
  36. export const getCollectionDetailApi = (id: number) => {
  37. return requestByGet<CollectionDetail>(`/api/show/collection/detail/${id}`);
  38. };