/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package com.rjconsultores.ventaboletos.service.impl; import java.util.Calendar; import java.util.List; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.rjconsultores.ventaboletos.dao.FormaPagoDAO; import com.rjconsultores.ventaboletos.entidad.FormaPago; import com.rjconsultores.ventaboletos.service.FormaPagoService; import com.rjconsultores.ventaboletos.service.LogAuditoriaService; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; /** * * @author Administrador */ @Service("formaPagoService") public class FormaPagoServiceImpl implements FormaPagoService { private Integer[] formasPagoEspeciales = {4, 5, 6, 9, 10, 11, 96, 97, 98, 99}; @Autowired private FormaPagoDAO formaPagoDAO; private static Logger log = LogManager.getLogger(PuntoVentaServiceImpl.class); @Autowired private LogAuditoriaService logAuditoriaService; public List obtenerTodos() { return formaPagoDAO.obtenerTodos(); } public FormaPago obtenerID(Short id) { FormaPago formaPago = formaPagoDAO.obtenerID(id); try { formaPago.clonar(); } catch (Exception e) { log.error(e.getMessage(), e); } return formaPago; } @Transactional public FormaPago suscribir(FormaPago entidad) { entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); entidad.setFecmodif(Calendar.getInstance().getTime()); entidad.setActivo(Boolean.TRUE); formaPagoDAO.suscribir(entidad); logAuditoriaService.auditar(null, entidad, null); return entidad; } @Transactional public FormaPago actualizacion(FormaPago entidad) { FormaPago originalClone = null; try { originalClone = entidad.getCloneObject(); } catch (CloneNotSupportedException e) { log.error(e.getMessage(), e); } entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); entidad.setFecmodif(Calendar.getInstance().getTime()); entidad.setActivo(Boolean.TRUE); formaPagoDAO.actualizacion(entidad); logAuditoriaService.auditar(originalClone, entidad, -1); return entidad; } @Transactional public void borrar(FormaPago entidad) { entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); entidad.setFecmodif(Calendar.getInstance().getTime()); entidad.setActivo(Boolean.FALSE); formaPagoDAO.actualizacion(entidad); logAuditoriaService.auditarExclusao(entidad, null); } public List buscarPorDescricao(String descpago) { return formaPagoDAO.buscarPorDescricao(descpago); } public List buscarFormasPagoExceptoEspeciales() { return formaPagoDAO.buscarTodosExceto(formasPagoEspeciales); } }