Commit 88edaeafe84d9dc7b17861ee8df8c7201e446dba
Committed by
Eduardo Santos
1 parent
d2df0718
Exists in
master
and in
1 other branch
Desabilita por padrão a coleta de patrimônio em todos os módulos
Showing
2 changed files
with
64 additions
and
12 deletions
Show diff stats
src/Cacic/CommonBundle/DoctrineMigrations/Version20140527164952.php
0 → 100644
@@ -0,0 +1,48 @@ | @@ -0,0 +1,48 @@ | ||
1 | +<?php | ||
2 | + | ||
3 | +namespace Cacic\CommonBundle\Migrations; | ||
4 | + | ||
5 | +use Symfony\Component\DependencyInjection\ContainerAwareInterface; | ||
6 | +use Symfony\Component\DependencyInjection\ContainerInterface; | ||
7 | +use Doctrine\DBAL\Migrations\AbstractMigration; | ||
8 | +use Doctrine\DBAL\Schema\Schema; | ||
9 | + | ||
10 | + | ||
11 | +/** | ||
12 | + * Auto-generated Migration: Please modify to your needs! | ||
13 | + */ | ||
14 | +class Version20140527164952 extends AbstractMigration implements ContainerAwareInterface | ||
15 | +{ | ||
16 | + private $container; | ||
17 | + | ||
18 | + public function setContainer(ContainerInterface $container = null) | ||
19 | + { | ||
20 | + $this->container = $container; | ||
21 | + } | ||
22 | + | ||
23 | + public function up(Schema $schema) | ||
24 | + { | ||
25 | + // this up() migration is auto-generated, please modify it to your needs | ||
26 | + $em = $this->container->get('doctrine.orm.entity_manager'); | ||
27 | + $logger = $this->container->get('logger'); | ||
28 | + $modulos = $em->getRepository('CacicCommonBundle:Acao')->findBy( array('csOpcional' => 'N') ); | ||
29 | + | ||
30 | + foreach ($modulos as $elm) { | ||
31 | + // PEga todos os módulos que são opcionais e remove da tabela acao_rede | ||
32 | + $acoes = $em->getRepository('CacicCommonBundle:AcaoRede')->findBy( array('acao' => $elm->getIdAcao() ) ); | ||
33 | + | ||
34 | + foreach ($acoes as $acao) { | ||
35 | + $em->remove($acao); | ||
36 | + } | ||
37 | + } | ||
38 | + | ||
39 | + $em->flush(); | ||
40 | + | ||
41 | + } | ||
42 | + | ||
43 | + public function down(Schema $schema) | ||
44 | + { | ||
45 | + // this down() migration is auto-generated, please modify it to your needs | ||
46 | + | ||
47 | + } | ||
48 | +} |
src/Cacic/CommonBundle/Entity/AcaoRedeRepository.php
@@ -84,24 +84,28 @@ class AcaoRedeRepository extends EntityRepository | @@ -84,24 +84,28 @@ class AcaoRedeRepository extends EntityRepository | ||
84 | 84 | ||
85 | foreach ($redes as $novaRede) { | 85 | foreach ($redes as $novaRede) { |
86 | 86 | ||
87 | + // Primeiro apaga todas as ações | ||
88 | + $acaoRede = $this->findBy( array( 'rede' => $novaRede ) ); | ||
89 | + | ||
90 | + foreach ($acaoRede as $acao) { | ||
91 | + $em->remove($acao); | ||
92 | + } | ||
93 | + $em->flush(); | ||
94 | + | ||
87 | // Para cada rede, habilita as ações | 95 | // Para cada rede, habilita as ações |
88 | foreach ($acoes as $novaAcao){ | 96 | foreach ($acoes as $novaAcao){ |
89 | // com excessão do módulo patrimonio, que inicialmente é desabilitado | 97 | // com excessão do módulo patrimonio, que inicialmente é desabilitado |
90 | - if ($novaAcao->getIdAcao() != "col_patr"){ | ||
91 | - $new = $this->find( array( 'acao' => $novaAcao->getIdAcao(), 'rede' => $novaRede->getIdRede() )); | 98 | + if ( $novaAcao->getCsOpcional() == 'S' ){ |
92 | 99 | ||
93 | - // Se não existir, cria a ação para a rede | ||
94 | - if ( empty($new) ) { | ||
95 | - $new = new AcaoRede(); | ||
96 | - } | 100 | + $new = new AcaoRede(); |
97 | 101 | ||
98 | - // Agora cria a ação | ||
99 | - $new->setAcao($novaAcao); | ||
100 | - $new->setRede($novaRede); | ||
101 | - $em->persist($new); | 102 | + // Agora cria a ação |
103 | + $new->setAcao($novaAcao); | ||
104 | + $new->setRede($novaRede); | ||
105 | + $em->persist($new); | ||
102 | 106 | ||
103 | - // Grava as mudanças | ||
104 | - $em->flush(); | 107 | + // Grava as mudanças |
108 | + $em->flush(); | ||
105 | } | 109 | } |
106 | } | 110 | } |
107 | 111 |