package com.pwt.system.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.pwt.common.core.domain.BaseEntity;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 系统配置对象 pwt_config
 *
 * @author linyun
 * @date 2022-11-21
 */
@Getter
@Setter
@ToString
public class PwtConfig extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    private Long id;

    /**
     * 站点开关
     */
    private Boolean websiteEnabled;

    /**
     * 系统名称
     */
    private String systemName;

    /**
     * 站控系统
     */
    private String systemIp;

    /**
     * 站控系统端口
     */
    private Integer systemPort;

    /**
     * 管理员token有效期
     */
    private Long adminExpireTime;

    /**
     * 上次备份时间
     */
    private String lastBackupTime;

    /**
     * 充电soc
     */
    private BigDecimal chargeSoc;

    /**
     * 云平台开关
     */
    private Boolean cloudEnabled;

    /**
     * 云平台地址
     */
    private String cloudAddress;

    /**
     * 云平台账号
     */
    private String cloudAccount;

    /**
     * 云平台密码
     */
    private String cloudPassword;

    /**
     * 协议类型
     */
    private String agreementType;

    /**
     * 车载ip
     */
    private String vehicleCidr;

    /**
     * 换电机器人ip
     */
    private String robotIp;

    /**
     * 换电机器人端口
     */
    private Integer robotPort;

    /**
     * 换电机器人编号
     */
    private String robotNo;

    /**
     * 扫码器ip
     */
    private String scannerIp;

    /**
     * 扫码器端口
     */
    private Integer scannerPort;

    /**
     * rfid ip
     */
    private String rfidIp;

    /**
     * rfid_port
     */
    private Integer rfidPort;

    /**
     * #1充电机ip
     */
    private String charger1Ip;

    /**
     * #1充电机端口
     */
    private Integer charger1Port;

    /**
     * #1充电机编号
     */
    private String charger1No;

    /**
     * #1充电机定时充电
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date charger1Time;

    /**
     * #1应急充电
     */
    private Boolean charger1Emg;

    /**
     * #2充电机ip
     */
    private String charger2Ip;

    /**
     * #2充电机端口
     */
    private Integer charger2Port;

    /**
     * #2充电机编号
     */
    private String charger2No;

    /**
     * #2充电机定时充电
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date charger2Time;

    /**
     * #2应急充电
     */
    private Boolean charger2Emg;

    /**
     * #3充电机ip
     */
    private String charger3Ip;

    /**
     * #3充电机端口
     */
    private Integer charger3Port;

    /**
     * #3充电机编号
     */
    private String charger3No;

    /**
     * #3充电机定时充电
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date charger3Time;

    /**
     * #3应急充电
     */
    private Boolean charger3Emg;

    /**
     * #4充电机ip
     */
    private String charger4Ip;

    /**
     * #4充电机端口
     */
    private Integer charger4Port;

    /**
     * #4充电机编号
     */
    private String charger4No;

    /**
     * #4充电机定时充电
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date charger4Time;

    /**
     * #4应急充电
     */
    private Boolean charger4Emg;

    /**
     * #5充电机ip
     */
    private String charger5Ip;

    /**
     * #5充电机端口
     */
    private Integer charger5Port;

    /**
     * #5充电机编号
     */
    private String charger5No;

    /**
     * #5充电机定时充电
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date charger5Time;

    /**
     * #5应急充电
     */
    private Boolean charger5Emg;

    /**
     * #6充电机ip
     */
    private String charger6Ip;

    /**
     * #6充电机端口
     */
    private Integer charger6Port;

    /**
     * #6充电机编号
     */
    private String charger6No;

    /**
     * #6充电机定时充电
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date charger6Time;

    /**
     * #6应急充电
     */
    private Boolean charger6Emg;

    /**
     * #7充电机ip
     */
    private String charger7Ip;

    /**
     * #7充电机端口
     */
    private Integer charger7Port;

    /**
     * #7充电机编号
     */
    private String charger7No;

    /**
     * #7充电机定时充电
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date charger7Time;

    /**
     * #7应急充电
     */
    private Boolean charger7Emg;

    /**
     * #8充电机ip
     */
    private String charger8Ip;

    /**
     * #8充电机端口
     */
    private Integer charger8Port;

    /**
     * #8充电机编号
     */
    private String charger8No;

    /**
     * #8充电机定时充电
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date charger8Time;

    /**
     * #8应急充电
     */
    private Boolean charger8Emg;

    /**
     * 是否启动自动换仓
     */
    private Boolean isAutoChangeWarehouse;

}
