package com.rjconsultores.ventaboletos.service.impl;

import java.util.Calendar;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.rjconsultores.ventaboletos.dao.ConexionRutaCtrlDAO;
import com.rjconsultores.ventaboletos.entidad.ConexionRutaConf;
import com.rjconsultores.ventaboletos.entidad.ConexionRutaCtrl;
import com.rjconsultores.ventaboletos.service.ConexionRutaCtrlService;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.vo.conexion.ConexionRutaVO;

@Service("conexionServiceRutaCtrl")
public class ConexionRutaCtrlServiceImpl implements ConexionRutaCtrlService {

	@Autowired
	private ConexionRutaCtrlDAO conexionRutaCtrlDAO;
	
	@Override
	@Transactional
	public ConexionRutaCtrl suscribir(ConexionRutaCtrl conexionRutaCtrl) {
		
		conexionRutaCtrl.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
		conexionRutaCtrl.setFecmodif(Calendar.getInstance().getTime());
		conexionRutaCtrl.setActivo(Boolean.TRUE);

		return conexionRutaCtrlDAO.suscribir(conexionRutaCtrl);
	}

	@Override
	public ConexionRutaCtrl actualizacion(ConexionRutaCtrl conexion) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	@Transactional
	public void borrar(ConexionRutaCtrl conexionRutaCtrl) {

		conexionRutaCtrl.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
		conexionRutaCtrl.setFecmodif(Calendar.getInstance().getTime());
		conexionRutaCtrl.setActivo(Boolean.FALSE);

		conexionRutaCtrlDAO.actualizacion(conexionRutaCtrl);

	}

	@Override
	public List<ConexionRutaCtrl> buscarPorConexionCtrl(Long conexcionCtrlId) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public void borrar(List<ConexionRutaCtrl> lsConexion) {

	}

	@Override
	public void suscribirTodos(List<ConexionRutaCtrl> conexiones) {
		// TODO Auto-generated method stub

	}

	@Override
	public List<ConexionRutaVO> buscarConexionesValidas() {
		return conexionRutaCtrlDAO.buscarConexionesValidas();
	}

	@Override
	public List<ConexionRutaVO> buscarConexionesValidas(Integer rutaOrigemId, Integer rutaDestinoId) {
		return conexionRutaCtrlDAO.buscarConexionesValidas(rutaOrigemId, rutaDestinoId);
	}

	@Override
	public List<ConexionRutaCtrl> buscarPorConexionConf(ConexionRutaConf conexionRutaConf) {
		return conexionRutaCtrlDAO.buscarPorConexionConf(conexionRutaConf);
	}

}
