package cn.iocoder.yudao.module.payment.entity;

import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * (OrderInfo)表实体类
 *
 * @author makejava
 * @since 2023-07-24 18:30:28
 */
@Data
public class OrderInfo  extends TenantBaseDO {
    //订单id
    private Long id;
    private String transactionId;
    //订单号
    private String orderNo;
    //商品id
    private Long goodsId;
    //商品名称
    private String goodsTitle;
    private String goodsType;
    private Long skuId;
    private String skuName;
    //用户id
    private Long userId;
    //用户姓名
    private String realName;
    //用户手机号
    private String phonenumber;
    //商品原价 分
    private Long goodsPrice;
    //实付金额 分
    private Long payMoney;
    //会员折扣的金额
    private Long reduceMoney = 0L;
    private Long balance = 0L;
    //下单时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date orderTime;
    //支付时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date payTime;
    private String payType;
    //为了处理组合支付的情况进行备注
    private String payRemark;
    //线上或者线下 1线上 0线下
    private String isOnline;
    //收款账户
    private String receivablesAccount;
    //订单状态
    private String orderStatus;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date commentTime;
    //评价详情
    private String commentDesc;
    //星级
    private Integer commentStar;
    //订单类型
    private String orderType;


    //创建人所在部门
    private Long deptId;

    //积分充值的金额
    @TableField(exist = false)
    private Long balanceCz;
    // 核销码
    private String accessCode;
    // 核销时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date validationTime;
    // 核销人
    private String validationRealName;
    // 核销人Id
    private Long validationUserId;
    //是否使用优惠券 0 未使用 1使用
    private String isCoupon;
    //优惠券id
    private Long couponId;
    //优惠金额
    private Long couponDiscount = 0L;
    //合作商id
    private Long partnerId;
    //合作商id
    private String partnerName;
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;
    @TableField(exist = false)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    @TableField(exist = false)
    private Integer realPayMoney;
    @TableField(exist = false)
    private Integer realPayNum;
    //买单功能的金额 单位分
    @TableField(exist = false)
    private Long mdAmount;

    private Integer goodNum;
    private Long pickCarId;
    //预约的信息
    @TableField(exist = false)
    private Long appointmentId;
    private Long userCarId;

    //2024-03-27新增字段
    //其他联系人手机号
    private String otherPhone;
    private String driverLicenesImg;
    //是否线上支付0否1是
    private String isPayOnline;
    //是否上门取车0否1是
    private String isPickCar;
    private String remark;
    //车牌号
    private String carNo;
    //车辆品牌型号
    private String carModel;
    //车辆性质 非营运  营运等
    private String carNature;
    //车架号
    private String carIdNo;


}

