package com.zcloud.zcGbsServicer.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;
import java.time.LocalDate;
import java.util.List;

/**
* web-client
* @Author makejava
* @Date 2026-01-21 17:23:00
*/
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class RescueTeamUpdateCmd extends Command {
    @ApiModelProperty(value = "主键", name = "id", required = true)
    @NotNull(message = "主键不能为空")
    private Long id;

    @ApiModelProperty(value = "业务主键ID", name = "teamId", required = true)
    private String teamId;

    @ApiModelProperty(value = "救援队名称", name = "teamName", required = true)
    @NotEmpty(message = "救援队名称不能为空")
    private String teamName;

    @ApiModelProperty(value = "类型", name = "teamType", required = true)
    private String teamType;

    @ApiModelProperty(value = "类型名称")
    private String teamTypeName;

    @ApiModelProperty(value = "负责单位或部门", name = "chargeOrgDept", required = true)
    private String chargeOrgDept;

    @ApiModelProperty(value = "队长", name = "captainName", required = true)
    private String captainName;

    @ApiModelProperty(value = "队长电话", name = "captainPhone", required = true)
    private String captainPhone;

    @ApiModelProperty(value = "经度")
    private String longitude;

    @ApiModelProperty(value = "纬度")
    private String latitude;

    @ApiModelProperty(value = "指挥人员")
    private String commandCrew;

    @ApiModelProperty(value = "建立日期", name = "establishDate", required = true)
    private LocalDate establishDate;

    @ApiModelProperty(value = "所属区域或范围", name = "regionScope", required = true)
    private String regionScope;

    @ApiModelProperty(value = "所属区域或范围名称")
    private String regionScopeName;

    @ApiModelProperty(value = "职责和任务范围", name = "dutyScope", required = true)
    private String dutyScope;

    @ApiModelProperty(value = "消防队员")
    private List<ResourcePersonAddCmd> rescueMembers;
}
