/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.device.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.device.entity.IotDevice;

/**
 * 智能设备视图实体类
 *
 * @author BladeX
 * @since 2020-10-17
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "SmartDeviceVO对象", description = "智能设备")
public class IotDeviceVO extends IotDevice {
	private static final long serialVersionUID = 1L;

	//设备注册平台标识名称
	private String isAepName;

	//设备总数
	private Integer deviceCount;
	//正常数
	private Integer normalCount;
	//失联数
	private Integer outlineCount;
	//告警数
	private Integer alarmCount;
	//停用数
	private Integer pauseCount;

	//智能烟感
	private Integer smokeCount;
	//正常数
	private Integer smokeNormal;
	//失联数
	private Integer smokeOutline;
	//告警数
	private Integer smokeAlarm;
	//停用数
	private Integer smokePause;

	//智能烟感
	private Integer smokeModelCount;
	//正常数
	private Integer smokeModelNormal;
	//失联数
	private Integer smokeModelOutline;
	//告警数
	private Integer smokeModelAlarm;
	//停用数
	private Integer smokeModelPause;

	//燃气监控
	private Integer gasCount;
	//正常数
	private Integer gasNormal;
	//失联数
	private Integer gasOutline;
	//告警数
	private Integer gasAlarm;
	//停用数
	private Integer gasPause;

	//燃气监控
	private Integer gasModelCount;
	//正常数
	private Integer gasModelNormal;
	//失联数
	private Integer gasModelOutline;
	//告警数
	private Integer gasModelAlarm;
	//停用数
	private Integer gasModelPause;

	//井盖监控
	private Integer coverCount;
	//正常数
	private Integer coverNormal;
	//失联数
	private Integer coverOutline;
	//告警数
	private Integer coverAlarm;
	//停用数
	private Integer coverPause;

	//一键告警
	private Integer alarmDeviceCount;
	//正常数
	private Integer alarmDeviceNormal;
	//失联数
	private Integer alarmDeviceOutline;
	//告警数
	private Integer alarmDeviceAlarm;
	//停用数
	private Integer alarmDevicePause;

	//智慧路灯
	private Integer lampCount;
	//正常数
	private Integer lampNormal;
	//失联数
	private Integer lampOutline;
	//告警数
	private Integer lampAlarm;
	//停用数
	private Integer lampPause;

	//智慧垃圾桶
	private Integer trashbinCount;
	//正常数
	private Integer trashbinNormal;
	//失联数
	private Integer trashbinOutline;
	//告警数
	private Integer trashbinAlarm;
	//停用数
	private Integer trashbinPause;

	//智能地磁
	private Integer parkCount;
	//正常数
	private Integer parkNormal;
	//失联数
	private Integer parkOutline;
	//告警数
	private Integer parkAlarm;
	//停用数
	private Integer parkPause;

	//智能门磁
	private Integer gateCount;
	//正常数
	private Integer gateNormal;
	//失联数
	private Integer gateOutline;
	//告警数
	private Integer gateAlarm;
	//停用数
	private Integer gatePause;

	//智慧消防
	private Integer xfCount;
	//正常数
	private Integer xfNormal;
	//失联数
	private Integer xfOutline;
	//告警数
	private Integer xfAlarm;
	//停用数
	private Integer xfPause;

	@ApiModelProperty("设备类型名称")
	private String deviceTypeName;

	@ApiModelProperty("设备类型图标")
	private String iconUrl;

	@ApiModelProperty("所属企业名称")
	private String enterpriseNames;

	private String agencyName;

	private String residentialName;
}
