package com.usky.sas.service.vo;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.usky.sas.domain.SasGis;
import com.usky.sas.domain.SasPic;

@JsonIgnoreProperties(
        ignoreUnknown = true
)
public class AlarmEventInfo {
    private String deviceId;
    private Integer channel;
    private Integer eventCode;
    private String triggerTime;
    private String receivingTime;
    private String note;
    private SasGis gis;
    private SasPic eventPic;
    private Integer systemCode;
    private String relPerson;
    private String dealPerson;

    public AlarmEventInfo() {
    }

    public String getDeviceId() {
        return this.deviceId;
    }

    public Integer getChannel() {
        return this.channel;
    }

    public Integer getEventCode() {
        return this.eventCode;
    }

    public String getTriggerTime() {
        return this.triggerTime;
    }

    public String getReceivingTime() {
        return this.receivingTime;
    }

    public String getNote() {
        return this.note;
    }

    public SasGis getGis() {
        return this.gis;
    }

    public SasPic getEventPic() {
        return this.eventPic;
    }

    public Integer getSystemCode() {
        return this.systemCode;
    }

    public String getRelPerson() {
        return this.relPerson;
    }

    public String getDealPerson() {
        return this.dealPerson;
    }

    public AlarmEventInfo setDeviceId(String deviceId) {
        this.deviceId = deviceId;
        return this;
    }

    public AlarmEventInfo setChannel(Integer channel) {
        this.channel = channel;
        return this;
    }

    public AlarmEventInfo setEventCode(Integer eventCode) {
        this.eventCode = eventCode;
        return this;
    }

    public AlarmEventInfo setTriggerTime(String triggerTime) {
        this.triggerTime = triggerTime;
        return this;
    }

    public AlarmEventInfo setReceivingTime(String receivingTime) {
        this.receivingTime = receivingTime;
        return this;
    }

    public AlarmEventInfo setNote(String note) {
        this.note = note;
        return this;
    }

    public AlarmEventInfo setGis(SasGis gis) {
        this.gis = gis;
        return this;
    }

    public AlarmEventInfo setEventPic(SasPic eventPic) {
        this.eventPic = eventPic;
        return this;
    }

    public AlarmEventInfo setSystemCode(Integer systemCode) {
        this.systemCode = systemCode;
        return this;
    }

    public AlarmEventInfo setRelPerson(String relPerson) {
        this.relPerson = relPerson;
        return this;
    }

