package com.ruoyi.bst.areaJoin.domain;

import java.math.BigDecimal;
import java.util.List;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.validate.ValidGroup;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 运营加盟对象 bst_area_join
 *
 * @author ruoyi
 * @date 2025-03-25
 */
@Data
public class AreaJoin extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    private Long id;

    @Excel(name = "类型", readConverterExp = "1=加盟商,2=合伙人")
    @ApiModelProperty("类型")
    @NotBlank(message = "类型不允许为空", groups = {ValidGroup.Create.class})
    private String type;

    @Excel(name = "运营区ID")
    @ApiModelProperty("运营区ID")
    @NotNull(message = "运营区ID不允许为空", groups = {ValidGroup.Create.class})
    private Long areaId;

    @Excel(name = "用户ID")
    @ApiModelProperty("用户ID")
    private Long userId;

    @Excel(name = "分成比例")
    @ApiModelProperty("分成比例")
    @Min(value = 0, message = "分成比例不允许小于0")
    @Max(value = 100, message = "分成比例不允许大于100")
    private BigDecimal point;

    @Excel(name = "创建人ID")
    @ApiModelProperty("创建人ID")
    private Long createId;

    @Excel(name = "权限列表")
    @ApiModelProperty("权限列表") 
    private List<String> permissions;

}
