package com.xiaopeng.api.dto.operation; import com.fasterxml.jackson.annotation.JsonFormat; import com.xiaopeng.api.model.operation.XpElectronicFenceArea; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.io.Serializable; import java.time.LocalDateTime; import java.util.List; @Data @ApiModel(value = "电子围栏编辑DTO") public class ElectronicFenceUpdateDto implements Serializable { @ApiModelProperty(value = "id") @NotNull(message = "id不能为空") private Long id; @ApiModelProperty(value = "围栏名称") @NotEmpty(message = "所属市区不能为空") private String cityCode; @ApiModelProperty(value = "围栏名称") @NotEmpty(message = "围栏名称不能为空") private String electronicName; @ApiModelProperty(value = "围栏编号唯一 规则:城市首字母-类型简写-4位自增流水号(如 SZ-OP-001)") private String electronicNumber; @ApiModelProperty(value = "围栏状态 0=草稿 1=待启用 2=启用中 3=已停用") @NotNull(message = "围栏状态不能为空") private Integer status; @ApiModelProperty(value = "生效类型 1=立即生效 2=定时生效") @NotNull(message = "生效类型不能为空") private Integer effectType; @ApiModelProperty(value = "生效时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime effectTime; @ApiModelProperty(value = "失效类型 1=永不失效 2=定时失效") @NotNull(message = "失效类型不能为空") private Integer failureType; @ApiModelProperty(value = "失效时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime failureTime; @ApiModelProperty(value = "运营策略") @NotBlank(message = "运营策略不能为空") private String operationStrategy; @ApiModelProperty(value = "电子围栏区域") @NotEmpty(message = "电子围栏区域不能为空") private List electronicFenceAreas; }