package com.zcloud.basic.info.dto;

import com.alibaba.cola.dto.Command;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

/**
 * web-client
 *
 * @Author zhaokai
 * @Date 2025-12-02 11:13:32
 */
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserCorpAddCmd extends Command {
    @ApiModelProperty(value = "用户id", name = "userId", required = true)
    @NotNull(message = "用户id不能为空")
    private Long userId;

    @ApiModelProperty(value = "企业id", name = "corpinfoId", required = true)
    @NotNull(message = "企业id不能为空")
    private Long corpinfoId;

    @ApiModelProperty(value = "部门id", name = "departmentId", required = true)
    @NotNull(message = "部门id不能为空")
    private Long departmentId;

    @ApiModelProperty(value = "岗位id", name = "postId", required = true)
    @NotNull(message = "岗位id不能为空")
    private Long postId;

    @ApiModelProperty(value = "岗位名称", name = "postName", required = true)
    @NotEmpty(message = "岗位名称不能为空")
    private String postName;

    @ApiModelProperty(value = "角色id", name = "roleId", required = true)
    @NotNull(message = "角色id不能为空")
    private Long roleId;

    @ApiModelProperty(value = "人员在部门中的排序", name = "sort", required = true)
    @NotNull(message = "人员在部门中的排序不能为空")
    private Integer sort;

    @ApiModelProperty(value = "是否部门领导0否1是", name = "departmentLeaderFlag", required = true)
    @NotNull(message = "是否部门领导0否1是不能为空")
    private Integer departmentLeaderFlag;

    @ApiModelProperty(value = "入职状态，1-在职 0-离职, 2-入职待审核, 3-离职待审核", name = "employmentFlag", required = true)
    @NotNull(message = "入职状态，1-在职 0-离职, 2-入职待审核, 3-离职待审核不能为空")
    private Integer employmentFlag;

}

