FIXES BUG #6484
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@46198 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
3e60c52404
commit
ddb536e22a
|
@ -27,5 +27,7 @@ public interface PerfilService {
|
|||
public List<Perfil> buscar(String dscPerfil);
|
||||
|
||||
public List<Perfil> buscaPerfilJerarquia(Perfil perfilUsuario);
|
||||
|
||||
public Boolean clonarPerfil(Integer perfilId, String nomePerfil);
|
||||
|
||||
}
|
||||
|
|
|
@ -6,10 +6,31 @@ package com.rjconsultores.ventaboletos.service.impl;
|
|||
|
||||
import com.rjconsultores.ventaboletos.dao.PerfilDAO;
|
||||
import com.rjconsultores.ventaboletos.entidad.Perfil;
|
||||
import com.rjconsultores.ventaboletos.entidad.PerfilFuncion;
|
||||
import com.rjconsultores.ventaboletos.entidad.Pricing;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingAsiento;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingCategoria;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingClase;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingCorrida;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingDia;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingFormapago;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingImporte;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingMarca;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingMercado;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingOcupaAntecipa;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingPuntoVenta;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingRuta;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingTipoPtoVta;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingTipoServicio;
|
||||
import com.rjconsultores.ventaboletos.entidad.PricingVigencia;
|
||||
import com.rjconsultores.ventaboletos.entidad.UsuarioPerfil;
|
||||
import com.rjconsultores.ventaboletos.service.PerfilService;
|
||||
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
|
||||
|
||||
import java.util.ArrayList;
|
||||
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;
|
||||
|
@ -66,4 +87,65 @@ public class PerfilServiceImpl implements PerfilService {
|
|||
public List<Perfil> buscaPerfilJerarquia(Perfil perfilUsuario) {
|
||||
return perfilDAO.buscaPerfilJerarquia(perfilUsuario);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public Boolean clonarPerfil(Integer perfilId, String nomePerfil) {
|
||||
|
||||
Perfil perfil = this.obtenerID(perfilId);
|
||||
Perfil clonePerfil = new Perfil();
|
||||
|
||||
clonePerfil.setDescperfil(nomePerfil);
|
||||
|
||||
// clonePerfil.setActivo(perfil.getActivo()); o método actualizacion ja seta os campos activo usuario e fecmodif
|
||||
clonePerfil.setIndJerarquia(perfil.getIndJerarquia());
|
||||
clonePerfil.setPerfilFuncionList(new ArrayList<PerfilFuncion>());
|
||||
clonePerfil.setUsuarioPerfilList(new ArrayList<UsuarioPerfil>());
|
||||
|
||||
|
||||
clonePerfil = suscribir(clonePerfil);
|
||||
|
||||
clonePerfil = percorrerPerfilAtivoParaClonar(perfil, clonePerfil);
|
||||
|
||||
|
||||
actualizacion(clonePerfil);
|
||||
|
||||
// inativar(clonePricing);
|
||||
|
||||
if (clonePerfil.getPerfilId() != null) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private Perfil percorrerPerfilAtivoParaClonar(Perfil perfil, Perfil clonePerfil) {
|
||||
|
||||
List<UsuarioPerfil> usuarioPerfilList = new ArrayList<UsuarioPerfil>();
|
||||
for(UsuarioPerfil usuarioPerfil : perfil.getUsuarioPerfilList()){
|
||||
UsuarioPerfil cloneUsuarioPerfil = new UsuarioPerfil();
|
||||
cloneUsuarioPerfil.setActivo(usuarioPerfil.getActivo());
|
||||
cloneUsuarioPerfil.setFecmodif(Calendar.getInstance().getTime());
|
||||
cloneUsuarioPerfil.setPerfil(clonePerfil);
|
||||
cloneUsuarioPerfil.setUsuario(usuarioPerfil.getUsuario());
|
||||
cloneUsuarioPerfil.setUsuariomodifId(usuarioPerfil.getUsuariomodifId());
|
||||
cloneUsuarioPerfil.setUsuarioperfilId(usuarioPerfil.getUsuarioperfilId());
|
||||
usuarioPerfilList.add(cloneUsuarioPerfil);
|
||||
}
|
||||
clonePerfil.setUsuarioPerfilList(usuarioPerfilList);
|
||||
|
||||
List<PerfilFuncion> perfilFuncionList = new ArrayList<PerfilFuncion>();
|
||||
for(PerfilFuncion perfilFuncion : perfil.getPerfilFuncionList()){
|
||||
PerfilFuncion clonePerfilFuncion = new PerfilFuncion();
|
||||
clonePerfilFuncion.setActivo(perfilFuncion.getActivo());
|
||||
clonePerfilFuncion.setFecmodif(Calendar.getInstance().getTime());
|
||||
clonePerfilFuncion.setFuncionSistema(perfilFuncion.getFuncionSistema());
|
||||
clonePerfilFuncion.setIndLectura(perfilFuncion.getIndLectura());
|
||||
clonePerfilFuncion.setPerfil(clonePerfil);
|
||||
clonePerfilFuncion.setUsuarioId(perfilFuncion.getUsuarioId());
|
||||
perfilFuncionList.add(clonePerfilFuncion);
|
||||
}
|
||||
clonePerfil.setPerfilFuncionList(perfilFuncionList);
|
||||
|
||||
return clonePerfil;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue