package com.doumee.dao.vo; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; import java.util.List; /** * 会员端-订单详情 * * @author rk * @date 2026/04/15 */ @Data @ApiModel("会员端订单详情") public class MyOrderDetailVO { @ApiModelProperty(value = "订单主键") private Integer id; // ---- 状态 ---- @ApiModelProperty(value = "订单状态") private Integer status; @ApiModelProperty(value = "订单状态描述") private String statusDesc; @ApiModelProperty(value = "支付倒计时毫秒(仅待支付状态返回,-1表示已超时)") private Long payCountdownMs; @ApiModelProperty(value = "会员核销码(待寄存/待取件状态返回)") private String memberVerifyCode; // ---- 基础信息 ---- @ApiModelProperty(value = "订单类型: 0=就地寄存 1=异地寄存") private Integer type; @ApiModelProperty(value = "订单编号") private String code; @ApiModelProperty(value = "三方订单号") private String outTradeNo; @ApiModelProperty(value = "订单备注") private String remark; @ApiModelProperty(value = "创建时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date createTime; @ApiModelProperty(value = "支付时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date payTime; // ---- 时间信息 ---- @ApiModelProperty(value = "预计到店存件时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date expectedDepositTime; @ApiModelProperty(value = "预计取件时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date expectedTakeTime; @ApiModelProperty(value = "行李转移到店时间(异地寄存)") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date arriveTime; // ---- 存件门店 ---- @ApiModelProperty(value = "存件门店名称") private String depositShopName; @ApiModelProperty(value = "存件门店地址") private String depositShopAddress; @ApiModelProperty(value = "存件门店联系人") private String depositShopLinkName; @ApiModelProperty(value = "存件门店联系电话") private String depositShopPhone; // ---- 取件信息 ---- @ApiModelProperty(value = "取件门店名称(有取件门店时返回)") private String takeShopName; @ApiModelProperty(value = "取件门店地址(有取件门店时返回)") private String takeShopAddress; @ApiModelProperty(value = "取件地点(无取件门店时返回,用户自选)") private String takeLocation; @ApiModelProperty(value = "取件地点详细地址(无取件门店时返回)") private String takeLocationRemark; @ApiModelProperty(value = "取件人名称") private String takeUser; @ApiModelProperty(value = "取件人手机号") private String takePhone; // ---- 费用(分) ---- @ApiModelProperty(value = "基础寄存费用(分)") private Long basicAmount; @ApiModelProperty(value = "保价金额(分)") private Long declaredAmount; @ApiModelProperty(value = "保价保费(分)") private Long declaredFee; @ApiModelProperty(value = "加急费用(分)") private Long urgentAmount; @ApiModelProperty(value = "实际支付费用(分)") private Long actualPayAmount; // ---- 逾期 ---- @ApiModelProperty(value = "是否逾期") private Boolean overdue; @ApiModelProperty(value = "逾期天数") private Integer overdueDays; @ApiModelProperty(value = "逾期费用(分)") private Long overdueFee; // ---- 标记 ---- @ApiModelProperty(value = "是否异常: 0=否 1=是") private Integer exceptionStatus; @ApiModelProperty(value = "是否超出取件时间") private Boolean pastTakeTime; // ---- 物品信息 ---- @ApiModelProperty(value = "物品类型名称") private String goodTypeName; @ApiModelProperty(value = "下单照片") private List orderImages; @ApiModelProperty(value = "物品明细列表") private List detailList; }