Commit 677ac06c7caa7e89ef279ffcbc395cd913e95b1d

Authored by Wilmer Ramones
1 parent 1e55fda266
Exists in master

creada la estrategia y los recursos muchos a muchos dentro de la relacion uno a …

…muchos muchos a uno.... wow..... :) :) :)   excelente
src/AppBundle/Controller/PlanificacionSeccionController.php
... ... @@ -56,7 +56,7 @@ class PlanificacionSeccionController extends Controller
56 56  
57 57 if ($form->isSubmitted() && $form->isValid()) {
58 58  
59   -
  59 + //var_dump($p->getId()); exit;
60 60  
61 61 // ciclo a traves de las relaciones para cada contenido
62 62 foreach($planificacionSeccion->getContenido() as $contenido){
... ... @@ -65,13 +65,29 @@ class PlanificacionSeccionController extends Controller
65 65 }
66 66  
67 67 foreach($planificacionSeccion->getObjetivoEspecifico() as $especifico){
68   - $especifico->setPlanificacionSeccionId($planificacionSeccion);
  68 + $especifico->setPlanificacionSeccionId($planificacionSeccion);
  69 +
69 70 }
70 71  
71   - foreach($planificacionSeccion->getEstrategia() as $estrategias){
72   - $estrategias->setPlanificacionSeccionId($planificacionSeccion);
  72 + foreach ($planificacionSeccion->getEstrategia() as $estrategias){
  73 + $estrategias->setPlanificacionSeccionId($planificacionSeccion);
  74 +
  75 +
73 76 }
74 77  
  78 + /*foreach($planificacionSeccion->getEstrategia() as $estrategias){
  79 + $estrategias->setPlanificacionSeccionId($planificacionSeccion);
  80 + foreach($estrategias->getTecnicasPlanificacion() as $t){
  81 + $estrategias->addTecnicasPlanificacion($t);
  82 + }
  83 + foreach($estrategias->getRecursosPlanificacion() as $r){
  84 + $estrategias->addRecursosPlanificacion($r);
  85 + }
  86 +
  87 + }*/
  88 +
  89 +
  90 +
75 91 //var_dump($seccion->getPlanificacion()->count()); exit;
76 92 $em = $this->getDoctrine()->getManager();
77 93 $em->persist($planificacionSeccion);
... ...
src/AppBundle/Entity/PlanificacionSeccionEstrategia.php
... ... @@ -20,33 +20,42 @@ class PlanificacionSeccionEstrategia
20 20 * @ORM\Column(name="id", type="integer", nullable=false, options={"comment" = "Identificador del municipio"})
21 21 * @ORM\Id
22 22 * @ORM\GeneratedValue(strategy="IDENTITY")
23   - * @ORM\SequenceGenerator(sequenceName="municipio_id_seq", allocationSize=1, initialValue=1)
  23 + * @ORM\SequenceGenerator(sequenceName="planificacion_seccion_estrategia_id_seq", allocationSize=1, initialValue=1)
24 24 */
25 25 private $id;
26 26  
27   - /**
28   - * @var \AppBundle\Entity\TecnicasPlanificacion
  27 + /**
  28 + * @var \Doctrine\Common\Collections\Collection
29 29 *
30   - * @ORM\ManyToOne(targetEntity="AppBundle\Entity\TecnicasPlanificacion")
31   - * @ORM\JoinColumns({
32   - * @ORM\JoinColumn(name="id_tecnicas_planificacion", referencedColumnName="id", nullable=false)
33   - * })
  30 + * @ORM\ManyToMany(targetEntity="AppBundle\Entity\TecnicasPlanificacion", inversedBy="estrategia")
  31 + * @ORM\JoinTable(name="estrategia_tecnica",
  32 + * joinColumns={
  33 + * @ORM\JoinColumn(name="estrategia_id", referencedColumnName="id", nullable=false)
  34 + * },
  35 + * inverseJoinColumns={
  36 + * @ORM\JoinColumn(name="tecnica_id", referencedColumnName="id", nullable=false)
  37 + * }
  38 + * )
34 39 */
35   - private $idTecnicasPlanificacion;
  40 + protected $tecnicas;
36 41  
37 42  
38 43 /**
39   - * @var \AppBundle\Entity\RecursosPlanificacion
  44 + * @var \Doctrine\Common\Collections\Collection
40 45 *
41   - * @ORM\ManyToOne(targetEntity="AppBundle\Entity\RecursosPlanificacion")
42   - * @ORM\JoinColumns({
43   - * @ORM\JoinColumn(name="id_recursos_planificacion", referencedColumnName="id", nullable=false)
44   - * })
  46 + * @ORM\ManyToMany(targetEntity="AppBundle\Entity\RecursosPlanificacion", inversedBy="estrategia")
  47 + * @ORM\JoinTable(name="estrategia_recurso",
  48 + * joinColumns={
  49 + * @ORM\JoinColumn(name="estrategia_id", referencedColumnName="id", nullable=false)
  50 + * },
  51 + * inverseJoinColumns={
  52 + * @ORM\JoinColumn(name="recurso_id", referencedColumnName="id", nullable=false)
  53 + * }
  54 + * )
45 55 */
46   - private $idRecursosPlanificacion;
  56 + protected $recursos;
47 57  
48   -
49   -
  58 +
50 59 /**
51 60 * @ORM\ManyToOne(targetEntity="PlanificacionSeccion", inversedBy="estrategia")
52 61 * @ORM\JoinColumn(name="planificacion_seccion_id", referencedColumnName="id")
... ... @@ -54,10 +63,18 @@ class PlanificacionSeccionEstrategia
54 63 private $planificacionSeccionId;
55 64  
56 65  
57   -
58 66  
59   -
60 67  
  68 +
  69 +
  70 + /**
  71 + * Constructor
  72 + */
  73 + public function __construct()
  74 + {
  75 + $this->tecnicas = new \Doctrine\Common\Collections\ArrayCollection();
  76 + $this->recursos = new \Doctrine\Common\Collections\ArrayCollection();
  77 + }
61 78  
62 79 /**
63 80 * Get id
... ... @@ -70,49 +87,69 @@ class PlanificacionSeccionEstrategia
70 87 }
71 88  
72 89 /**
73   - * Set idTecnicasPlanificacion
  90 + * Add tecnicas
74 91 *
75   - * @param \AppBundle\Entity\TecnicasPlanificacion $idTecnicasPlanificacion
  92 + * @param \AppBundle\Entity\TecnicasPlanificacion $tecnicas
76 93 * @return PlanificacionSeccionEstrategia
77 94 */
78   - public function setIdTecnicasPlanificacion(\AppBundle\Entity\TecnicasPlanificacion $idTecnicasPlanificacion)
  95 + public function addTecnica(\AppBundle\Entity\TecnicasPlanificacion $tecnicas)
79 96 {
80   - $this->idTecnicasPlanificacion = $idTecnicasPlanificacion;
  97 + $this->tecnicas[] = $tecnicas;
81 98  
82 99 return $this;
83 100 }
84 101  
85 102 /**
86   - * Get idTecnicasPlanificacion
  103 + * Remove tecnicas
87 104 *
88   - * @return \AppBundle\Entity\TecnicasPlanificacion
  105 + * @param \AppBundle\Entity\TecnicasPlanificacion $tecnicas
89 106 */
90   - public function getIdTecnicasPlanificacion()
  107 + public function removeTecnica(\AppBundle\Entity\TecnicasPlanificacion $tecnicas)
91 108 {
92   - return $this->idTecnicasPlanificacion;
  109 + $this->tecnicas->removeElement($tecnicas);
93 110 }
94 111  
95 112 /**
96   - * Set idRecursosPlanificacion
  113 + * Get tecnicas
97 114 *
98   - * @param \AppBundle\Entity\RecursosPlanificacion $idRecursosPlanificacion
  115 + * @return \Doctrine\Common\Collections\Collection
  116 + */
  117 + public function getTecnicas()
  118 + {
  119 + return $this->tecnicas;
  120 + }
  121 +
  122 + /**
  123 + * Add recursos
  124 + *
  125 + * @param \AppBundle\Entity\RecursosPlanificacion $recursos
99 126 * @return PlanificacionSeccionEstrategia
100 127 */
101   - public function setIdRecursosPlanificacion(\AppBundle\Entity\RecursosPlanificacion $idRecursosPlanificacion)
  128 + public function addRecurso(\AppBundle\Entity\RecursosPlanificacion $recursos)
102 129 {
103   - $this->idRecursosPlanificacion = $idRecursosPlanificacion;
  130 + $this->recursos[] = $recursos;
104 131  
105 132 return $this;
106 133 }
107 134  
108 135 /**
109   - * Get idRecursosPlanificacion
  136 + * Remove recursos
  137 + *
  138 + * @param \AppBundle\Entity\RecursosPlanificacion $recursos
  139 + */
  140 + public function removeRecurso(\AppBundle\Entity\RecursosPlanificacion $recursos)
  141 + {
  142 + $this->recursos->removeElement($recursos);
  143 + }
  144 +
  145 + /**
  146 + * Get recursos
110 147 *
111   - * @return \AppBundle\Entity\RecursosPlanificacion
  148 + * @return \Doctrine\Common\Collections\Collection
112 149 */
113   - public function getIdRecursosPlanificacion()
  150 + public function getRecursos()
114 151 {
115   - return $this->idRecursosPlanificacion;
  152 + return $this->recursos;
116 153 }
117 154  
118 155 /**
... ...
src/AppBundle/Entity/PlanificacionSeccionEstrategia.php~
... ... @@ -20,33 +20,42 @@ class PlanificacionSeccionEstrategia
20 20 * @ORM\Column(name="id", type="integer", nullable=false, options={"comment" = "Identificador del municipio"})
21 21 * @ORM\Id
22 22 * @ORM\GeneratedValue(strategy="IDENTITY")
23   - * @ORM\SequenceGenerator(sequenceName="municipio_id_seq", allocationSize=1, initialValue=1)
  23 + * @ORM\SequenceGenerator(sequenceName="planificacion_seccion_estrategia_id_seq", allocationSize=1, initialValue=1)
24 24 */
25 25 private $id;
26 26  
27   - /**
28   - * @var \AppBundle\Entity\TecnicasPlanificacion
  27 + /**
  28 + * @var \Doctrine\Common\Collections\Collection
29 29 *
30   - * @ORM\ManyToOne(targetEntity="AppBundle\Entity\TecnicasPlanificacion")
31   - * @ORM\JoinColumns({
32   - * @ORM\JoinColumn(name="id_tecnicas_planificacion", referencedColumnName="id", nullable=false)
33   - * })
  30 + * @ORM\ManyToMany(targetEntity="AppBundle\Entity\TecnicasPlanificacion", inversedBy="estrategia")
  31 + * @ORM\JoinTable(name="estrategia_tecnica",
  32 + * joinColumns={
  33 + * @ORM\JoinColumn(name="estrategia_id", referencedColumnName="id", nullable=false)
  34 + * },
  35 + * inverseJoinColumns={
  36 + * @ORM\JoinColumn(name="tecnica_id", referencedColumnName="id", nullable=false)
  37 + * }
  38 + * )
34 39 */
35   - private $idTecnicasPlanificacion;
  40 + protected $tecnicas;
36 41  
37 42  
38 43 /**
39   - * @var \AppBundle\Entity\RecursosPlanificacion
  44 + * @var \Doctrine\Common\Collections\Collection
40 45 *
41   - * @ORM\ManyToOne(targetEntity="AppBundle\Entity\RecursosPlanificacion")
42   - * @ORM\JoinColumns({
43   - * @ORM\JoinColumn(name="id_recursos_planificacion", referencedColumnName="id", nullable=false)
44   - * })
  46 + * @ORM\ManyToMany(targetEntity="AppBundle\Entity\RecursosPlanificacion", inversedBy="estrategia")
  47 + * @ORM\JoinTable(name="estrategia_recurso",
  48 + * joinColumns={
  49 + * @ORM\JoinColumn(name="estrategia_id", referencedColumnName="id", nullable=false)
  50 + * },
  51 + * inverseJoinColumns={
  52 + * @ORM\JoinColumn(name="recurso_id", referencedColumnName="id", nullable=false)
  53 + * }
  54 + * )
45 55 */
46   - private $idRecursosPlanificacion;
  56 + protected $recursos;
47 57  
48   -
49   -
  58 +
50 59 /**
51 60 * @ORM\ManyToOne(targetEntity="PlanificacionSeccion", inversedBy="estrategia")
52 61 * @ORM\JoinColumn(name="planificacion_seccion_id", referencedColumnName="id")
... ... @@ -54,8 +63,8 @@ class PlanificacionSeccionEstrategia
54 63 private $planificacionSeccionId;
55 64  
56 65  
57   -
58 66  
59   -
  67 +
  68 +
60 69  
61 70 }
... ...
src/AppBundle/Entity/RecursosPlanificacion.php
... ... @@ -29,14 +29,26 @@ class RecursosPlanificacion
29 29 * @ORM\SequenceGenerator(sequenceName="municipio_id_seq", allocationSize=1, initialValue=1)
30 30 */
31 31 private $id;
  32 +
  33 + /**
  34 + * @var \Doctrine\Common\Collections\Collection
  35 + *
  36 + * @ORM\ManyToMany(targetEntity="AppBundle\Entity\PlanificacionSeccionEstrategia", mappedBy="recursos")
  37 + */
  38 + protected $estrategia;
32 39  
33 40  
  41 +
  42 +
  43 +
  44 +
34 45  
35 46 /**
36   - * @return string
  47 + * Constructor
37 48 */
38   - public function __toString() {
39   - return $this->getNombre();
  49 + public function __construct()
  50 + {
  51 + $this->estrategia = new \Doctrine\Common\Collections\ArrayCollection();
40 52 }
41 53  
42 54 /**
... ... @@ -71,4 +83,44 @@ class RecursosPlanificacion
71 83 {
72 84 return $this->id;
73 85 }
  86 +
  87 + /**
  88 + * Add estrategia
  89 + *
  90 + * @param \AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia
  91 + * @return RecursosPlanificacion
  92 + */
  93 + public function addEstrategium(\AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia)
  94 + {
  95 + $this->estrategia[] = $estrategia;
  96 +
  97 + return $this;
  98 + }
  99 +
  100 + /**
  101 + * Remove estrategia
  102 + *
  103 + * @param \AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia
  104 + */
  105 + public function removeEstrategium(\AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia)
  106 + {
  107 + $this->estrategia->removeElement($estrategia);
  108 + }
  109 +
  110 + /**
  111 + * Get estrategia
  112 + *
  113 + * @return \Doctrine\Common\Collections\Collection
  114 + */
  115 + public function getEstrategia()
  116 + {
  117 + return $this->estrategia;
  118 + }
  119 +
  120 + /**
  121 + * @return string
  122 + */
  123 + public function __toString() {
  124 + return $this->getNombre();
  125 + }
74 126 }
... ...
src/AppBundle/Entity/RecursosPlanificacion.php~
... ... @@ -29,15 +29,18 @@ class RecursosPlanificacion
29 29 * @ORM\SequenceGenerator(sequenceName="municipio_id_seq", allocationSize=1, initialValue=1)
30 30 */
31 31 private $id;
  32 +
  33 + /**
  34 + * @var \Doctrine\Common\Collections\Collection
  35 + *
  36 + * @ORM\ManyToMany(targetEntity="AppBundle\Entity\PlanificacionSeccionEstrategia", mappedBy="tecnica")
  37 + */
  38 + protected $estrategia;
32 39  
  40 +
33 41  
34   -
35 42  
36 43  
37   - /**
38   - * @return string
39   - */
40   - public function __toString() {
41   - return $this->getNombre();
42   - }
  44 +
  45 +
43 46 }
... ...
src/AppBundle/Entity/TecnicasPlanificacion.php
... ... @@ -29,8 +29,24 @@ class TecnicasPlanificacion
29 29 * @ORM\SequenceGenerator(sequenceName="municipio_id_seq", allocationSize=1, initialValue=1)
30 30 */
31 31 private $id;
32   -
33   -
  32 +
  33 +
  34 + /**
  35 + * @var \Doctrine\Common\Collections\Collection
  36 + *
  37 + * @ORM\ManyToMany(targetEntity="AppBundle\Entity\PlanificacionSeccionEstrategia", mappedBy="tecnicas", cascade={"all"})
  38 + */
  39 + protected $estrategia;
  40 +
  41 +
  42 +
  43 + /**
  44 + * Constructor
  45 + */
  46 + public function __construct()
  47 + {
  48 + $this->estrategia = new \Doctrine\Common\Collections\ArrayCollection();
  49 + }
34 50  
35 51 /**
36 52 * Set nombre
... ... @@ -64,6 +80,39 @@ class TecnicasPlanificacion
64 80 {
65 81 return $this->id;
66 82 }
  83 +
  84 + /**
  85 + * Add estrategia
  86 + *
  87 + * @param \AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia
  88 + * @return TecnicasPlanificacion
  89 + */
  90 + public function addEstrategium(\AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia)
  91 + {
  92 + $this->estrategia[] = $estrategia;
  93 +
  94 + return $this;
  95 + }
  96 +
  97 + /**
  98 + * Remove estrategia
  99 + *
  100 + * @param \AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia
  101 + */
  102 + public function removeEstrategium(\AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia)
  103 + {
  104 + $this->estrategia->removeElement($estrategia);
  105 + }
  106 +
  107 + /**
  108 + * Get estrategia
  109 + *
  110 + * @return \Doctrine\Common\Collections\Collection
  111 + */
  112 + public function getEstrategia()
  113 + {
  114 + return $this->estrategia;
  115 + }
67 116  
68 117 /**
69 118 * @return string
... ... @@ -72,3 +121,4 @@ class TecnicasPlanificacion
72 121 return $this->getNombre();
73 122 }
74 123 }
  124 +
... ...
src/AppBundle/Entity/TecnicasPlanificacion.php~
... ... @@ -29,6 +29,15 @@ class TecnicasPlanificacion
29 29 * @ORM\SequenceGenerator(sequenceName="municipio_id_seq", allocationSize=1, initialValue=1)
30 30 */
31 31 private $id;
32   -
33   -
34   -}
35 32 \ No newline at end of file
  33 +
  34 +
  35 + /**
  36 + * @var \Doctrine\Common\Collections\Collection
  37 + *
  38 + * @ORM\ManyToMany(targetEntity="AppBundle\Entity\PlanificacionSeccionEstrategia", mappedBy="tecnica")
  39 + */
  40 + protected $estrategia;
  41 +
  42 +
  43 +
  44 +}
