package com.ywt.outpatient.taihe.rpc.domain.entity.center;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * (OrderPayment)实体类
 *
 * @author johnson lin
 * @since 2019-05-13 17:49:08
 */
@Entity
@Table(name = "order_payment")
public class OrderPayment implements Serializable {
    private static final long serialVersionUID = -71737410983884809L;
    
       /**
    * 主键
    */
    @Id
    @Column(name = "id")
    private Integer id;
    
    /**
     * 订单id
     */
    @Column(name = "order_id")
    private Integer orderId;
    
    /**
     * 订单编号
     */
    @Column(name = "order_no")
    private String orderNo;
    
    /**
     * 支付流水号
     */
    @Column(name = "payment_no")
    private String paymentNo;
    
    /**
     * 用户id
     */
    @Column(name = "user_id")
    private Integer userId;
    
    /**
     * 支付渠道（0-微信，1-支付宝）
     */
    @Column(name = "payment_channel")
    private Integer paymentChannel;
    
    /**
     * 支付状态（0-待支付,1-支付处理中，2-支付成功，3-支付失败）
     */
    @Column(name = "payment_status")
    private Integer paymentStatus;
    
    /**
     * 支付回调时间
     */
    @Column(name = "callback_time")
    private LocalDateTime callbackTime;
    
    /**
     * 订单金额  
     */
    @Column(name = "order_amount")
    private Double orderAmount;
    
    /**
     * 实际支付金额
     */
    @Column(name = "payment_amount")
    private Double paymentAmount;
    
    /**
     * 支付结果备注 
     */
    @Column(name = "remark")
    private String remark;
    
    /**
     * 创建时间
     */
    @Column(name = "create_time")
    private LocalDateTime createTime;
    
    @Column(name = "is_deleted")
    private Integer isDeleted;
    
    @Column(name = "result_code")
    private String resultCode;
    
    @Column(name = "transaction_id")
    private String transactionId;
    
    @Column(name = "cash_fee")
    private Integer cashFee;
    
    @Column(name = "attach")
    private String attach;
    
    @Column(name = "bank_type")
    private String bankType;
    
    @Column(name = "time_end")
    private String timeEnd;
    
    @Column(name = "err_code")
    private String errCode;
    
    @Column(name = "err_code_des")
    private String errCodeDes;
    
    @Column(name = "prepay_id")
    private String prepayId;
    
    @Column(name = "callback_data")
    private String callbackData;
    
    @Column(name = "deleted")
    private Integer deleted;
    
    @Column(name = "his_order_code")
    private String hisOrderCode;
    
    @Column(name = "his_patient_id")
    private String hisPatientId;
    
    @Column(name = "his_pay_mode_code")
    private String hisPayModeCode;
    
    /**
     * 支付终端
     */
    @Column(name = "terminal")
    private Integer terminal;
    
    /**
     * 社交账户open id
     */
    @Column(name = "open_id")
    private String openId;
    
    @Column(name = "insure_key")
    private String insureKey;
    
    @Column(name = "insure_biz_type")
    private String insureBizType;
    
    @Column(name = "insure_treatment_type")
    private String insureTreatmentType;
    
    @Column(name = "insure_fee_type")
    private String insureFeeType;
    
    @Column(name = "reimbursement")
    private Integer reimbursement;
    
    /**
     * 由谁操作
     */
    @Column(name = "op_by")
    private String opBy;
    
    /**
     * 内部支付实现唯一编码
     */
    @Column(name = "internal_pay_no")
    private String internalPayNo;
    
    /**
     * POS机系统检索号
     */
    @Column(name = "pos_refer_no")
    private String posReferNo;
    
    /**
     * POS机授权号
     */
    @Column(name = "pos_auth_no")
    private String posAuthNo;
    
    /**
     * POS机返回码
     */
    @Column(name = "pos_rsp_code")
    private String posRspCode;
    
    /**
     * POS机交易卡号
     */
    @Column(name = "pos_card_no")
    private String posCardNo;
    
    /**
     * POS机交易时间
     */
    @Column(name = "pos_trans_time")
    private String posTransTime;
    
    /**
     * POS机交易日期
     */
    @Column(name = "pos_trans_date")
    private String posTransDate;
    
    /**
     * POS机终端ID
     */
    @Column(name = "pos_terminal_id")
    private String posTerminalId;
    
    /**
     * POS机终端流水号
     */
    @Column(name = "pos_terminal_trace_no")
    private String posTerminalTraceNo;

    @Column(name = "alipay_trade_no")
    private String alipayTradeNo;
    @Column(name = "alipay_uid")
    private String alipayUid;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getOrderId() {
        return orderId;
    }

