import request from '@/config/axios'
import type { Dayjs } from 'dayjs';

/** 皮肤购买记录表（积分支付）信息 */
export interface ThemePurchase {
          id: number; // 主键 ID
          orderNo?: string; // 业务订单号
          userId?: number; // 购买用户ID
          themeId?: number; // 主题皮肤ID
          costPoints?: number; // 皮肤原始所需积分
          paidPoints?: number; // 实际扣除积分
          payStatus?: number; // 支付状态：0待支付 1已支付 2已关闭 3已退款
          walletTxId: number; // 关联的积分扣费流水ID
          refundPoints?: number; // 已退款的积分数量
          refundedAt: string | Dayjs; // 积分退款完成时间
          createdAt?: string | Dayjs; // 创建时间
          paidAt: string | Dayjs; // 支付完成时间
          updatedAt?: string | Dayjs; // 更新时间
          remark: string; // 备注或扩展信息
  }

// 皮肤购买记录表（积分支付） API
export const ThemePurchaseApi = {
  // 查询皮肤购买记录表（积分支付）分页
  getThemePurchasePage: async (params: any) => {
    return await request.get({ url: `/keyboard/theme-purchase/page`, params })
  },

  // 查询皮肤购买记录表（积分支付）详情
  getThemePurchase: async (id: number) => {
    return await request.get({ url: `/keyboard/theme-purchase/get?id=` + id })
  },

  // 新增皮肤购买记录表（积分支付）
  createThemePurchase: async (data: ThemePurchase) => {
    return await request.post({ url: `/keyboard/theme-purchase/create`, data })
  },

  // 修改皮肤购买记录表（积分支付）
  updateThemePurchase: async (data: ThemePurchase) => {
    return await request.put({ url: `/keyboard/theme-purchase/update`, data })
  },

  // 删除皮肤购买记录表（积分支付）
  deleteThemePurchase: async (id: number) => {
    return await request.delete({ url: `/keyboard/theme-purchase/delete?id=` + id })
  },

  /** 批量删除皮肤购买记录表（积分支付） */
  deleteThemePurchaseList: async (ids: number[]) => {
    return await request.delete({ url: `/keyboard/theme-purchase/delete-list?ids=${ids.join(',')}` })
  },

  // 导出皮肤购买记录表（积分支付） Excel
  exportThemePurchase: async (params) => {
    return await request.download({ url: `/keyboard/theme-purchase/export-excel`, params })
  }
}