package com.cpop.oam.business.bo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.OffsetDateTime;
import java.util.List;

/**
 * @author DB
 * @version 1.0.0
 * @since 2023-12-13 10:33
 */
@Data
@Accessors(chain = true)
@ApiModel(value = "BusinessDistributeBo对象",description = "事务分发请求对象")
public class BusinessDistributeBo {

    /**
     * 业务等级
     */
    @NotNull(message = "业务等级不能为空")
    @ApiModelProperty(value = "业务等级")
    private Integer businessLevel;

    /**
     * 对接列表
     */
    @ApiModelProperty(value = "对接列表")
    private List<ButtJoint> buttJoint;
    /**
     * 描述
     */
    @NotBlank(message = "描述不能为空")
    @ApiModelProperty(value = "描述")
    private String desc;
    /**
     * 到期时间
     */
    @NotEmpty(message = "开始结束时间不能为空")
    @ApiModelProperty(value = "开始结束")
    private List<LocalDate> startAndEnd;
    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remark;

    @Data
    public static class ButtJoint {
        /**
         * 文档地址
         */
        @ApiModelProperty(value = "文档地址")
        private String businessDocUrl;
        /**
         * 接收员工id
         */
        @ApiModelProperty(value = "接收员工id")
        private String staffId;
    }
}
