package org.springblade.modules.nh.pojo.dto;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import org.springblade.modules.nh.pojo.entity.MonitorEntryStatEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.modules.nh.pojo.vo.OverviewStaticDataVo;

import java.io.Serial;
import java.util.Date;

/**
 * 外部电站同步 数据传输对象实体类
 *
 * @author AlexWang
 * @since 2024-06-01
 */
@Data
public class MonitorEntryStatDTO {
	/**
	 * 内部电站id
	 */
	@Schema(description = "内部系统电站id")
	private String innerStationId;

	/**
	 * 外部系统电站id
	 */
	@Schema(description = "外部系统电站id")
	private String outStationId;

	/**
	 * 电站名称
	 */
	@Schema(description = "电站名称")
	private String stationName;
	/**
	 * 装机容量kWp
	 */
	@Schema(description = "装机容量kWp")
	private Double capacity;
	/**
	 * 功率
	 */
	@Schema(description = "功率")
	private Double power;
	/**
	 * 实时功率
	 */
	@Schema(description = "实时功率")
	private Double pac;
	/**
	 * 0.锦浪 1，爱士惟，2：goodwe，3：古瑞瓦特
	 */
	@Schema(description = "0.锦浪 1，爱士惟，2：goodwe，3：古瑞瓦特")
	private String type;
	/**
	 * 当日能量kw
	 */
	@Schema(description = "当日能量kw")
	private Double etd;
	/**
	 * 当月能量kw
	 */
	@Schema(description = "当月能量kw")
	private Double etm;
	/**
	 * 当年能量kw
	 */
	@Schema(description = "当年能量kw")
	private Double ety;
	/**
	 * 总能量kw
	 */
	@Schema(description = "总能量kw")
	private Double eta;
	/**
	 * 满发小时数(应该是当天的满发小时数)
	 */
	@Schema(description = "满发小时数(应该是当天的满发小时数)")
	private Double fullHour;
	/**
	 * 电站状态:1 = 在线,2 = 离线,3 = 报警
	 */
	@Schema(description = "电站状态:1 = 在线,2 = 离线,3 = 报警")
	private Integer state;
	/**
	 * 同步采集时间，并非当前时间，可能是之前的时间
	 */
	@Schema(description = "同步采集时间，并非当前时间，可能是之前的时间")
	private Date syncTime;

	/**
	 * 首次发电时间
	 */
	private Date fisGenerateTime;

	private OverviewStaticDataVo overviewVo;

}
