package com.rjconsultores.ventaboletos.service.impl;

import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente;
import com.rjconsultores.ventaboletos.entidad.SeguroTarifa;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.rjconsultores.ventaboletos.dao.SeguroTarifaDAO;
import com.rjconsultores.ventaboletos.service.SeguroTarifaService;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import java.util.Calendar;
import org.springframework.transaction.annotation.Transactional;

@Service("seguroTarifaService")
public class SeguroTarifaServiceImpl implements SeguroTarifaService {

	@Autowired
	private SeguroTarifaDAO seguroTarifaDAO;

	public List<SeguroTarifa> obtenerTodos() {
		return seguroTarifaDAO.obtenerTodos();
	}

	public SeguroTarifa obtenerID(Integer id) {
		return seguroTarifaDAO.obtenerID(id);
	}

	@Transactional
	public SeguroTarifa suscribir(SeguroTarifa entidad) {
		entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
		entidad.setFecmodif(Calendar.getInstance().getTime());
		entidad.setActivo(Boolean.TRUE);
		return seguroTarifaDAO.suscribir(entidad);
	}

	@Transactional
	public SeguroTarifa actualizacion(SeguroTarifa entidad) {
		entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
		entidad.setFecmodif(Calendar.getInstance().getTime());
		entidad.setActivo(Boolean.TRUE);
		return seguroTarifaDAO.actualizacion(entidad);
	}

	@Transactional
	public void borrar(SeguroTarifa entidad) {
		entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
		entidad.setFecmodif(Calendar.getInstance().getTime());
		entidad.setActivo(Boolean.FALSE);
		seguroTarifaDAO.actualizacion(entidad);
	}

	public List<SeguroTarifa> buscarPorOrgao(OrgaoConcedente orgao) {
		return seguroTarifaDAO.buscarPorOrgao(orgao);
	}
}
