package request import common "sundynix-go/model/commom/request" // ExchangeItemCreateReq 创建兑换商品请求 type ExchangeItemCreateReq struct { Name string `json:"name" binding:"required"` Description string `json:"description"` ImageId string `json:"imageId"` Type string `json:"type" binding:"required"` // PHYSICAL / VIRTUAL / COUPON CostSunlight int64 `json:"costSunlight" binding:"required,min=1"` Stock int `json:"stock"` // -1 无限 LimitPerUser int `json:"limitPerUser"` // 0 不限 Sort int `json:"sort"` StartTime string `json:"startTime"` // 可选 EndTime string `json:"endTime"` // 可选 } // ExchangeItemUpdateReq 更新兑换商品请求 type ExchangeItemUpdateReq struct { Id string `json:"id" binding:"required"` Name string `json:"name"` Description string `json:"description"` ImageId string `json:"imageId"` Type string `json:"type"` CostSunlight int64 `json:"costSunlight"` Stock int `json:"stock"` LimitPerUser int `json:"limitPerUser"` Status int `json:"status"` // 1上架 2下架 Sort int `json:"sort"` StartTime string `json:"startTime"` EndTime string `json:"endTime"` } // ExchangeItemListReq 商品列表查询请求 type ExchangeItemListReq struct { common.PageInfo Type string `json:"type" form:"type"` // 按类型筛选 Status int `json:"status" form:"status"` // 按状态筛选 } // ExchangeReq 用户兑换请求 type ExchangeReq struct { ItemId string `json:"itemId" binding:"required"` Quantity int `json:"quantity"` // 默认1 RecipientName string `json:"recipientName"` Phone string `json:"phone"` Address string `json:"address"` } // ExchangeOrderListReq 订单列表查询请求 type ExchangeOrderListReq struct { common.PageInfo Status int `json:"status" form:"status"` // 按状态筛选 UserId string `json:"userId" form:"userId"` // 管理端按用户筛选 } // ExchangeOrderUpdateReq 更新订单状态请求 (管理端) type ExchangeOrderUpdateReq struct { Id string `json:"id" binding:"required"` Status int `json:"status" binding:"required"` // 目标状态 TrackingNo string `json:"trackingNo"` // 快递单号(发货时) Remark string `json:"remark"` }