index.ts 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. import request from "@/utils/request";
  2. export interface ApiKeyPageQuery {
  3. page_no: number;
  4. page_size: number;
  5. api_key: string;
  6. status: string;
  7. expired_at?: string;
  8. last_used_at?: string;
  9. created_time: string
  10. description?: string;
  11. }
  12. export interface ApiKeyCreateForm {
  13. tenant_id?: number;
  14. expired_days: number;
  15. description?: string;
  16. }
  17. export interface ApiKeyUpdateForm {
  18. status: string;
  19. }
  20. export interface ApiKeyQueryParam {
  21. tenant_id?: number;
  22. status?: string;
  23. }
  24. export interface ApiKeyResponse {
  25. id: number;
  26. api_key: string;
  27. api_secret?: string;
  28. status: string;
  29. expired_at: string;
  30. created_time: string;
  31. last_used_at?: string;
  32. description?: string;
  33. }
  34. export interface ApiKeyTable {
  35. id: number;
  36. api_key: string;
  37. status: string;
  38. expired_at: string;
  39. last_used_at?: string;
  40. created_time: string;
  41. description?: string;
  42. }
  43. export interface ApiKeyListResponse {
  44. items: ApiKeyTable[];
  45. total: number;
  46. page: number;
  47. page_size: number;
  48. }
  49. const ApiKeyAPI = {
  50. createApiKey: (data: ApiKeyCreateForm) => {
  51. return request({
  52. url: "/payment/api-key",
  53. method: "POST",
  54. data,
  55. });
  56. },
  57. listApiKey: (params: { page_no: number; page_size: number; tenant_id?: number; status?: string }) => {
  58. return request({
  59. url: "/payment/api-key/list",
  60. method: "GET",
  61. params,
  62. });
  63. },
  64. updateApiKeyStatus: (id: number, data: ApiKeyUpdateForm) => {
  65. return request({
  66. url: `/payment/api-key/${id}`,
  67. method: "PUT",
  68. data,
  69. });
  70. },
  71. deleteApiKey: (id: number) => {
  72. return request({
  73. url: `/payment/api-key/${id}`,
  74. method: "DELETE",
  75. });
  76. },
  77. };
  78. export default ApiKeyAPI;