package com.fs.his.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;
import lombok.Data;

/**
 * 订单对象 fs_store_sub_order
 *
 * @author fs
 * @date 2024-05-09
 */
@Data
public class FsStoreSubOrder extends BaseEntity
{


    /** 子订单ID */
    private Long subOrderId;

    /** 订单id */
    @Excel(name = "订单id")
    private Long orderId;

    /** 店铺id */
    @Excel(name = "店铺id")
    private Long storeId;

    /** 子订单号 */
    @Excel(name = "子订单号")
    private String subOrderCode;

    /** 用户id */
    @Excel(name = "用户id")
    private Long userId;

    /** 收货人 */
    @Excel(name = "收货人")
    private String userName;

    /** 收货人电话 */
    @Excel(name = "收货人电话")
    private String userPhone;

    /** 详细地址 */
    @Excel(name = "详细地址")
    private String userAddress;

    /** 订单商品总数 */
    @Excel(name = "订单商品总数")
    private Long totalNum;

    /** 订单总价/商品合计 */
    @Excel(name = "订单总价/商品合计")
    private BigDecimal totalPrice;

    /** 支付金额/处方应付金额 */
    @Excel(name = "支付金额/处方应付金额")
    private BigDecimal payPrice;

    /** 实际支付金额 */
    @Excel(name = "实际支付金额")
    private BigDecimal payMoney;

    /** 剩余金额/代收金额 */
    @Excel(name = "剩余金额/代收金额")
    private BigDecimal payRemain;

    /** 优惠卷金额 */
    @Excel(name = "优惠卷金额")
    private BigDecimal discountMoney;

    /** 支付时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "支付时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date payTime;



    /** 支付方式 */
    @Excel(name = "支付方式")
    private Integer payType;

    /** 处方定价（套餐包价格) */
    @Excel(name = "处方定价", readConverterExp = "处方定价（套餐包价格)")
    private BigDecimal prescribePrice;

    /** 总成本价 */
    @Excel(name = "总成本价")
    private BigDecimal totalCostPrice;

    /** 问诊成本价 */
    @Excel(name = "问诊成本价")
    private BigDecimal inquiryCostPrice;

    /** 成本优惠金额 成本-定价 */
    @Excel(name = "成本优惠金额 成本-定价")
    private BigDecimal costDiscountMoney;

    /** 成本价 */
    @Excel(name = "成本价")
    private BigDecimal costPrice;

    /** 订单类型 1西药 2中药 */
    @Excel(name = "订单类型 1西药 2中药")
    private Integer orderType;


    @Excel(name = "订单状态")
    private Integer status;

    private Integer orderStatus;
    /** 支付运费 */
    @Excel(name = "支付运费")
    private BigDecimal payDelivery;


    /** 完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date finishTime;

    /** 公司id */
    @Excel(name = "公司id")
    private Long companyId;

    /** 公司员工id */
    @Excel(name = "公司员工id")
    private Long companyUserId;

    /** 部门id */
    @Excel(name = "部门id")
    private Long deptId;

    /** 套餐包id */
    @Excel(name = "套餐包id")
    private Long packageId;

    /** 医生id */
    @Excel(name = "医生id")
    private Long doctorId;

    /** 问诊订单id */
    @Excel(name = "问诊订单id")
    private Long inquiryOrderId;

    /** 套餐包订单id */
    @Excel(name = "套餐包订单id")
    private Long packageOrderId;

    /** 用药周期 */
    @Excel(name = "用药周期")
    private Integer cycle;

    /** 随访医生id */
    @Excel(name = "随访医生id")
    private Long followDoctorId;

    @Excel(name = "药师id")
    private Long drugDoctorId;
    /** 随访次数 */
    @Excel(name = "随访次数")
    private Long followNum;

    /** 套餐包名称  */
    @Excel(name = "套餐包名称 ")
    private String packageName;

    /** 套餐包别名 */
    @Excel(name = "套餐包别名")
    private String packageSecondName;

    /** idc编码 */
    @Excel(name = "idc编码")
    private String icdCode;

    /** 处方json */
    @Excel(name = "处方json")
    private String prescribeJson;

    /** 处方药品json */
    @Excel(name = "处方药品json")
    private String prescribeDrugJson;

    /** 诊断 */
    @Excel(name = "诊断")
    private String diagnosis;

    /** $column.columnComment */
    @Excel(name = "诊断")
    private Long patientId;

    /** 病人名称 */
    @Excel(name = "病人名称")
    private String patientName;

    /** 病人身份证 */
    @Excel(name = "病人身份证")
    private String patientIdcard;

    /** 药物使用方法（例如口服、局部）     中药必填 */
    @Excel(name = "药物使用方法", readConverterExp = "例=如口服、局部")
    private String detailsUsage;

    /** 是否已经推送 1是 0否  */
    @Excel(name = "是否已经推送 1是 0否 ")
    private Integer isPush;

    /** 付数 */
    @Excel(name = "付数")
    private Long prescriptionNum;

    /** $column.columnComment */
    @Excel(name = "付数")
    private String prescriptionTaking;

    /** $column.columnComment */
    @Excel(name = "付数")
    private String prescriptionRequirements;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;


    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /** 备注 */
    private String remark;
}
