dataReport.ts 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. import axios from 'axios';
  2. import type { ListRes, FormRes } from './base';
  3. export interface PushDataReportRecord {
  4. id: number;
  5. report_date: Date;
  6. is_settlement: boolean;
  7. type: number;
  8. sub_type: number;
  9. platform: number;
  10. adId: string;
  11. adzoneId: string;
  12. platform_name: string;
  13. distribution: number;
  14. req_count: number;
  15. dp_transition_succ_count: number;
  16. transition_succ_count: number;
  17. expose_count: number;
  18. expose_user_count: number;
  19. click_count: number;
  20. click_user_count: number;
  21. app_open_count: number;
  22. app_open_user_count: number;
  23. order_count: number;
  24. order_user_count: number;
  25. gmv: number;
  26. income: number;
  27. request_id: string;
  28. create_time: Date;
  29. update_time: Date;
  30. status: number; // 0未推送,1推送成功,2推送失败,3手动推送
  31. last_push_time?: Date;
  32. }
  33. // 添加状态常量定义
  34. export const PUSH_STATUS = {
  35. NOT_PUSHED: 0, // 未推送
  36. SUCCESS: 1, // 推送成功
  37. FAILED: 2, // 推送失败
  38. MANUAL: 3 // 手动推送
  39. };
  40. export interface PushDataReportParams {
  41. current: number;
  42. pageSize: number;
  43. type?: number;
  44. platform?: number;
  45. status?: number;
  46. is_settlement?: number;
  47. report_date?: string;
  48. sort?: string;
  49. order?: string;
  50. getTotal: boolean;
  51. }
  52. export interface PushDataReportRes extends ListRes {
  53. list: PushDataReportRecord[];
  54. }
  55. export function queryReportList(data: PushDataReportParams) {
  56. return axios.post<PushDataReportRes>('/api/dataReport/list', data);
  57. }
  58. export function saveReport(data: Partial<PushDataReportRecord>) {
  59. return axios.post<FormRes>('/api/dataReport/save', data);
  60. }
  61. export function pushReport(id: number) {
  62. return axios.post<FormRes>('/api/dataReport/push', { id });
  63. }
  64. export function deleteReport(id: number) {
  65. return axios.post<FormRes>('/api/dataReport/delete', { id });
  66. }