package com.njcn.msgpush.module.system.controller.admin.dept.vo.orgleader;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.Data;

import java.time.LocalDateTime;

@Schema(description = "管理后台 - 组织负责人关系创建/修改 Request VO")
@Data
public class OrgLeaderRelationSaveReqVO {

    @Schema(description = "负责人关系编号", example = "1024")
    private Long id;

    @Schema(description = "组织节点 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
    @NotNull(message = "组织节点不能为空")
    private Long deptId;

    @Schema(description = "负责人用户 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "负责人用户不能为空")
    private Long userId;

    @Schema(description = "生效开始时间")
    private LocalDateTime effectiveFrom;

    @Schema(description = "生效结束时间")
    private LocalDateTime effectiveUntil;

    @Schema(description = "备注", example = "部门负责人")
    @Size(max = 500, message = "备注长度不能超过 500 个字符")
    private String remark;

}
