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

/**
 * 送水订单
 */
export interface GltTicketOrder {
  //
  id?: number;
  // 用户水票ID
  userTicketId?: number;
  // 订单编号
  orderNo?: string;
  // 门店ID
  storeId?: number;
  // 门店名称
  storeName?: string;
  // 门店地址
  storeAddress?: string;
  // 门店电话
  storePhone?: string;
  // 配送员
  riderId?: number;
  // 配送员名称
  riderName?: string;
  // 配送员电话
  riderPhone?: string;
  // 仓库ID
  warehouseId?: number;
  // 仓库名称
  warehouseName?: string;
  // 仓库地址
  warehouseAddress?: string;
  // 关联收货地址
  addressId?: number;
  // 收货地址
  address?: string;
  // 配送时间
  sendTime?: string;
  // 配送开始时间（配送员点击“开始配送”）
  sendStartTime?: string;
  // 配送结束时间（配送员确认送达）
  sendEndTime?: string;
  // 配送员送达拍照（选填/必填由后端策略决定）
  sendEndImg?: string;
  // 发货/配送状态（建议：10待配送 20配送中 30待客户确认 40已完成）
  deliveryStatus?: number;
  // 客户确认收货时间（客户点击确认收货）
  receiveConfirmTime?: string;
  // 客户确认方式（建议：10客户手动确认 20配送照片自动确认 30后台超时自动确认）
  receiveConfirmType?: number;
  // 买家留言
  buyerRemarks?: string;
  // 用于统计
  price?: string;
  // 购买数量
  totalNum?: number;
  // 用户ID
  userId?: number;
  // 昵称
  nickname?: string;
  // 头像
  avatar?: string;
  // 手机号码
  phone?: string;
  // 排序(数字越小越靠前)
  sortNumber?: number;
  // 备注
  comments?: string;
  // 状态, 0正常, 1冻结
  status?: number;
  // 是否删除, 0否, 1是
  deleted?: number;
  // 租户id
  tenantId?: number;
  // 创建时间
  createTime?: string;
  // 修改时间
  updateTime?: string;
  // 配送方式：elevator(电梯) / stairs(步梯) / groundFloor(一楼商铺/其他)
  deliveryMethod?: string;
  // 楼层（步梯+送上楼时有值，从2开始）
  deliveryFloor?: number;
  // 配送费（步梯+送上楼时计算：数量 × (楼层-1)）
  deliveryFee?: number;
}

/**
 * 送水订单搜索条件
 */
export interface GltTicketOrderParam extends PageParam {
  id?: number;
  keywords?: string;
  userId?: number;
  // 配送员用户ID（用于配送员端查询）
  riderId?: number;
  // 发货/配送状态（建议与 GltTicketOrder.deliveryStatus 对齐）
  deliveryStatus?: number;
  // 兼容 ShopOrderParam 的筛选字段（如后端已实现可直接复用）
  statusFilter?: number;
}
