/* 
* Copyright 2016 Agencia Estatal de Administración Tibutaria
*
* Licencia con arreglo a la EUPL, Versión 1.1 o –en cuanto
* sean aprobadas por la Comisión Europea– versiones
* posteriores de la EUPL (la «Licencia»);
* Solo podrá usarse esta obra si se respeta la Licencia.
* Puede obtenerse una copia de la Licencia en:
*  
* https://joinup.ec.europa.eu/software/page/eupl
*  
* Salvo cuando lo exija la legislación aplicable o se acuerde
* por escrito, el programa distribuido con arreglo a la
* Licencia se distribuye «TAL CUAL», SIN GARANTÍAS NI CONDICIONES
* DE NINGÚN TIPO, ni expresasni implícitas.
*
* Véase la Licencia en el idioma concreto que rige los permisos y 
* limitaciones que establece la Licencia.
*/ 

package administrador.datos;

import administrador.utiles.Global;

public class RegistroCola implements IRegistro {

   String codigo = "";
   String descripcion = "";
   int ultimoTicket;
   int bonificacion;
   String estado = "";
   String tipoNavegacion = "";
   String colaEstadistica = "";
   boolean citaPrevia = false;
   int pendientes;
   String retraso = "";
   boolean cerrada = false;
   int umbralSuplencia;
   public int operadores;
   public int operadoresSup;
   public String strOperadores;
   String horaEstimada = "";
   boolean visible = true;
   String horaCalculada2="";
   public boolean actualizado = false;

   public RegistroCola(String msg) {
      String partes[] = Global.split(msg, '|');
      try {
         codigo = partes[1];
         descripcion = partes[2];
         bonificacion = Integer.parseInt(partes[3]) * 60 * 1000;
         ultimoTicket = Integer.parseInt(partes[4]);
         estado = partes[5];
         colaEstadistica = partes[6];
         citaPrevia = partes[7].equals("1");
         cerrada = partes[8].equals("1");
         umbralSuplencia = Integer.parseInt(partes[9]);
         horaCalculada2 = partes[9];
      } catch (Exception exc) {
         exc.printStackTrace();
      }
   }

   @Override
   public String getId() {
      return codigo;
   }
    
   public String getEstado() {
      return estado;
   }

   public String getDescripcion() {
      return descripcion;
   }
  public String getCodigo() {
      return codigo;
   }
   public int getPresentes() {
      return pendientes;
   }

   public int getBonificacion() {
      return bonificacion;
   }

   public String getRetraso() {
      return retraso;
   }
   public int getUmbralSuplencia() {
   return umbralSuplencia; 
}
   public boolean esRenta() {
      return colaEstadistica.equals("5");
   }

   public boolean estaCerrada() {
      return cerrada;
   }

   @Override
   public boolean estaDesconectado() {
      return !visible;
   }

   public void setVisible(boolean v) {
      visible = v;
   }

   public boolean esCitaPrevia() {
      return citaPrevia;
   }

   public void setTicket(String ticket) {
      ultimoTicket = Integer.parseInt(ticket);
   }

   public void setRetraso(String retr) {
      retraso = retr;
   }

   public void setPresentes(String pres) {
      pendientes = Integer.parseInt(pres);
   }

   public String getHoraEstimada() {
      return horaEstimada;
   }

   public int getUltimoTicket() {
      return ultimoTicket;
   }
   public void setHoraCalculada2(String horacal) {
      horaCalculada2=horacal;
   }
    public String getHoraCalculada2() {
      return horaCalculada2;
    }
   public void setHoraEstimada(String hest) {
      if (hest.equals("null")) {
         horaEstimada = "";
         return;
      }
      java.sql.Timestamp ts = java.sql.Timestamp.valueOf(hest);
      horaEstimada = administrador.utiles.Fecha.formatoHoraHM(new java.util.Date(ts.getTime()));
   }
   public void setUmbralSuplencia(String umbraSup) {
      umbralSuplencia = Integer.parseInt(umbraSup)  ;
   }
   public void setUmbralSuplencia(int umbraSup) {
      umbralSuplencia = umbraSup ;
   }
}
