/**
 * Copyright 2019 DH
 * All right reserved.
 * 项目名称: 大恒泰山系统
 * 创建日期:2022/8/22
 */
package org.springblade.modules.baseinfo.rtu.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.modules.baseinfo.rtu.entity.RtuInfoEntity;
import org.springblade.modules.system.entity.DictBiz;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

/***
 * Date:2022/8/22
 * Title:文件所属模块（必须填写）
 * Description：对本文件的详细描述，原则上不能少于30字
 * @author dylan
 * @version 1.0
 * Remark：认为有必要的其他信息
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class RtuInfoVO extends RtuInfoEntity {

	/**
	 * 机构名称
	 */
	@ApiModelProperty(value = "机构名称")
	private String orgName;


	/**
	 * 项目名称
	 */
	@ApiModelProperty(value = "项目名称")
	private String projectName;

	/**
	 * 行政区
	 */
	@ApiModelProperty(value = "行政区")
	private String areaName;


	/**
	 * 测站类型
	 */
	@ApiModelProperty(value = "测站类型")
	private List<DictBiz> kindList;

	/**
	 * 测站类型概要
	 */
	@ApiModelProperty(value = "测站类型概要")
	private String rtuKindDesc;

	/**
	 * 填报状态: 0 未报， 1已提交
	 */
	@ApiModelProperty(value = "填报状态")
	@JsonSerialize(nullsUsing = NullSerializer.class)
	private Integer reportStatus;

	/**
	 * 最后上报时间
	 */
	@ApiModelProperty(value = "最后上报时间")
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8"
	)
	private Date lastUpTime;

	/**
	 * 降水
	 */
	@ApiModelProperty(value = "降水")
	@JsonSerialize(nullsUsing = NullSerializer.class)
	private Double drp;

	/**
	 * 河道站水位
	 */
	@ApiModelProperty(value = "河道站水位")
	@JsonSerialize(nullsUsing = NullSerializer.class)
	private Double z;

	/**
	 * 水库站水位
	 */
	@ApiModelProperty(value = "水库站水位")
	@JsonSerialize(nullsUsing = NullSerializer.class)
	private Double rz;

	/**
	 * 水位计类型名称
	 */
	@ApiModelProperty(value = "水位计类型名称")
	private String waterSensorTypeText;

	/**
	 * 墒情计类型名称
	 */
	@ApiModelProperty(value = "墒情计类型名称")
	private String groundSensorTypeText;


	/**
	 * 通讯模式名称
	 */
	@ApiModelProperty(value = "通讯模式名称")
	private String satelliteModelText;

	@ApiModelProperty(value = "所属盟市行片区划编码")
	private String adCityCode;

	/**
	 * 行政区划
	 */
	@ApiModelProperty(value = "行政区划")
	private String adcd;

	/**
	 * 行政区划名称
	 */
	@ApiModelProperty(value = "行政区划名称")
	private String adnm;

	@ApiModelProperty(value = "站点类型")
	private String[] siteKind;

	/**
	 * 省名称
	 */
	@ApiModelProperty(value = "所属省")
	private String adProvince;

	/**
	 * 乡镇名称
	 */
	@ApiModelProperty(value = "所属乡镇")
	private String adTown;

	/**
	 * 村名称
	 */
	@ApiModelProperty(value = "所属村")
	private String adVillage;
}