    public void setOrderId(Integer orderId) {
        this.orderId = orderId;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public String getPaymentNo() {
        return paymentNo;
    }

    public void setPaymentNo(String paymentNo) {
        this.paymentNo = paymentNo;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public Integer getPaymentChannel() {
        return paymentChannel;
    }

    public void setPaymentChannel(Integer paymentChannel) {
        this.paymentChannel = paymentChannel;
    }

    public Integer getPaymentStatus() {
        return paymentStatus;
    }

    public void setPaymentStatus(Integer paymentStatus) {
        this.paymentStatus = paymentStatus;
    }

    public LocalDateTime getCallbackTime() {
        return callbackTime;
    }

    public void setCallbackTime(LocalDateTime callbackTime) {
        this.callbackTime = callbackTime;
    }

    public Double getOrderAmount() {
        return orderAmount;
    }

    public void setOrderAmount(Double orderAmount) {
        this.orderAmount = orderAmount;
    }

    public Double getPaymentAmount() {
        return paymentAmount;
    }

    public void setPaymentAmount(Double paymentAmount) {
        this.paymentAmount = paymentAmount;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public Integer getIsDeleted() {
        return isDeleted;
    }

    public void setIsDeleted(Integer isDeleted) {
        this.isDeleted = isDeleted;
    }

    public String getResultCode() {
        return resultCode;
    }

    public void setResultCode(String resultCode) {
        this.resultCode = resultCode;
    }

    public String getTransactionId() {
        return transactionId;
    }

    public void setTransactionId(String transactionId) {
        this.transactionId = transactionId;
    }

    public Integer getCashFee() {
        return cashFee;
    }

    public void setCashFee(Integer cashFee) {
        this.cashFee = cashFee;
    }

    public String getAttach() {
        return attach;
    }

    public void setAttach(String attach) {
        this.attach = attach;
    }

    public String getBankType() {
        return bankType;
    }

    public void setBankType(String bankType) {
        this.bankType = bankType;
    }

    public String getTimeEnd() {
        return timeEnd;
    }

    public void setTimeEnd(String timeEnd) {
        this.timeEnd = timeEnd;
    }

    public String getErrCode() {
        return errCode;
    }

    public void setErrCode(String errCode) {
        this.errCode = errCode;
    }

    public String getErrCodeDes() {
        return errCodeDes;
    }

    public void setErrCodeDes(String errCodeDes) {
        this.errCodeDes = errCodeDes;
    }

    public String getPrepayId() {
        return prepayId;
    }

    public void setPrepayId(String prepayId) {
        this.prepayId = prepayId;
    }

    public String getCallbackData() {
        return callbackData;
    }

    public void setCallbackData(String callbackData) {
        this.callbackData = callbackData;
    }

    public Integer getDeleted() {
        return deleted;
    }

    public void setDeleted(Integer deleted) {
        this.deleted = deleted;
    }

    public String getHisOrderCode() {
        return hisOrderCode;
    }

    public void setHisOrderCode(String hisOrderCode) {
        this.hisOrderCode = hisOrderCode;
    }

    public String getHisPatientId() {
        return hisPatientId;
    }

    public void setHisPatientId(String hisPatientId) {
        this.hisPatientId = hisPatientId;
    }

    public String getHisPayModeCode() {
        return hisPayModeCode;
    }

    public void setHisPayModeCode(String hisPayModeCode) {
        this.hisPayModeCode = hisPayModeCode;
    }

    public Integer getTerminal() {
        return terminal;
    }

    public void setTerminal(Integer terminal) {
        this.terminal = terminal;
    }

    public String getOpenId() {
        return openId;
    }

    public void setOpenId(String openId) {
        this.openId = openId;
    }

    public String getInsureKey() {
        return insureKey;
    }

    public void setInsureKey(String insureKey) {
        this.insureKey = insureKey;
    }

    public String getInsureBizType() {
        return insureBizType;
    }

    public void setInsureBizType(String insureBizType) {
        this.insureBizType = insureBizType;
    }

    public String getInsureTreatmentType() {
        return insureTreatmentType;
    }

    public void setInsureTreatmentType(String insureTreatmentType) {
        this.insureTreatmentType = insureTreatmentType;
    }

    public String getInsureFeeType() {
        return insureFeeType;
    }

    public void setInsureFeeType(String insureFeeType) {
        this.insureFeeType = insureFeeType;
    }

    public Integer getReimbursement() {
        return reimbursement;
    }

    public void setReimbursement(Integer reimbursement) {
        this.reimbursement = reimbursement;
    }

    public String getOpBy() {
        return opBy;
    }

    public void setOpBy(String opBy) {
        this.opBy = opBy;
    }

    public String getInternalPayNo() {
        return internalPayNo;
    }

    public void setInternalPayNo(String internalPayNo) {
        this.internalPayNo = internalPayNo;
    }

    public String getPosReferNo() {
        return posReferNo;
    }

    public void setPosReferNo(String posReferNo) {
        this.posReferNo = posReferNo;
    }

    public String getPosAuthNo() {
        return posAuthNo;
    }

    public void setPosAuthNo(String posAuthNo) {
        this.posAuthNo = posAuthNo;
    }

    public String getPosRspCode() {
        return posRspCode;
    }

    public void setPosRspCode(String posRspCode) {
        this.posRspCode = posRspCode;
    }

    public String getPosCardNo() {
        return posCardNo;
    }

    public void setPosCardNo(String posCardNo) {
        this.posCardNo = posCardNo;
    }

    public String getPosTransTime() {
        return posTransTime;
    }

    public void setPosTransTime(String posTransTime) {
        this.posTransTime = posTransTime;
    }

    public String getPosTransDate() {
        return posTransDate;
    }

    public void setPosTransDate(String posTransDate) {
        this.posTransDate = posTransDate;
    }

    public String getPosTerminalId() {
        return posTerminalId;
    }

    public void setPosTerminalId(String posTerminalId) {
        this.posTerminalId = posTerminalId;
    }

    public String getPosTerminalTraceNo() {
        return posTerminalTraceNo;
    }

    public void setPosTerminalTraceNo(String posTerminalTraceNo) {
        this.posTerminalTraceNo = posTerminalTraceNo;
    }

    public String getAlipayTradeNo() {
        return alipayTradeNo;
    }

    public void setAlipayTradeNo(String alipayTradeNo) {
        this.alipayTradeNo = alipayTradeNo;
    }

    public String getAlipayUid() {
        return alipayUid;
    }

    public void setAlipayUid(String alipayUid) {
        this.alipayUid = alipayUid;
    }
}