package com.wzj.soopin.transaction.domain.bo;


import com.alibaba.excel.annotation.ExcelProperty;
import com.wzj.soopin.transaction.domain.po.DivideRule;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import org.dromara.common.core.domain.BaseBO;

import java.util.ArrayList;
import java.util.List;

/**
 * 分账规则
 *
 * @author wzj
 * @date 2023-03-07
 */
@Schema(description="分账规则")
@Data
public class DivideRuleBO extends BaseBO<DivideRule> {

    /**
     * 主键
     */
    @Schema(description ="主键")
    @ExcelProperty(value = "主键", order = 1)
    private Long id;

    /**
     * 提现码
     */

    @Schema(description ="编号")
    @ExcelProperty(value = "编号", order = 2)
    @NotBlank(message = "编号不能为空")
    private String code;


    @Schema(description ="名称")
    @ExcelProperty(value ="名称", order = 3)
    @NotBlank(message = "名称不能为空")
    private String name;

    /**
     * 手续费承担方式类型
     */
    @Schema(description = "手续费承担方式")
    @NotNull(message = "手续费承担方式不能为空")
    private Integer feeType;


    /**
     * 状态
     */
    @Schema(description ="状态")
    @ExcelProperty(value ="状态", order = 7)
    private Integer status;
    /**
     * 类型
     */
    @Schema(description ="适用订单类型")
    @ExcelProperty(value ="类型", order = 8)
    @NotNull(message = "适用订单类型不能为空")
    private Integer type;


    @Schema(description = "区域id")
    private Long regionId;

    @NotNull(message = "规则详情不能为空")
    private List<DivideRuleDetailBO> details=new ArrayList<>();

}
