package br.com.controlefrota.domain;

import java.io.Serializable;
import java.util.Objects;

public class Ordem implements Serializable {

    private static final long serialVersionUID = 1L;

    private Long numeroOrdem;
    private Long codigoMotorista;
    private String nomeMotorista;
    private Integer codigoArea;
    private String finalidade;
    private String destino;
    private Integer codigoRota;
    private String descricaoRota;
    private String nomeTransportadora;
    private String placaVeiculo;
    private Integer codigoVeiculo;
    private String descricaoVeiculo;
    private Long kmAnterior;
    private Long kmAtual;
    private long dataCriacao;
    private long dataAgendamento;
    private String horaPrevistaSaida;
    private long dataFechamento;
    private String horaFechamento;
    private String usuarioCriacao;
    private String usuarioAlteracao;
    private String usuarioFechamento;
    private String statusOrdem;
    private String tipoOrdem;
    private String observacoes;

    public Ordem() {
    }

    public Long getNumeroOrdem() {
        return numeroOrdem;
    }

    public void setNumeroOrdem(Long numeroOrdem) {
        this.numeroOrdem = numeroOrdem;
    }

    public Long getCodigoMotorista() {
        return codigoMotorista;
    }

    public void setCodigoMotorista(Long codigoMotorista) {
        this.codigoMotorista = codigoMotorista;
    }

    public String getNomeMotorista() {
        return nomeMotorista;
    }

    public void setNomeMotorista(String nomeMotorista) {
        this.nomeMotorista = nomeMotorista;
    }

    public Integer getCodigoArea() {
        return codigoArea;
    }

    public void setCodigoArea(Integer codigoArea) {
        this.codigoArea = codigoArea;
    }

    public String getFinalidade() {
        return finalidade;
    }

    public void setFinalidade(String finalidade) {
        this.finalidade = finalidade;
    }

    public String getDestino() {
        return destino;
    }

    public void setDestino(String destino) {
        this.destino = destino;
    }

    public Integer getCodigoRota() {
        return codigoRota;
    }

    public void setCodigoRota(Integer codigoRota) {
        this.codigoRota = codigoRota;
    }

    public String getDescricaoRota() {
        return descricaoRota;
    }

    public void setDescricaoRota(String descricaoRota) {
        this.descricaoRota = descricaoRota;
    }

    public String getNomeTransportadora() {
        return nomeTransportadora;
    }

    public void setNomeTransportadora(String nomeTransportadora) {
        this.nomeTransportadora = nomeTransportadora;
    }

    public String getPlacaVeiculo() {
        return placaVeiculo;
    }

    public void setPlacaVeiculo(String placaVeiculo) {
        this.placaVeiculo = placaVeiculo;
    }

    public Integer getCodigoVeiculo() {
        return codigoVeiculo;
    }

    public void setCodigoVeiculo(Integer codigoVeiculo) {
        this.codigoVeiculo = codigoVeiculo;
    }

    public String getDescricaoVeiculo() {
        return descricaoVeiculo;
    }

    public void setDescricaoVeiculo(String descricaoVeiculo) {
        this.descricaoVeiculo = descricaoVeiculo;
    }

    public Long getKmAnterior() {
        return kmAnterior;
    }

    public void setKmAnterior(Long kmAnterior) {
        this.kmAnterior = kmAnterior;
    }

    public Long getKmAtual() {
        return kmAtual;
    }

    public void setKmAtual(Long kmAtual) {
        this.kmAtual = kmAtual;
    }

    public long getDataCriacao() {
        return dataCriacao;
    }

    public void setDataCriacao(long dataCriacao) {
        this.dataCriacao = dataCriacao;
    }

    public long getDataAgendamento() {
        return dataAgendamento;
    }

    public void setDataAgendamento(long dataAgendamento) {
        this.dataAgendamento = dataAgendamento;
    }

    public String getHoraPrevistaSaida() {
        return horaPrevistaSaida;
    }

    public void setHoraPrevistaSaida(String horaPrevistaSaida) {
        this.horaPrevistaSaida = horaPrevistaSaida;
    }

    public long getDataFechamento() {
        return dataFechamento;
    }

    public void setDataFechamento(long dataFechamento) {
        this.dataFechamento = dataFechamento;
    }

    public String getHoraFechamento() {
        return horaFechamento;
    }

    public void setHoraFechamento(String horaFechamento) {
        this.horaFechamento = horaFechamento;
    }

    public String getUsuarioCriacao() {
        return usuarioCriacao;
    }

    public void setUsuarioCriacao(String usuarioCriacao) {
        this.usuarioCriacao = usuarioCriacao;
    }

    public String getUsuarioAlteracao() {
        return usuarioAlteracao;
    }

    public void setUsuarioAlteracao(String usuarioAlteracao) {
        this.usuarioAlteracao = usuarioAlteracao;
    }

    public String getUsuarioFechamento() {
        return usuarioFechamento;
    }

    public void setUsuarioFechamento(String usuarioFechamento) {
        this.usuarioFechamento = usuarioFechamento;
    }

    public String getStatusOrdem() {
        return statusOrdem;
    }

    public void setStatusOrdem(String statusOrdem) {
        this.statusOrdem = statusOrdem;
    }

    public String getTipoOrdem() {
        return tipoOrdem;
    }

    public void setTipoOrdem(String tipoOrdem) {
        this.tipoOrdem = tipoOrdem;
    }

    public String getObservacoes() {
        return observacoes;
    }

    public void setObservacoes(String observacoes) {
        this.observacoes = observacoes;
    }

    @Override
    public String toString() {
        return "Ordem{" + "numeroOrdem=" + numeroOrdem + ", codigoMotorista=" + codigoMotorista + ", nomeMotorista=" + nomeMotorista + ", codigoArea=" + codigoArea + ", finalidade=" + finalidade + ", destino=" + destino + ", codigoRota=" + codigoRota + ", descricaoRota=" + descricaoRota + ", nomeTransportadora=" + nomeTransportadora + ", placaVeiculo=" + placaVeiculo + ", codigoVeiculo=" + codigoVeiculo + ", descricaoVeiculo=" + descricaoVeiculo + ", kmAnterior=" + kmAnterior + ", kmAtual=" + kmAtual + ", dataCriacao=" + dataCriacao + ", dataAgendamento=" + dataAgendamento + ", horaPrevistaSaida=" + horaPrevistaSaida + ", dataFechamento=" + dataFechamento + ", horaFechamento=" + horaFechamento + ", usuarioCriacao=" + usuarioCriacao + ", usuarioAlteracao=" + usuarioAlteracao + ", usuarioFechamento=" + usuarioFechamento + ", statusOrdem=" + statusOrdem + ", tipoOrdem=" + tipoOrdem + ", observacoes=" + observacoes + '}';
    }

    @Override
    public int hashCode() {
        int hash = 7;
        hash = 37 * hash + Objects.hashCode(this.numeroOrdem);
        return hash;
    }

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final Ordem other = (Ordem) obj;
        return Objects.equals(this.numeroOrdem, other.numeroOrdem);
    }

}
