package com.liquidnet.service.kylin.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;

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

/**
 * 演出票退款原因配置表
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class KylinOrderRefundReasons implements Serializable, Cloneable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "mid", type = IdType.AUTO)
    private Integer mid;

    /**
     * 业务ID
     */
    private String reasonId;

    /**
     * 退款理由名称
     */
    private String name;

    /**
     * 是否需要二级补充输入 0否 1是
     */
    private Integer needDetail;

    /**
     * 二级输入 placeholder
     */
    private String placeholder;

    /**
     * 是否已应用 0未应用 1应用中
     */
    private Integer isApplied;

    /**
     * 是否删除 0未删除 1已删除
     */
    private Integer isDeleted;

    /**
     * 排序，越大越靠前
     */
    private Integer sort;

    private LocalDateTime createdAt;

    private LocalDateTime updatedAt;

    @TableField(exist = false)
    private String isAppliedName;

    private static final KylinOrderRefundReasons OBJ = new KylinOrderRefundReasons();

    public static KylinOrderRefundReasons getNew() {
        try {
            return (KylinOrderRefundReasons) OBJ.clone();
        } catch (CloneNotSupportedException e) {
            return new KylinOrderRefundReasons();
        }
    }
}
