package com.liquidnet.service.kylin.dto.vo.mongo;

import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
public class KylinOrderTicketEntitiesVo implements Serializable, Cloneable {
    private static final long serialVersionUID = 1207664465164005975L;

    private Integer mid;
    private String orderTicketEntitiesId;
    private String orderId;
    private String ticketId;
    private String userId;
    private String performanceId;
    private String timeId;
    private Integer enterType;
    private String enterName;
    private String enterMobile;
    private String enterIdCode;
    private Integer status;
    private Integer sysDamai;
    private String checkClient;
    private Integer isPayment;

    private String performanceTitle;
    private String ticketTitle;
    private String useStart;
    private String useEnd;

    private String createdAt;
    private String updatedAt;

    private Integer ticketsmId;
    private Integer timemId;

    private BigDecimal refundPrice;

    private String checkType;
    private String checkedAt;
    private String checkUserId;

    private BigDecimal priceActual;
    private BigDecimal priceCanRefund;

    private LocalDateTime changeDate;

    private BigDecimal canRefundedPrice;
    private BigDecimal chargesRatio;
    private BigDecimal chargesPrice;

    public BigDecimal getRefundPrice() {
        return refundPrice==null?BigDecimal.valueOf(0.00):refundPrice;
    }

    private static final KylinOrderTicketEntitiesVo obj = new KylinOrderTicketEntitiesVo();
    public static KylinOrderTicketEntitiesVo getNew() {
        try {
            return (KylinOrderTicketEntitiesVo) obj.clone();
        } catch (CloneNotSupportedException e) {
            return new KylinOrderTicketEntitiesVo();
        }
    }
}
