From 00170ab45fb940ef3264510da90e24b741ba6544 Mon Sep 17 00:00:00 2001 From: Erick.sato Date: Thu, 28 Apr 2016 03:07:10 -0300 Subject: [PATCH] [Redmine Atendimento #4698]Grupo ADM menu --- cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/impl/InicializarTabelasCorpServiceImpl.java | 47 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) diff --git a/cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/impl/InicializarTabelasCorpServiceImpl.java b/cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/impl/InicializarTabelasCorpServiceImpl.java index bebf4b0..d87ef81 100644 --- a/cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/impl/InicializarTabelasCorpServiceImpl.java +++ b/cit-tabelas-corp-api/src/main/java/br/com/centralit/api/service/impl/InicializarTabelasCorpServiceImpl.java @@ -1,6 +1,7 @@ package br.com.centralit.api.service.impl; import java.util.ArrayList; +import java.util.Collection; import java.util.List; import org.apache.log4j.Logger; @@ -8,12 +9,17 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import br.com.centralit.api.service.DominioService; +import br.com.centralit.api.service.GrupoService; +import br.com.centralit.api.service.MenuGrupoService; import br.com.centralit.api.service.MenuService; import br.com.centralit.api.service.ModuloService; import br.com.centralit.api.service.PaginaService; import br.com.centralit.framework.model.UtilStartup; +import br.com.centralit.framework.util.UtilColecao; +import br.com.centralit.framework.model.Grupo; import br.com.centralit.framework.model.Menu; import br.com.centralit.framework.model.MenuFile; +import br.com.centralit.framework.model.MenuGrupo; import br.com.centralit.framework.model.Pagina; @Service("inicializarTabelasCorpService") @@ -30,9 +36,48 @@ public class InicializarTabelasCorpServiceImpl extends UtilStartup { @Autowired private ModuloService moduloService; + + @Autowired + private GrupoService grupoService; + + @Autowired + private MenuGrupoService menuGrupoService; + + private Menu menuTabelasCorp; public void gerarCarga() { criarPaginasMenus(); + + if(UtilColecao.isVazio(menuTabelasCorp.getMenuGrupos())){ + menuTabelasCorp.setMenuGrupos(gerarGrupoMaster(menuTabelasCorp)); + this.menuService.merge(menuTabelasCorp); + }else{ + boolean grupoMasterPresente = false; + for (MenuGrupo menuGrupo : menuTabelasCorp.getMenuGrupos()) { + if(menuGrupo.getGrupo().getIsMaster()){ + grupoMasterPresente = true; + break; + } + } + if(!grupoMasterPresente){ + menuTabelasCorp.getMenuGrupos().addAll(gerarGrupoMaster(menuTabelasCorp)); + this.menuService.merge(menuTabelasCorp); + } + } + } + + private List gerarGrupoMaster(Menu menu) { + List menuGrupos = new ArrayList<>(); + Collection gruposMaster = this.grupoService.findGruposMaster(); + for (Grupo grupo : gruposMaster) { + MenuGrupo menuGrupo = new MenuGrupo(); + menuGrupo.setOrganizacao(grupo.getOrganizacao()); + menuGrupo.setMenu(menu); + menuGrupo.setGrupo(grupo); + this.menuGrupoService.save(menuGrupo); + menuGrupos.add(menuGrupo); + } + return menuGrupos; } /** @@ -49,7 +94,7 @@ public class InicializarTabelasCorpServiceImpl extends UtilStartup { dominioJS = this.dominioService.findByChaveAndNome(TIPO_FILE, TIPO_FILE_JS); // Menu pai Corporativo - Menu menuTabelasCorp = new Menu("Corporativo", null, null, null, 3, COR_TABELASCORP, CSS_MENU_TABELASCORP, OPACIDADE_MENU_TABELASCORP, CLASSE_TABELASCORP, ICONE_MENU_CORPORATIVO, moduloSelecionado); + menuTabelasCorp = new Menu("Corporativo", null, null, null, 3, COR_TABELASCORP, CSS_MENU_TABELASCORP, OPACIDADE_MENU_TABELASCORP, CLASSE_TABELASCORP, ICONE_MENU_CORPORATIVO, moduloSelecionado); List includesTabelasCorp = new ArrayList(); includesTabelasCorp.add(new MenuFile(CIT_TABELAS_CORP_WEB_ANGULAR_CUSTOM + "repository/TelefoneRepository.js", dominioJS, menuTabelasCorp)); includesTabelasCorp.add(new MenuFile(CIT_TABELAS_CORP_WEB_ANGULAR_CUSTOM + "repository/TelefoneRepository.min.js", dominioJS, menuTabelasCorp)); -- libgit2 0.21.2