package com.ycl.platform.domain.form; import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.system.domain.group.Update; import com.ycl.system.domain.group.Add; import com.ycl.platform.base.AbsForm; import com.ycl.platform.domain.entity.YwPoint; import org.springframework.beans.BeanUtils; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import org.springframework.lang.NonNull; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; import java.util.Date; /** * 运维点位表单 * * @author xp * @since 2024-03-05 */ @Data @Accessors(chain = true) @ApiModel(value = "YwPoint表单", description = "运维点位表单") public class YwPointForm extends AbsForm { @NotBlank(message = "点位名称不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("点位名称") private String pointName; @ApiModelProperty("运维单位") private Integer unitId; @NotNull(message = "监管部门不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("监管部门") private Long deptId; @ApiModelProperty("省厅视频点位标签") private Boolean provinceTagVideo; @ApiModelProperty("省厅车辆点位标签") private Boolean provinceTagCar; @ApiModelProperty("省厅人脸点位标签") private Boolean provinceTagFace; @ApiModelProperty("重点点位标签") private Boolean importantTag; @ApiModelProperty("重点指挥图像标签") private Boolean importantCommandImageTag; @ApiModelProperty("部级标签") private Boolean deptTag; @ApiModelProperty("运维状态") private String status; @ApiModelProperty("备注") private String remark; @ApiModelProperty("设备编号") private String serialNumber; @TableField("reason") private String reason; @TableField("recovery") private Integer recovery; @TableField("recovery_time") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date recoveryTime; @ApiModelProperty("点位开始时间") @TableField("start_time") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") private Date startTime; @ApiModelProperty("点位结束时间") @TableField("end_time") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") private Date endTime; private String username; private String password; public static YwPoint getEntityByForm(@NonNull YwPointForm form, YwPoint entity) { if(entity == null) { entity = new YwPoint(); } BeanUtils.copyProperties(form, entity); return entity; } }