package com.yuchen.saas.payment.api.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.nest.springwrap.core.tenant.mp.TenantEntity;

/**
 * <p>
 * 订单类型设置
 * </p>
 *
 * @author miaoqs
 * @since 2023-11-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("pmg_order_type_set")
@ApiModel(value="PmgOrderTypeSet对象", description="订单类型设置")
public class PmgOrderTypeSet extends TenantEntity {

    /**
     * 业务类型
     */
    @ApiModelProperty(name = "businessId", value = "业务类型")
    private Long businessId;
    /**
     * 订单类型名称
     */
    @ApiModelProperty(name = "orderTypeName", value = "订单类型名称")
    private String orderTypeName;
    /**
     * 订单类型编号
     */
    @ApiModelProperty(name = "orderTypeNum", value = "订单类型编号")
    private Integer orderTypeNum;
    /**
     * 可开票种类,可多选,逗号隔开(1:普通发票;2:专用发票)
     */
    @ApiModelProperty(name = "openInvoiceType", value = "可开票种类,可多选,逗号隔开(1:普通发票;2:专用发票)")
    private String openInvoiceType;
    /**
     * 费用项目设置方式(1:绑定账单费用项目;2:直接选择费用项目)
     */
    @ApiModelProperty(name = "costType", value = "费用项目设置方式(1:绑定账单费用项目;2:直接选择费用项目)")
    private Integer costType;
    /**
     * 关联账单类型
     */
    @JsonSerialize(nullsUsing = NullSerializer.class)
    @ApiModelProperty(name = "billOrderId", value = "关联账单类型")
    private Long billOrderId;
    /**
     * 启停状态 1:开启;0:关闭
     */
    @ApiModelProperty(name = "openState", value = "启停状态 1:开启;0:关闭")
    private Integer openState;
    /**
     * 备注
     */
    @ApiModelProperty(name = "remark", value = "备注")
    private String remark;



}
