import type { PageParam } from '@/api';

/**
 * 购物车项
 */
export interface ShopCart {
  // 主键ID
  id?: number;
  // 用户ID
  userId?: number;
  // 商品ID
  goodsId?: number;
  // SKU ID
  skuId?: number;
  // 数量
  num?: number;
  // 商品名称
  goodsName?: string;
  // 商品图片
  goodsImage?: string;
  // SKU价格
  skuPrice?: string;
  // SKU规格
  skuSpec?: string;
  // 库存
  stock?: number;
  // 租户id
  tenantId?: number;
  // 创建时间
  createTime?: string;
  // 更新时间
  updateTime?: string;
}

/**
 * 购物车项扩展（包含选中状态，用于前端展示）
 */
export interface ShopCartItem extends ShopCart {
  // 是否选中
  checked?: boolean;
  // 商品详情
  product?: any;
  // SKU详情
  sku?: any;
}

/**
 * 添加到购物车参数
 */
export interface AddToCartParam {
  // 商品ID
  goodsId: number;
  // SKU ID（单规格可不传）
  skuId?: number;
  // 数量
  num: number;
}

/**
 * 更新购物车数量参数
 */
export interface UpdateCartNumParam {
  // 购物车ID
  id: number;
  // 数量
  num: number;
}

/**
 * 购物车搜索条件
 */
export interface ShopCartParam extends PageParam {
  userId?: number;
}
