package com.njcn.supervision.pojo.param.device;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 *
 * Description:
 * Date: 2024/5/11  14:07【需求编号】
 *
 * @author clam
 * @version V1.0.0
 */
@ApiModel(description="临时台账信息")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SupervisionTempDeviceReportParam {



    /**
     * 所属供电公司
     */
    @ApiModelProperty(value="所属供电公司")
    private String powerCompany;

    /**
     * 0 关联系统内变电站;1用户手动输入变电站
     */
    @ApiModelProperty(value = " 0 关联系统内变电站;1用户手动输入变电站")
    private Integer customSubstationFlag;

    /**
     * 所属变电站
     */
    @ApiModelProperty(value = "所属变电站名称")
    private String substationName;


    /**
     * 所属变电站
     */
    @ApiModelProperty(value="所属变电站")
    private String substation;

    /**
     * 变电站电压等级
     */
    @ApiModelProperty(value="变电站电压等级")
    private String substationVoltageLevel;

    /**
     * 监测终端编码
     */
    @ApiModelProperty(value="监测终端编码")
    private String monitoringTerminalCode;

    /**
     * 监测终端名称
     */
    @ApiModelProperty(value="监测终端名称")
    private String monitoringTerminalName;

    /**
     * 电压互感器类型
     */
    @ApiModelProperty(value="电压互感器类型")
    private String voltageTransformerType;

    /**
     * 终端接线方式类型
     */
    @ApiModelProperty(value="终端接线方式类型")
    private String terminalWiringMethodType;

    /**
     * 中性点接线方式
     */
    @ApiModelProperty(value="中性点接线方式")
    private String neutralPointWiringMethod;

    /**
     * 厂家
     */
    @ApiModelProperty(value="厂家")
    private String manufacturer;

    /**
     * 厂家设备编号
     */
    @ApiModelProperty(value="厂家设备编号")
    private String manufacturerDeviceNumber;

    /**
     * 终端IP
     */
    @ApiModelProperty(value="终端IP")
    private String terminalIp;

    /**
     * 终端型号
     */
    @ApiModelProperty(value="终端型号")
    private String terminalType;

    /**
     * 端口
     */
    @ApiModelProperty(value="端口")
    private String terminalPort;

    /**
     * 所属前置机
     */
    @ApiModelProperty(value="所属前置机")
    private String frontEndMachine;

    /**
     * 本次终端检测时间
     */
    @ApiModelProperty(value="本次终端检测时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime currentTerminalDetectionTime;

    /**
     * 下次终端定检时间
     */
    @ApiModelProperty(value="下次终端定检时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime nextTerminalInspectionTime;

    /**
     * 识别码
     */
    @ApiModelProperty(value="识别码")
    private String identificationCode;

    /**
     * 终端秘钥
     */
    @ApiModelProperty(value="终端秘钥")
    private String terminalSecretKey;

    /**
     * 经度
     */
    @ApiModelProperty(value="经度")
    private BigDecimal longitude;

    /**
     * 纬度
     */
    @ApiModelProperty(value="纬度")
    private BigDecimal latitude;

    /**
     * 终端模型
     */
    @ApiModelProperty(value="终端模型")
    private String terminalModel;

    /**
     * 数据类型
     */
    @ApiModelProperty(value="数据类型")
    private String dataType;

    /**
     * 通讯状态
     */
    @ApiModelProperty(value="通讯状态")
    private String communicationStatus;

    /**
     * SIM卡号
     */
    @ApiModelProperty(value="SIM卡号")
    private String simCardNumber;

    /**
     * 投运时间
     */
    @ApiModelProperty(value="投运时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime commissioningTime;

    /**
     * 数据更新时间
     */
    @ApiModelProperty(value="数据更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime dataUpdateTime;

    /**
     * 对时功能
     */
    @ApiModelProperty(value="对时功能")
    private Integer timeSyncFunction;

    /**
     * 电度功能
     */
    @ApiModelProperty(value="电度功能")
    private Integer electroplatingFunction;

    /**
     * 监测装置安装位置
     */
    @ApiModelProperty(value="监测装置安装位置")
    private String monitoringDeviceInstallationPosition;

    /**
     * 召唤标志
     */
    @ApiModelProperty(value="召唤标志")
    private String summonFlag;

    /**
     * 告警功能
     */
    @ApiModelProperty(value="告警功能")
    private String alarmFunction;

    /**
     * 合同号
     */
    @ApiModelProperty(value="合同号")
    private String contractNumber;

    private String frontType;

    @ApiModelProperty(value = "审核状态")
    private Integer status;


}