    public AlarmEventInfo setDealPerson(String dealPerson) {
        this.dealPerson = dealPerson;
        return this;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof AlarmEventInfo)) {
            return false;
        } else {
            AlarmEventInfo other = (AlarmEventInfo)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                Object this$deviceId = this.getDeviceId();
                Object other$deviceId = other.getDeviceId();
                if (this$deviceId == null) {
                    if (other$deviceId != null) {
                        return false;
                    }
                } else if (!this$deviceId.equals(other$deviceId)) {
                    return false;
                }

                Object this$channel = this.getChannel();
                Object other$channel = other.getChannel();
                if (this$channel == null) {
                    if (other$channel != null) {
                        return false;
                    }
                } else if (!this$channel.equals(other$channel)) {
                    return false;
                }

                Object this$eventCode = this.getEventCode();
                Object other$eventCode = other.getEventCode();
                if (this$eventCode == null) {
                    if (other$eventCode != null) {
                        return false;
                    }
                } else if (!this$eventCode.equals(other$eventCode)) {
                    return false;
                }

                Object this$triggerTime = this.getTriggerTime();
                Object other$triggerTime = other.getTriggerTime();
                if (this$triggerTime == null) {
                    if (other$triggerTime != null) {
                        return false;
                    }
                } else if (!this$triggerTime.equals(other$triggerTime)) {
                    return false;
                }

                Object this$receivingTime = this.getReceivingTime();
                Object other$receivingTime = other.getReceivingTime();
                if (this$receivingTime == null) {
                    if (other$receivingTime != null) {
                        return false;
                    }
                } else if (!this$receivingTime.equals(other$receivingTime)) {
                    return false;
                }

                Object this$note = this.getNote();
                Object other$note = other.getNote();
                if (this$note == null) {
                    if (other$note != null) {
                        return false;
                    }
                } else if (!this$note.equals(other$note)) {
                    return false;
                }

                Object this$gis = this.getGis();
                Object other$gis = other.getGis();
                if (this$gis == null) {
                    if (other$gis != null) {
                        return false;
                    }
                } else if (!this$gis.equals(other$gis)) {
                    return false;
                }

                Object this$eventPic = this.getEventPic();
                Object other$eventPic = other.getEventPic();
                if (this$eventPic == null) {
                    if (other$eventPic != null) {
                        return false;
                    }
                } else if (!this$eventPic.equals(other$eventPic)) {
                    return false;
                }

                Object this$systemCode = this.getSystemCode();
                Object other$systemCode = other.getSystemCode();
                if (this$systemCode == null) {
                    if (other$systemCode != null) {
                        return false;
                    }
                } else if (!this$systemCode.equals(other$systemCode)) {
                    return false;
                }

                Object this$relPerson = this.getRelPerson();
                Object other$relPerson = other.getRelPerson();
                if (this$relPerson == null) {
                    if (other$relPerson != null) {
                        return false;
                    }
                } else if (!this$relPerson.equals(other$relPerson)) {
                    return false;
                }

                Object this$dealPerson = this.getDealPerson();
                Object other$dealPerson = other.getDealPerson();
                if (this$dealPerson == null) {
                    if (other$dealPerson != null) {
                        return false;
                    }
                } else if (!this$dealPerson.equals(other$dealPerson)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(Object other) {
        return other instanceof AlarmEventInfo;
    }

    public int hashCode() {
        int PRIME = 59;
        int result = 1;
        Object $deviceId = this.getDeviceId();
        result = result * 59 + ($deviceId == null ? 43 : $deviceId.hashCode());
        Object $channel = this.getChannel();
        result = result * 59 + ($channel == null ? 43 : $channel.hashCode());
        Object $eventCode = this.getEventCode();
        result = result * 59 + ($eventCode == null ? 43 : $eventCode.hashCode());
        Object $triggerTime = this.getTriggerTime();
        result = result * 59 + ($triggerTime == null ? 43 : $triggerTime.hashCode());
        Object $receivingTime = this.getReceivingTime();
        result = result * 59 + ($receivingTime == null ? 43 : $receivingTime.hashCode());
        Object $note = this.getNote();
        result = result * 59 + ($note == null ? 43 : $note.hashCode());
        Object $gis = this.getGis();
        result = result * 59 + ($gis == null ? 43 : $gis.hashCode());
        Object $eventPic = this.getEventPic();
        result = result * 59 + ($eventPic == null ? 43 : $eventPic.hashCode());
        Object $systemCode = this.getSystemCode();
        result = result * 59 + ($systemCode == null ? 43 : $systemCode.hashCode());
        Object $relPerson = this.getRelPerson();
        result = result * 59 + ($relPerson == null ? 43 : $relPerson.hashCode());
        Object $dealPerson = this.getDealPerson();
        result = result * 59 + ($dealPerson == null ? 43 : $dealPerson.hashCode());
        return result;
    }

    public String toString() {
        return "AlarmEventInfo(deviceId=" + this.getDeviceId() + ", channel=" + this.getChannel() + ", eventCode=" + this.getEventCode() + ", triggerTime=" + this.getTriggerTime() + ", receivingTime=" + this.getReceivingTime() + ", note=" + this.getNote() + ", gis=" + this.getGis() + ", eventPic=" + this.getEventPic() + ", systemCode=" + this.getSystemCode() + ", relPerson=" + this.getRelPerson() + ", dealPerson=" + this.getDealPerson() + ")";
    }
}
