package com.ltkj.mall.domain; import java.math.BigDecimal; import java.util.List; import java.util.Date; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.ltkj.common.annotation.Excel; import com.ltkj.common.core.domain.BaseEntity; import com.ltkj.mall.mallOrderUtils.OrderHandleOption; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; /** * 订单对象 mall_order * * @author ltkj_赵佳豪&李格 * @date 2023-07-12 */ @Data public class MallOrder extends BaseEntity { private static final long serialVersionUID = 1L; /** * id */ @TableId(type = IdType.AUTO) @JsonSerialize(using = ToStringSerializer.class) private Long id; /** * 用户表的用户ID */ @Excel(name = "用户表的用户ID") @JsonSerialize(using = ToStringSerializer.class) private Long userId; /** * 订单编号 */ @Excel(name = "订单编号") private String orderSn; /** * 订单状态 */ @Excel(name = "订单状态") private Long orderStatus; /** * 售后状态,0是可申请,1是用户已申请,2是管理员审核通过,3是管理员退款成功,4是管理员审核拒绝,5是用户已取消 */ @Excel(name = "售后状态,0是可申请,1是用户已申请,2是管理员审核通过,3是管理员退款成功,4是管理员审核拒绝,5是用户已取消") private Integer aftersaleStatus; /** * 收货人名称 */ @Excel(name = "收货人名称") private String consignee; /** * 收货人手机号 */ @Excel(name = "收货人手机号") private String mobile; @Excel(name = "收货人身份证号") private String idCard; /** * 收货具体地址 */ @Excel(name = "收货具体地址") private String address; /** * 用户订单留言 */ @Excel(name = "用户订单留言") private String message; /** * 商品总费用 */ @Excel(name = "商品总费用") private BigDecimal goodsPrice; /** * 配送费用 */ @Excel(name = "配送费用") private BigDecimal freightPrice; /** * 优惠券减免 */ @Excel(name = "优惠券减免") private BigDecimal couponPrice; /** * 用户积分减免 */ @Excel(name = "用户积分减免") private BigDecimal integralPrice; /** * 团购优惠价减免 */ @Excel(name = "团购优惠价减免") private BigDecimal grouponPrice; /** * 订单费用, = goods_price + freight_price - coupon_price */ @Excel(name = "订单费用, = goods_price + freight_price - coupon_price") private BigDecimal orderPrice; /** * 实付费用, = order_price - integral_price */ @Excel(name = "实付费用, = order_price - integral_price") private BigDecimal actualPrice; /** * 微信付款编号 */ @Excel(name = "微信付款编号") private String payId; /** * 微信付款时间 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "微信付款时间", width = 30, dateFormat = "yyyy-MM-dd") private Date payTime; /** * 发货编号 */ @Excel(name = "发货编号") private String shipSn; /** * 发货快递公司 */ @Excel(name = "发货快递公司") private String shipChannel; /** * 发货开始时间 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "发货开始时间", width = 30, dateFormat = "yyyy-MM-dd") private Date shipTime; /** * 实际退款金额,(有可能退款金额小于实际支付金额) */ @Excel(name = "实际退款金额,", readConverterExp = "有=可能退款金额小于实际支付金额") private BigDecimal refundAmount; /** * 退款方式 */ @Excel(name = "退款方式") private Integer refundType; /** * 退款备注 */ @Excel(name = "退款备注") private String refundContent; /** * 退款时间 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "退款时间", width = 30, dateFormat = "yyyy-MM-dd") private Date refundTime; /** * 用户确认收货时间 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "用户确认收货时间", width = 30, dateFormat = "yyyy-MM-dd") private Date confirmTime; /** * 待评价订单商品数量 */ @Excel(name = "待评价订单商品数量") private Long comments; /** * 订单关闭时间 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "订单关闭时间", width = 30, dateFormat = "yyyy-MM-dd") private Date closeTime; /** * 代理结算金额 */ @Excel(name = "代理结算金额") private BigDecimal settlementMoney; /** * 结算状态 */ @Excel(name = "结算状态") private Integer settlementStatus; /** * 配送方式 :0 快递, 1 自提 */ @Excel(name = "配送方式 :0 快递, 1 自提") private Long freightType; /** * 推广用户 */ @Excel(name = "推广用户") private Long shareUserId; /** * 提货码 */ @Excel(name = "提货码") private String fetchCode; /** * 原始创建人 */ @Excel(name = "原始创建人") private Long createUserId; /** * 转赠发送时间 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "转赠发送时间", width = 30, dateFormat = "yyyy-MM-dd") private Date giftSendTime; /** * 转赠接收时间 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "转赠接收时间", width = 30, dateFormat = "yyyy-MM-dd") private Date giftReceiveTime; /** * $column.columnComment */ private Long deptId; /** * 是否赊账 */ private String isSz; private String reservationId; /** * 订单商品信息 */ @TableField(exist = false) private List mallOrderGoodsList; @TableField(exist = false) private List goodsVoList; /**用户昵称*/ @TableField(exist = false) private String memberNickname; /**用户头像*/ @TableField(exist = false) private String memberPic; /**状态可操作选项*/ @TableField(exist = false) private OrderHandleOption orderHandleOption; @ApiModelProperty("预约时间") @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd") @TableField(exist = false) private Date reservationTime; @ApiModelProperty(value = "套餐名称") @TableField(exist = false) private String pacName; @ApiModelProperty(value = "套餐id") @TableField(exist = false) private String pacId; @TableField(exist = false) private String startTime; @TableField(exist = false) private String endTime; @Override public String toString() { return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) .append("id", getId()) .append("userId", getUserId()) .append("orderSn", getOrderSn()) .append("orderStatus", getOrderStatus()) .append("aftersaleStatus", getAftersaleStatus()) .append("consignee", getConsignee()) .append("mobile", getMobile()) .append("address", getAddress()) .append("message", getMessage()) .append("goodsPrice", getGoodsPrice()) .append("freightPrice", getFreightPrice()) .append("couponPrice", getCouponPrice()) .append("integralPrice", getIntegralPrice()) .append("grouponPrice", getGrouponPrice()) .append("orderPrice", getOrderPrice()) .append("actualPrice", getActualPrice()) .append("payId", getPayId()) .append("payTime", getPayTime()) .append("shipSn", getShipSn()) .append("shipChannel", getShipChannel()) .append("shipTime", getShipTime()) .append("refundAmount", getRefundAmount()) .append("refundType", getRefundType()) .append("refundContent", getRefundContent()) .append("refundTime", getRefundTime()) .append("confirmTime", getConfirmTime()) .append("comments", getComments()) .append("closeTime", getCloseTime()) .append("settlementMoney", getSettlementMoney()) .append("settlementStatus", getSettlementStatus()) .append("freightType", getFreightType()) .append("shareUserId", getShareUserId()) .append("fetchCode", getFetchCode()) .append("createUserId", getCreateUserId()) .append("giftSendTime", getGiftSendTime()) .append("giftReceiveTime", getGiftReceiveTime()) .append("deptId", getDeptId()) .append("isSz", getIsSz()) .append("createTime", getCreateTime()) .append("createBy", getCreateBy()) .append("updateTime", getUpdateTime()) .append("updateBy", getUpdateBy()) .append("deleted", getDeleted()) .append("mallOrderGoodsList", getMallOrderGoodsList()) .toString(); } }