... ...
src/AppBundle/Form/PlanificacionSeccionEstrategiaType.php
... ... @@ -5,6 +5,7 @@ namespace AppBundle\Form;
5 5 use Symfony\Component\Form\AbstractType;
6 6 use Symfony\Component\Form\FormBuilderInterface;
7 7 use Symfony\Component\OptionsResolver\OptionsResolver;
  8 +use Symfony\Bridge\Doctrine\Form\Type\EntityType;
8 9  
9 10 class PlanificacionSeccionEstrategiaType extends AbstractType
10 11 {
... ... @@ -15,9 +16,16 @@ class PlanificacionSeccionEstrategiaType extends AbstractType
15 16 public function buildForm(FormBuilderInterface $builder, array $options)
16 17 {
17 18 $builder
18   - ->add('idTecnicasPlanificacion')
19   - ->add('idRecursosPlanificacion')
20   -
  19 + ->add('tecnicas', EntityType::class, array(
  20 + 'class' => 'AppBundle:TecnicasPlanificacion',
  21 + 'multiple' => TRUE,
  22 + 'expanded' => TRUE,
  23 + ))
  24 + ->add('recursos', EntityType::class, array(
  25 + 'class' => 'AppBundle:RecursosPlanificacion',
  26 + 'multiple' => TRUE,
  27 + 'expanded' => TRUE,
  28 + ))
21 29 ;
22 30 }
23 31  
... ...