package com.dne.ems.dto;

import jakarta.validation.constraints.NotNull;

/**
 * 任务分配请求数据传输对象
 *
 * <p>用于主管将待分配任务指派给特定网格工作人员
 *
 * <p>业务规则：
 * <ul>
 *   <li>只能分配给角色为GRID_WORKER的用户</li>
 *   <li>任务状态必须为PENDING_ASSIGNMENT(待分配)或ASSIGNED(已分配)</li>
 *   <li>分配后任务状态变为ASSIGNED</li>
 *   <li>会生成任务分配记录</li>
 * </ul>
 *
 * @param assigneeId 网格工作人员ID(必填)
 * @see com.dne.ems.model.enums.TaskStatus 任务状态枚举
 * @see com.dne.ems.model.Assignment 任务分配记录实体
 */
public record TaskAssignmentRequest(
        @NotNull
        Long assigneeId
) {} 