Commit 0efc00cf6c47fdd7cfa3187ff9cb783001e0adc5
1 parent
f4469e9f37
Exists in
master
creada la pllanificacion de la seccion del docente
Showing
12 changed files
with
763 additions
and
168 deletions
Show diff stats
app/Resources/views/planificacionseccion/index.html.twig
1 | -{% extends 'base.html.twig' %} | 1 | +{% extends 'base_app.html.twig' %} |
2 | 2 | ||
3 | {% block body %} | 3 | {% block body %} |
4 | - <h1>PlanificacionSeccion list</h1> | 4 | + <h1>Listado de Secciones Sin Planificacion</h1> |
5 | 5 | ||
6 | - <table> | 6 | + <table class="table table-bordered table-hover table-condensed"> |
7 | <thead> | 7 | <thead> |
8 | <tr> | 8 | <tr> |
9 | - <th>Fecha_creacion</th> | ||
10 | - <th>Fecha_ultima_actualizacion</th> | ||
11 | - <th>Observacion</th> | ||
12 | - <th>Id</th> | ||
13 | - <th>Actions</th> | 9 | + <th>Unidad Curricular</th> |
10 | + <th>Seccion</th> | ||
11 | + <th>Cantidad Planificada</th> | ||
12 | + <th>Acciones</th> | ||
14 | </tr> | 13 | </tr> |
15 | </thead> | 14 | </thead> |
16 | <tbody> | 15 | <tbody> |
17 | - {% for planificacionSeccion in planificacionSeccions %} | 16 | + {% for seccion in secciones %} |
18 | <tr> | 17 | <tr> |
19 | - <td><a href="{{ path('ceapp_docente_planificacion_show', { 'id': planificacionSeccion.id }) }}">{{ planificacionSeccion.fechacreacion }}</a></td> | ||
20 | - <td>{% if planificacionSeccion.fechaultimaactualizacion %}{{ planificacionSeccion.fechaultimaactualizacion|date('Y-m-d H:i:s') }}{% endif %}</td> | ||
21 | - <td>{{ planificacionSeccion.observacion }}</td> | ||
22 | - <td>{{ planificacionSeccion.id }}</td> | 18 | + <td><a href="{{ path('ceapp_docente_planificacion_new', { 'seccion': seccion.id }) }}">{{ seccion.ofertaAcademica }}</a></td> |
19 | + <td>{{ seccion.nombre }}</td> | ||
20 | + <td> | ||
21 | + {{ seccion.planificacion | length}} temas de {{ seccion.ofertaAcademica.idMallaCurricularUc.idUnidadCurricularVolumen.temas | length }} a planificar | ||
22 | + {% set porcentaje = 0 %} | ||
23 | + {% if seccion.ofertaAcademica.idMallaCurricularUc.idUnidadCurricularVolumen.temas | length > 0 %}{% set porcentaje = ( seccion.planificacion | length * 100 ) / seccion.ofertaAcademica.idMallaCurricularUc.idUnidadCurricularVolumen.temas | length %}{% endif %} | ||
24 | + <div class="progress"> | ||
25 | + <div class="progress-bar progress-bar-success progress-bar-striped" role="progressbar" aria-valuenow="{{ seccion.planificacion | length}}" aria-valuemin="0" aria-valuemax="{{ seccion.ofertaAcademica.idMallaCurricularUc.idUnidadCurricularVolumen.temas | length }}" style="width:{{porcentaje}}%; min-width: 2em;" > | ||
26 | + {{ porcentaje }} | ||
27 | + </div> | ||
28 | + </div> | ||
29 | + </td> | ||
23 | <td> | 30 | <td> |
24 | <ul> | 31 | <ul> |
25 | <li> | 32 | <li> |
26 | - <a href="{{ path('ceapp_docente_planificacion_show', { 'id': planificacionSeccion.id }) }}">show</a> | 33 | + <a href="{{ path('ceapp_docente_planificacion_new', { 'seccion': seccion.id }) }}">Planificar</a> |
27 | </li> | 34 | </li> |
28 | <li> | 35 | <li> |
29 | - <a href="{{ path('ceapp_docente_planificacion_edit', { 'id': planificacionSeccion.id }) }}">edit</a> | 36 | + <a href="{{ path('ceapp_docente_planificacion_edit', { 'id': seccion.id }) }}">edit</a> |
30 | </li> | 37 | </li> |
31 | </ul> | 38 | </ul> |
32 | </td> | 39 | </td> |
33 | - </tr> | 40 | + </tr> |
34 | {% endfor %} | 41 | {% endfor %} |
35 | </tbody> | 42 | </tbody> |
36 | </table> | 43 | </table> |
37 | - | ||
38 | - <ul> | ||
39 | - <li> | ||
40 | - <a href="{{ path('ceapp_docente_planificacion_new') }}">Create a new entry</a> | ||
41 | - </li> | ||
42 | - </ul> | 44 | + |
43 | {% endblock %} | 45 | {% endblock %} |
app/Resources/views/planificacionseccion/new.html.twig
1 | -{% extends 'base.html.twig' %} | 1 | +{% extends 'base_app.html.twig' %} |
2 | 2 | ||
3 | {% block body %} | 3 | {% block body %} |
4 | + {% form_theme form 'bootstrap_3_horizontal_layout.html.twig' %} | ||
4 | <h1>PlanificacionSeccion creation</h1> | 5 | <h1>PlanificacionSeccion creation</h1> |
5 | - | 6 | + |
6 | {{ form_start(form) }} | 7 | {{ form_start(form) }} |
7 | - {{ form_widget(form) }} | 8 | + {{ form_row(form.seccion) }} |
9 | + {{ form_row(form.idtemaUc) }} | ||
10 | + | ||
11 | + <ul class="contenido" data-prototype="{{ form_widget(form.contenido.vars.prototype)|e('html_attr') }}"> | ||
12 | + | ||
13 | + </ul> | ||
14 | + | ||
8 | <input type="submit" value="Create" /> | 15 | <input type="submit" value="Create" /> |
9 | {{ form_end(form) }} | 16 | {{ form_end(form) }} |
10 | 17 | ||
@@ -14,3 +21,87 @@ | @@ -14,3 +21,87 @@ | ||
14 | </li> | 21 | </li> |
15 | </ul> | 22 | </ul> |
16 | {% endblock %} | 23 | {% endblock %} |
24 | + | ||
25 | +{% block javascripts %} | ||
26 | + {{ parent() }} | ||
27 | + <script type="text/javascript"> | ||
28 | + | ||
29 | + var $collectionHolder; | ||
30 | + | ||
31 | + // setup an "add a tag" link | ||
32 | + var $addContenidoLink = $('<a href="#" class="add_contenido_link">Aรฑadir conceptos</a>'); | ||
33 | + var $RemoveContenidoLink = $('<a href="#" class="remove_contenido_link">Quitar Conceptos</a>'); | ||
34 | + | ||
35 | + var $newLinkLi = $('<li></li>').append($addContenidoLink); | ||
36 | + //$newLinkLi. = $('<li></li>').append($RemoveContenidoLink); | ||
37 | + | ||
38 | + | ||
39 | + jQuery(document).ready(function() { | ||
40 | + // Get the ul that holds the collection of tags | ||
41 | + $collectionHolder = $('ul.contenido'); | ||
42 | + | ||
43 | + // add the "add a tag" anchor and li to the tags ul | ||
44 | + $collectionHolder.append($newLinkLi); | ||
45 | + | ||
46 | + // count the current form inputs we have (e.g. 2), use that as the new | ||
47 | + // index when inserting a new item (e.g. 2) | ||
48 | + $collectionHolder.data('index', $collectionHolder.find(':input').length); | ||
49 | + | ||
50 | + $addContenidoLink.on('click', function(e) { | ||
51 | + // prevent the link from creating a "#" on the URL | ||
52 | + e.preventDefault(); | ||
53 | + | ||
54 | + // add a new tag form (see next code block) | ||
55 | + addContenidoForm($collectionHolder, $newLinkLi); | ||
56 | + }); | ||
57 | + | ||
58 | + | ||
59 | + | ||
60 | + function addContenidoForm($collectionHolder, $newLinkLi) { | ||
61 | + // Get the data-prototype explained earlier | ||
62 | + var prototype = $collectionHolder.data('prototype'); | ||
63 | + | ||
64 | + // get the new index | ||
65 | + var index = $collectionHolder.data('index'); | ||
66 | + | ||
67 | + // Replace '$$name$$' in the prototype's HTML to | ||
68 | + // instead be a number based on how many items we have | ||
69 | + var newForm = prototype.replace(/__name__/g, index); | ||
70 | + | ||
71 | + // increase the index with one for the next item | ||
72 | + $collectionHolder.data('index', index + 1); | ||
73 | + | ||
74 | + // Display the form in the page in an li, before the "Add a tag" link li | ||
75 | + var $newFormLi = $('<li></li>').append(newForm); | ||
76 | + | ||
77 | + // also add a remove button, just for this example | ||
78 | + $newFormLi.append('<a href="#" class="remove-tag">x</a>'); | ||
79 | + | ||
80 | + $newLinkLi.before($newFormLi); | ||
81 | + | ||
82 | + // handle the removal, just for this example | ||
83 | + $('.remove-tag').click(function(e) { | ||
84 | + e.preventDefault(); | ||
85 | + | ||
86 | + $(this).parent().remove(); | ||
87 | + | ||
88 | + return false; | ||
89 | + }); | ||
90 | + | ||
91 | + | ||
92 | + } | ||
93 | + | ||
94 | + | ||
95 | + | ||
96 | + }); | ||
97 | + | ||
98 | + | ||
99 | + | ||
100 | + | ||
101 | + | ||
102 | + | ||
103 | + | ||
104 | + | ||
105 | + | ||
106 | + </script> | ||
107 | +{% endblock %} |
src/AppBundle/Controller/PlanificacionSeccionController.php
@@ -8,7 +8,7 @@ use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method; | @@ -8,7 +8,7 @@ use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method; | ||
8 | use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; | 8 | use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; |
9 | use AppBundle\Entity\PlanificacionSeccion; | 9 | use AppBundle\Entity\PlanificacionSeccion; |
10 | use AppBundle\Form\PlanificacionSeccionType; | 10 | use AppBundle\Form\PlanificacionSeccionType; |
11 | - | 11 | +use AppBundle\Entity\Seccion; |
12 | /** | 12 | /** |
13 | * PlanificacionSeccion controller. | 13 | * PlanificacionSeccion controller. |
14 | * | 14 | * |
@@ -25,29 +25,42 @@ class PlanificacionSeccionController extends Controller | @@ -25,29 +25,42 @@ class PlanificacionSeccionController extends Controller | ||
25 | public function indexAction() | 25 | public function indexAction() |
26 | { | 26 | { |
27 | $em = $this->getDoctrine()->getManager(); | 27 | $em = $this->getDoctrine()->getManager(); |
28 | - | 28 | + $secciones = $em->getRepository('AppBundle:Seccion')->findBy(array( |
29 | + 'idRolInstitucion' => $this->getUser()->getIdRolInstitucion() | ||
30 | + )); | ||
29 | $planificacionSeccions = $em->getRepository('AppBundle:PlanificacionSeccion')->findAll(); | 31 | $planificacionSeccions = $em->getRepository('AppBundle:PlanificacionSeccion')->findAll(); |
30 | 32 | ||
31 | return $this->render('planificacionseccion/index.html.twig', array( | 33 | return $this->render('planificacionseccion/index.html.twig', array( |
32 | 'planificacionSeccions' => $planificacionSeccions, | 34 | 'planificacionSeccions' => $planificacionSeccions, |
35 | + 'secciones' => $secciones | ||
33 | )); | 36 | )); |
34 | } | 37 | } |
35 | 38 | ||
36 | /** | 39 | /** |
37 | * Creates a new PlanificacionSeccion entity. | 40 | * Creates a new PlanificacionSeccion entity. |
38 | * | 41 | * |
39 | - * @Route("/new", name="ceapp_docente_planificacion_new") | 42 | + * @Route("/new/{seccion}", name="ceapp_docente_planificacion_new") |
40 | * @Method({"GET", "POST"}) | 43 | * @Method({"GET", "POST"}) |
41 | */ | 44 | */ |
42 | - public function newAction(Request $request) | 45 | + public function newAction(Request $request, Seccion $seccion) |
43 | { | 46 | { |
44 | - $planificacionSeccion = new PlanificacionSeccion(); | ||
45 | - $form = $this->createForm('AppBundle\Form\PlanificacionSeccionType', $planificacionSeccion); | 47 | + $planificacionSeccion = new PlanificacionSeccion(); |
48 | + $form = $this->createForm('AppBundle\Form\PlanificacionSeccionType', $planificacionSeccion, array('seccion' => $seccion)); | ||
46 | $form->handleRequest($request); | 49 | $form->handleRequest($request); |
47 | 50 | ||
48 | - if ($form->isSubmitted() && $form->isValid()) { | 51 | + if ($form->isSubmitted() && $form->isValid()) { |
52 | + | ||
53 | + | ||
54 | + | ||
55 | + // ciclo a traves de las relaciones para cada contenido | ||
56 | + foreach($planificacionSeccion->getContenido() as $contenido){ | ||
57 | + $contenido->setPlanificacionSeccionId($planificacionSeccion); | ||
58 | + $seccion->addPlanificacion($planificacionSeccion); | ||
59 | + } | ||
60 | + //var_dump($seccion->getPlanificacion()->count()); exit; | ||
49 | $em = $this->getDoctrine()->getManager(); | 61 | $em = $this->getDoctrine()->getManager(); |
50 | $em->persist($planificacionSeccion); | 62 | $em->persist($planificacionSeccion); |
63 | + //$em->persist($seccion); | ||
51 | $em->flush(); | 64 | $em->flush(); |
52 | 65 | ||
53 | return $this->redirectToRoute('ceapp_docente_planificacion_show', array('id' => $planificacionSeccion->getId())); | 66 | return $this->redirectToRoute('ceapp_docente_planificacion_show', array('id' => $planificacionSeccion->getId())); |
@@ -83,8 +96,9 @@ class PlanificacionSeccionController extends Controller | @@ -83,8 +96,9 @@ class PlanificacionSeccionController extends Controller | ||
83 | */ | 96 | */ |
84 | public function editAction(Request $request, PlanificacionSeccion $planificacionSeccion) | 97 | public function editAction(Request $request, PlanificacionSeccion $planificacionSeccion) |
85 | { | 98 | { |
99 | + $seccion = $this->getDoctrine()->getRepository('AppBundle:Seccion')->findOneById($planificacionSeccion->getSeccion()); | ||
86 | $deleteForm = $this->createDeleteForm($planificacionSeccion); | 100 | $deleteForm = $this->createDeleteForm($planificacionSeccion); |
87 | - $editForm = $this->createForm('AppBundle\Form\PlanificacionSeccionType', $planificacionSeccion); | 101 | + $editForm = $this->createForm('AppBundle\Form\PlanificacionSeccionType', $planificacionSeccion, array('seccion' => $seccion)); |
88 | $editForm->handleRequest($request); | 102 | $editForm->handleRequest($request); |
89 | 103 | ||
90 | if ($editForm->isSubmitted() && $editForm->isValid()) { | 104 | if ($editForm->isSubmitted() && $editForm->isValid()) { |
src/AppBundle/Entity/PlanificacionSeccion.php
@@ -9,8 +9,8 @@ use Doctrine\ORM\Mapping as ORM; | @@ -9,8 +9,8 @@ use Doctrine\ORM\Mapping as ORM; | ||
9 | * | 9 | * |
10 | * @ORM\Table(name="planificacion_seccion", | 10 | * @ORM\Table(name="planificacion_seccion", |
11 | * uniqueConstraints= | 11 | * uniqueConstraints= |
12 | - * {@ORM\UniqueConstraint(name="uq_tema_uc", | ||
13 | - * columns={"id_tema_uc"}) | 12 | + * {@ORM\UniqueConstraint(name="uq_tema_uc_seccion", |
13 | + * columns={"id_tema_uc", "seccion_id"}) | ||
14 | * }, | 14 | * }, |
15 | * indexes={ | 15 | * indexes={ |
16 | * @ORM\Index(name="fki_id_tema_uc", | 16 | * @ORM\Index(name="fki_id_tema_uc", |
@@ -18,6 +18,7 @@ use Doctrine\ORM\Mapping as ORM; | @@ -18,6 +18,7 @@ use Doctrine\ORM\Mapping as ORM; | ||
18 | * } | 18 | * } |
19 | * ) | 19 | * ) |
20 | * @ORM\Entity | 20 | * @ORM\Entity |
21 | + * @ORM\HasLifecycleCallbacks() | ||
21 | */ | 22 | */ |
22 | class PlanificacionSeccion | 23 | class PlanificacionSeccion |
23 | { | 24 | { |
@@ -25,7 +26,7 @@ class PlanificacionSeccion | @@ -25,7 +26,7 @@ class PlanificacionSeccion | ||
25 | /** | 26 | /** |
26 | * @var \AppBundle\Entity\UnidadCurricularVolumenTema | 27 | * @var \AppBundle\Entity\UnidadCurricularVolumenTema |
27 | * | 28 | * |
28 | - * @ORM\ManyToOne(targetEntity="AppBundle\Entity\UnidadCurricularVolumenTema") | 29 | + * @ORM\ManyToOne(targetEntity="AppBundle\Entity\UnidadCurricularVolumenTema", inversedBy="hasPlanificacion") |
29 | * @ORM\JoinColumns({ | 30 | * @ORM\JoinColumns({ |
30 | * @ORM\JoinColumn(name="id_tema_uc", referencedColumnName="id", nullable=false) | 31 | * @ORM\JoinColumn(name="id_tema_uc", referencedColumnName="id", nullable=false) |
31 | * }) | 32 | * }) |
@@ -40,7 +41,8 @@ class PlanificacionSeccion | @@ -40,7 +41,8 @@ class PlanificacionSeccion | ||
40 | 41 | ||
41 | 42 | ||
42 | /** | 43 | /** |
43 | - * @ORM\OneToMany(targetEntity="PlanificacionSeccionContenido", mappedBy="idPlanificacionContenido") | 44 | + * @ORM\OneToMany(targetEntity="PlanificacionSeccionContenido", mappedBy="planificacionSeccionId", cascade={"all"}) |
45 | + * @var \Doctrine\Common\Collections\ArrayCollection | ||
44 | */ | 46 | */ |
45 | private $contenido; | 47 | private $contenido; |
46 | 48 | ||
@@ -58,18 +60,18 @@ class PlanificacionSeccion | @@ -58,18 +60,18 @@ class PlanificacionSeccion | ||
58 | 60 | ||
59 | 61 | ||
60 | 62 | ||
61 | - /** @ORM\Column(type="datetime", nullable=false, options={"comment" = "Fecha de creaciรณn de la solicitud"}) | 63 | + /** @ORM\Column(name="fecha_creacion", type="datetime", nullable=false, options={"comment" = "Fecha de creaciรณn de la solicitud"}) |
62 | 64 | ||
63 | */ | 65 | */ |
64 | 66 | ||
65 | - private $fecha_creacion; | 67 | + private $fechaCreacion; |
66 | 68 | ||
67 | 69 | ||
68 | - /** @ORM\Column(type="datetime", nullable=false, options={"comment" = "Fecha de actualizacion de la solicitud"}) | 70 | + /** @ORM\Column(name="fecha_ultima_actualizacion", type="datetime", nullable=false, options={"comment" = "Fecha de actualizacion de la solicitud"}) |
69 | 71 | ||
70 | */ | 72 | */ |
71 | 73 | ||
72 | - private $fecha_ultima_actualizacion; | 74 | + private $fechaUltimaActualizacion; |
73 | 75 | ||
74 | 76 | ||
75 | /** @var text | 77 | /** @var text |
@@ -109,51 +111,7 @@ class PlanificacionSeccion | @@ -109,51 +111,7 @@ class PlanificacionSeccion | ||
109 | $this->evaluacion = new \Doctrine\Common\Collections\ArrayCollection(); | 111 | $this->evaluacion = new \Doctrine\Common\Collections\ArrayCollection(); |
110 | } | 112 | } |
111 | 113 | ||
112 | - /** | ||
113 | - * Set fecha_creacion | ||
114 | - * | ||
115 | - * @param \DateTime $fechaCreacion | ||
116 | - * @return PlanificacionSeccion | ||
117 | - */ | ||
118 | - public function setFechaCreacion($fechaCreacion) | ||
119 | - { | ||
120 | - $this->fecha_creacion = $fechaCreacion; | ||
121 | - | ||
122 | - return $this; | ||
123 | - } | ||
124 | - | ||
125 | - /** | ||
126 | - * Get fecha_creacion | ||
127 | - * | ||
128 | - * @return \DateTime | ||
129 | - */ | ||
130 | - public function getFechaCreacion() | ||
131 | - { | ||
132 | - return $this->fecha_creacion; | ||
133 | - } | ||
134 | - | ||
135 | - /** | ||
136 | - * Set fecha_ultima_actualizacion | ||
137 | - * | ||
138 | - * @param \DateTime $fechaUltimaActualizacion | ||
139 | - * @return PlanificacionSeccion | ||
140 | - */ | ||
141 | - public function setFechaUltimaActualizacion($fechaUltimaActualizacion) | ||
142 | - { | ||
143 | - $this->fecha_ultima_actualizacion = $fechaUltimaActualizacion; | ||
144 | - | ||
145 | - return $this; | ||
146 | - } | ||
147 | - | ||
148 | - /** | ||
149 | - * Get fecha_ultima_actualizacion | ||
150 | - * | ||
151 | - * @return \DateTime | ||
152 | - */ | ||
153 | - public function getFechaUltimaActualizacion() | ||
154 | - { | ||
155 | - return $this->fecha_ultima_actualizacion; | ||
156 | - } | 114 | + |
157 | 115 | ||
158 | /** | 116 | /** |
159 | * Set observacion | 117 | * Set observacion |
@@ -252,7 +210,9 @@ class PlanificacionSeccion | @@ -252,7 +210,9 @@ class PlanificacionSeccion | ||
252 | */ | 210 | */ |
253 | public function addContenido(\AppBundle\Entity\PlanificacionSeccionContenido $contenido) | 211 | public function addContenido(\AppBundle\Entity\PlanificacionSeccionContenido $contenido) |
254 | { | 212 | { |
213 | + $contenido->setPlanificacionSeccionId($this); | ||
255 | $this->contenido[] = $contenido; | 214 | $this->contenido[] = $contenido; |
215 | + | ||
256 | 216 | ||
257 | return $this; | 217 | return $this; |
258 | } | 218 | } |
@@ -365,4 +325,69 @@ class PlanificacionSeccion | @@ -365,4 +325,69 @@ class PlanificacionSeccion | ||
365 | { | 325 | { |
366 | return $this->seccion; | 326 | return $this->seccion; |
367 | } | 327 | } |
328 | + | ||
329 | + /** | ||
330 | + * @ORM\PrePersist() | ||
331 | + */ | ||
332 | + public function prePersist() | ||
333 | + { | ||
334 | + $this->fechaCreacion = new \DateTime(); | ||
335 | + $this->fechaUltimaActualizacion = new \DateTime(); | ||
336 | + } | ||
337 | + | ||
338 | + | ||
339 | + /** | ||
340 | + * @ORM\PreUpdate() | ||
341 | + */ | ||
342 | + public function preUpdate() | ||
343 | + { | ||
344 | + $this->fechaUltimaActualizacion = new \DateTime(); | ||
345 | + } | ||
346 | + | ||
347 | + /** | ||
348 | + * Get fechaCreacion | ||
349 | + * | ||
350 | + * @return \DateTime | ||
351 | + */ | ||
352 | + public function getFechaCreacion() | ||
353 | + { | ||
354 | + return $this->fechaCreacion; | ||
355 | + } | ||
356 | + | ||
357 | + | ||
358 | + /** | ||
359 | + * Set fechaCreacion | ||
360 | + * | ||
361 | + * @param \DateTime $fechaCreacion | ||
362 | + * @return PlanificacionSeccion | ||
363 | + */ | ||
364 | + public function setFechaCreacion($fechaCreacion) | ||
365 | + { | ||
366 | + $this->fechaCreacion = $fechaCreacion; | ||
367 | + | ||
368 | + return $this; | ||
369 | + } | ||
370 | + | ||
371 | + /** | ||
372 | + * Set fechaUltimaActualizacion | ||
373 | + * | ||
374 | + * @param \DateTime $fechaUltimaActualizacion | ||
375 | + * @return PlanificacionSeccion | ||
376 | + */ | ||
377 | + public function setFechaUltimaActualizacion($fechaUltimaActualizacion) | ||
378 | + { | ||
379 | + $this->fechaUltimaActualizacion = $fechaUltimaActualizacion; | ||
380 | + | ||
381 | + return $this; | ||
382 | + } | ||
383 | + | ||
384 | + /** | ||
385 | + * Get fechaUltimaActualizacion | ||
386 | + * | ||
387 | + * @return \DateTime | ||
388 | + */ | ||
389 | + public function getFechaUltimaActualizacion() | ||
390 | + { | ||
391 | + return $this->fechaUltimaActualizacion; | ||
392 | + } | ||
368 | } | 393 | } |
src/AppBundle/Entity/PlanificacionSeccion.php~
@@ -18,6 +18,7 @@ use Doctrine\ORM\Mapping as ORM; | @@ -18,6 +18,7 @@ use Doctrine\ORM\Mapping as ORM; | ||
18 | * } | 18 | * } |
19 | * ) | 19 | * ) |
20 | * @ORM\Entity | 20 | * @ORM\Entity |
21 | + * @ORM\HasLifecycleCallbacks() | ||
21 | */ | 22 | */ |
22 | class PlanificacionSeccion | 23 | class PlanificacionSeccion |
23 | { | 24 | { |
@@ -40,7 +41,8 @@ class PlanificacionSeccion | @@ -40,7 +41,8 @@ class PlanificacionSeccion | ||
40 | 41 | ||
41 | 42 | ||
42 | /** | 43 | /** |
43 | - * @ORM\OneToMany(targetEntity="PlanificacionSeccionContenido", mappedBy="idPlanificacionContenido") | 44 | + * @ORM\OneToMany(targetEntity="PlanificacionSeccionContenido", mappedBy="PlanificacionSeccion",cascade={"persist", "remove"}) |
45 | + * @var \Doctrine\Common\Collections\ArrayCollection | ||
44 | */ | 46 | */ |
45 | private $contenido; | 47 | private $contenido; |
46 | 48 | ||
@@ -58,18 +60,18 @@ class PlanificacionSeccion | @@ -58,18 +60,18 @@ class PlanificacionSeccion | ||
58 | 60 | ||
59 | 61 | ||
60 | 62 | ||
61 | - /** @ORM\Column(type="datetime", nullable=false, options={"comment" = "Fecha de creaciรณn de la solicitud"}) | 63 | + /** @ORM\Column(name="fecha_creacion", type="datetime", nullable=false, options={"comment" = "Fecha de creaciรณn de la solicitud"}) |
62 | 64 | ||
63 | */ | 65 | */ |
64 | 66 | ||
65 | - private $fecha_creacion; | 67 | + private $fechaCreacion; |
66 | 68 | ||
67 | 69 | ||
68 | - /** @ORM\Column(type="datetime", nullable=false, options={"comment" = "Fecha de actualizacion de la solicitud"}) | 70 | + /** @ORM\Column(name="fecha_ultima_actualizacion", type="datetime", nullable=false, options={"comment" = "Fecha de actualizacion de la solicitud"}) |
69 | 71 | ||
70 | */ | 72 | */ |
71 | 73 | ||
72 | - private $fecha_ultima_actualizacion; | 74 | + private $fechaUltimaActualizacion; |
73 | 75 | ||
74 | 76 | ||
75 | /** @var text | 77 | /** @var text |
@@ -98,4 +100,292 @@ class PlanificacionSeccion | @@ -98,4 +100,292 @@ class PlanificacionSeccion | ||
98 | 100 | ||
99 | 101 | ||
100 | 102 | ||
103 | + /** | ||
104 | + * Constructor | ||
105 | + */ | ||
106 | + public function __construct() | ||
107 | + { | ||
108 | + $this->objetivoEspecifico = new \Doctrine\Common\Collections\ArrayCollection(); | ||
109 | + $this->contenido = new \Doctrine\Common\Collections\ArrayCollection(); | ||
110 | + $this->estrategia = new \Doctrine\Common\Collections\ArrayCollection(); | ||
111 | + $this->evaluacion = new \Doctrine\Common\Collections\ArrayCollection(); | ||
112 | + } | ||
113 | + | ||
114 | + | ||
115 | + | ||
116 | + /** | ||
117 | + * Set observacion | ||
118 | + * | ||
119 | + * @param string $observacion | ||
120 | + * @return PlanificacionSeccion | ||
121 | + */ | ||
122 | + public function setObservacion($observacion) | ||
123 | + { | ||
124 | + $this->observacion = $observacion; | ||
125 | + | ||
126 | + return $this; | ||
127 | + } | ||
128 | + | ||
129 | + /** | ||
130 | + * Get observacion | ||
131 | + * | ||
132 | + * @return string | ||
133 | + */ | ||
134 | + public function getObservacion() | ||
135 | + { | ||
136 | + return $this->observacion; | ||
137 | + } | ||
138 | + | ||
139 | + /** | ||
140 | + * Get id | ||
141 | + * | ||
142 | + * @return integer | ||
143 | + */ | ||
144 | + public function getId() | ||
145 | + { | ||
146 | + return $this->id; | ||
147 | + } | ||
148 | + | ||
149 | + /** | ||
150 | + * Set idtemaUc | ||
151 | + * | ||
152 | + * @param \AppBundle\Entity\UnidadCurricularVolumenTema $idtemaUc | ||
153 | + * @return PlanificacionSeccion | ||
154 | + */ | ||
155 | + public function setIdtemaUc(\AppBundle\Entity\UnidadCurricularVolumenTema $idtemaUc) | ||
156 | + { | ||
157 | + $this->idtemaUc = $idtemaUc; | ||
158 | + | ||
159 | + return $this; | ||
160 | + } | ||
161 | + | ||
162 | + /** | ||
163 | + * Get idtemaUc | ||
164 | + * | ||
165 | + * @return \AppBundle\Entity\UnidadCurricularVolumenTema | ||
166 | + */ | ||
167 | + public function getIdtemaUc() | ||
168 | + { | ||
169 | + return $this->idtemaUc; | ||
170 | + } | ||
171 | + | ||
172 | + /** | ||
173 | + * Add objetivoEspecifico | ||
174 | + * | ||
175 | + * @param \AppBundle\Entity\PlanificacionSeccionEspecifico $objetivoEspecifico | ||
176 | + * @return PlanificacionSeccion | ||
177 | + */ | ||
178 | + public function addObjetivoEspecifico(\AppBundle\Entity\PlanificacionSeccionEspecifico $objetivoEspecifico) | ||
179 | + { | ||
180 | + $this->objetivoEspecifico[] = $objetivoEspecifico; | ||
181 | + | ||
182 | + return $this; | ||
183 | + } | ||
184 | + | ||
185 | + /** | ||
186 | + * Remove objetivoEspecifico | ||
187 | + * | ||
188 | + * @param \AppBundle\Entity\PlanificacionSeccionEspecifico $objetivoEspecifico | ||
189 | + */ | ||
190 | + public function removeObjetivoEspecifico(\AppBundle\Entity\PlanificacionSeccionEspecifico $objetivoEspecifico) | ||
191 | + { | ||
192 | + $this->objetivoEspecifico->removeElement($objetivoEspecifico); | ||
193 | + } | ||
194 | + | ||
195 | + /** | ||
196 | + * Get objetivoEspecifico | ||
197 | + * | ||
198 | + * @return \Doctrine\Common\Collections\Collection | ||
199 | + */ | ||
200 | + public function getObjetivoEspecifico() | ||
201 | + { | ||
202 | + return $this->objetivoEspecifico; | ||
203 | + } | ||
204 | + | ||
205 | + /** | ||
206 | + * Add contenido | ||
207 | + * | ||
208 | + * @param \AppBundle\Entity\PlanificacionSeccionContenido $contenido | ||
209 | + * @return PlanificacionSeccion | ||
210 | + */ | ||
211 | + public function addContenido(\AppBundle\Entity\PlanificacionSeccionContenido $contenido) | ||
212 | + { | ||
213 | + $this->contenido[] = $contenido; | ||
214 | + | ||
215 | + return $this; | ||
216 | + } | ||
217 | + | ||
218 | + /** | ||
219 | + * Remove contenido | ||
220 | + * | ||
221 | + * @param \AppBundle\Entity\PlanificacionSeccionContenido $contenido | ||
222 | + */ | ||
223 | + public function removeContenido(\AppBundle\Entity\PlanificacionSeccionContenido $contenido) | ||
224 | + { | ||
225 | + $this->contenido->removeElement($contenido); | ||
226 | + } | ||
227 | + | ||
228 | + /** | ||
229 | + * Get contenido | ||
230 | + * | ||
231 | + * @return \Doctrine\Common\Collections\Collection | ||
232 | + */ | ||
233 | + public function getContenido() | ||
234 | + { | ||
235 | + return $this->contenido; | ||
236 | + } | ||
237 | + | ||
238 | + /** | ||
239 | + * Add estrategia | ||
240 | + * | ||
241 | + * @param \AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia | ||
242 | + * @return PlanificacionSeccion | ||
243 | + */ | ||
244 | + public function addEstrategium(\AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia) | ||
245 | + { | ||
246 | + $this->estrategia[] = $estrategia; | ||
247 | + | ||
248 | + return $this; | ||
249 | + } | ||
250 | + | ||
251 | + /** | ||
252 | + * Remove estrategia | ||
253 | + * | ||
254 | + * @param \AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia | ||
255 | + */ | ||
256 | + public function removeEstrategium(\AppBundle\Entity\PlanificacionSeccionEstrategia $estrategia) | ||
257 | + { | ||
258 | + $this->estrategia->removeElement($estrategia); | ||
259 | + } | ||
260 | + | ||
261 | + /** | ||
262 | + * Get estrategia | ||
263 | + * | ||
264 | + * @return \Doctrine\Common\Collections\Collection | ||
265 | + */ | ||
266 | + public function getEstrategia() | ||
267 | + { | ||
268 | + return $this->estrategia; | ||
269 | + } | ||
270 | + | ||
271 | + /** | ||
272 | + * Add evaluacion | ||
273 | + * | ||
274 | + * @param \AppBundle\Entity\PlanificacionSeccionEvaluacion $evaluacion | ||
275 | + * @return PlanificacionSeccion | ||
276 | + */ | ||
277 | + public function addEvaluacion(\AppBundle\Entity\PlanificacionSeccionEvaluacion $evaluacion) | ||
278 | + { | ||
279 | + $this->evaluacion[] = $evaluacion; | ||
280 | + | ||
281 | + return $this; | ||
282 | + } | ||
283 | + | ||
284 | + /** | ||
285 | + * Remove evaluacion | ||
286 | + * | ||
287 | + * @param \AppBundle\Entity\PlanificacionSeccionEvaluacion $evaluacion | ||
288 | + */ | ||
289 | + public function removeEvaluacion(\AppBundle\Entity\PlanificacionSeccionEvaluacion $evaluacion) | ||
290 | + { | ||
291 | + $this->evaluacion->removeElement($evaluacion); | ||
292 | + } | ||
293 | + | ||
294 | + /** | ||
295 | + * Get evaluacion | ||
296 | + * | ||
297 | + * @return \Doctrine\Common\Collections\Collection | ||
298 | + */ | ||
299 | + public function getEvaluacion() | ||
300 | + { | ||
301 | + return $this->evaluacion; | ||
302 | + } | ||
303 | + | ||
304 | + /** | ||
305 | + * Set seccion | ||
306 | + * | ||
307 | + * @param \AppBundle\Entity\Seccion $seccion | ||
308 | + * @return PlanificacionSeccion | ||
309 | + */ | ||
310 | + public function setSeccion(\AppBundle\Entity\Seccion $seccion = null) | ||
311 | + { | ||
312 | + $this->seccion = $seccion; | ||
313 | + | ||
314 | + return $this; | ||
315 | + } | ||
316 | + | ||
317 | + /** | ||
318 | + * Get seccion | ||
319 | + * | ||
320 | + * @return \AppBundle\Entity\Seccion | ||
321 | + */ | ||
322 | + public function getSeccion() | ||
323 | + { | ||
324 | + return $this->seccion; | ||
325 | + } | ||
326 | + | ||
327 | + /** | ||
328 | + * @ORM\PrePersist() | ||
329 | + */ | ||
330 | + public function prePersist() | ||
331 | + { | ||
332 | + $this->fechaCreacion = new \DateTime(); | ||
333 | + $this->fechaUltimaActualizacion = new \DateTime(); | ||
334 | + } | ||
335 | + | ||
336 | + | ||
337 | + /** | ||
338 | + * @ORM\PreUpdate() | ||
339 | + */ | ||
340 | + public function preUpdate() | ||
341 | + { | ||
342 | + $this->fechaUltimaActualizacion = new \DateTime(); | ||
343 | + } | ||
344 | + | ||
345 | + /** | ||
346 | + * Get fechaCreacion | ||
347 | + * | ||
348 | + * @return \DateTime | ||
349 | + */ | ||
350 | + public function getFechaCreacion() | ||
351 | + { | ||
352 | + return $this->fechaCreacion; | ||
353 | + } | ||
354 | + | ||
355 | + | ||
356 | + /** | ||
357 | + * Set fechaCreacion | ||
358 | + * | ||
359 | + * @param \DateTime $fechaCreacion | ||
360 | + * @return PlanificacionSeccion | ||
361 | + */ | ||
362 | + public function setFechaCreacion($fechaCreacion) | ||
363 | + { | ||
364 | + $this->fechaCreacion = $fechaCreacion; | ||
365 | + | ||
366 | + return $this; | ||
367 | + } | ||
368 | + | ||
369 | + /** | ||
370 | + * Set fechaUltimaActualizacion | ||
371 | + * | ||
372 | + * @param \DateTime $fechaUltimaActualizacion | ||
373 | + * @return PlanificacionSeccion | ||
374 | + */ | ||
375 | + public function setFechaUltimaActualizacion($fechaUltimaActualizacion) | ||
376 | + { | ||
377 | + $this->fechaUltimaActualizacion = $fechaUltimaActualizacion; | ||
378 | + | ||
379 | + return $this; | ||
380 | + } | ||
381 | + | ||
382 | + /** | ||
383 | + * Get fechaUltimaActualizacion | ||
384 | + * | ||
385 | + * @return \DateTime | ||
386 | + */ | ||
387 | + public function getFechaUltimaActualizacion() | ||
388 | + { | ||
389 | + return $this->fechaUltimaActualizacion; | ||
390 | + } | ||
101 | } | 391 | } |
src/AppBundle/Entity/PlanificacionSeccionContenido.php
@@ -7,16 +7,7 @@ use Doctrine\ORM\Mapping as ORM; | @@ -7,16 +7,7 @@ use Doctrine\ORM\Mapping as ORM; | ||
7 | /** | 7 | /** |
8 | * PlanificacionSeccionContenido | 8 | * PlanificacionSeccionContenido |
9 | * | 9 | * |
10 | - * @ORM\Table(name="planificacion_seccion_contenido", | ||
11 | - * uniqueConstraints= | ||
12 | - * {@ORM\UniqueConstraint(name="uq_planificacion_seccion_contenido", | ||
13 | - * columns={"id_planificacion_seccion"}) | ||
14 | - * }, | ||
15 | - * indexes={ | ||
16 | - * @ORM\Index(name="fki_id_planificacion_seccion", | ||
17 | - * columns={"id_planificacion_seccion"}) | ||
18 | - * } | ||
19 | - * ) | 10 | + * @ORM\Table(name="planificacion_seccion_contenido") |
20 | * @ORM\Entity | 11 | * @ORM\Entity |
21 | */ | 12 | */ |
22 | class PlanificacionSeccionContenido | 13 | class PlanificacionSeccionContenido |
@@ -56,21 +47,12 @@ class PlanificacionSeccionContenido | @@ -56,21 +47,12 @@ class PlanificacionSeccionContenido | ||
56 | */ | 47 | */ |
57 | private $id; | 48 | private $id; |
58 | 49 | ||
59 | - /** | ||
60 | - * @var \AppBundle\Entity\PlanificacionSeccion | ||
61 | - * | ||
62 | - * @ORM\ManyToOne(targetEntity="AppBundle\Entity\PlanificacionSeccion") | ||
63 | - * @ORM\JoinColumns({ | ||
64 | - * @ORM\JoinColumn(name="id_planificacion_seccion", referencedColumnName="id", nullable=false) | ||
65 | - * }) | ||
66 | - */ | ||
67 | - private $idPlanificacionSeccion; | ||
68 | 50 | ||
69 | /** | 51 | /** |
70 | * @ORM\ManyToOne(targetEntity="PlanificacionSeccion", inversedBy="contenido") | 52 | * @ORM\ManyToOne(targetEntity="PlanificacionSeccion", inversedBy="contenido") |
71 | - * @ORM\JoinColumn(name="id_planificacion_contenido", referencedColumnName="id") | 53 | + * @ORM\JoinColumn(name="planificacion_seccion_id", referencedColumnName="id", nullable=FALSE) |
72 | */ | 54 | */ |
73 | - private $idPlanificacionContenido; | 55 | + protected $planificacionSeccionId; |
74 | 56 | ||
75 | 57 | ||
76 | 58 | ||
@@ -153,49 +135,29 @@ class PlanificacionSeccionContenido | @@ -153,49 +135,29 @@ class PlanificacionSeccionContenido | ||
153 | return $this->id; | 135 | return $this->id; |
154 | } | 136 | } |
155 | 137 | ||
156 | - /** | ||
157 | - * Set idPlanificacionSeccion | ||
158 | - * | ||
159 | - * @param \AppBundle\Entity\PlanificacionSeccion $idPlanificacionSeccion | ||
160 | - * @return PlanificacionSeccionContenido | ||
161 | - */ | ||
162 | - public function setIdPlanificacionSeccion(\AppBundle\Entity\PlanificacionSeccion $idPlanificacionSeccion) | ||
163 | - { | ||
164 | - $this->idPlanificacionSeccion = $idPlanificacionSeccion; | ||
165 | - | ||
166 | - return $this; | ||
167 | - } | ||
168 | - | ||
169 | - /** | ||
170 | - * Get idPlanificacionSeccion | ||
171 | - * | ||
172 | - * @return \AppBundle\Entity\PlanificacionSeccion | ||
173 | - */ | ||
174 | - public function getIdPlanificacionSeccion() | ||
175 | - { | ||
176 | - return $this->idPlanificacionSeccion; | ||
177 | - } | 138 | + |
139 | + | ||
178 | 140 | ||
179 | /** | 141 | /** |
180 | - * Set idPlanificacionContenido | 142 | + * Set planificacionSeccionId |
181 | * | 143 | * |
182 | - * @param \AppBundle\Entity\PlanificacionSeccion $idPlanificacionContenido | 144 | + * @param \AppBundle\Entity\PlanificacionSeccion $planificacionSeccionId |
183 | * @return PlanificacionSeccionContenido | 145 | * @return PlanificacionSeccionContenido |
184 | */ | 146 | */ |
185 | - public function setIdPlanificacionContenido(\AppBundle\Entity\PlanificacionSeccion $idPlanificacionContenido = null) | 147 | + public function setPlanificacionSeccionId(\AppBundle\Entity\PlanificacionSeccion $planificacionSeccionId) |
186 | { | 148 | { |
187 | - $this->idPlanificacionContenido = $idPlanificacionContenido; | 149 | + $this->planificacionSeccionId = $planificacionSeccionId; |
188 | 150 | ||
189 | return $this; | 151 | return $this; |
190 | } | 152 | } |
191 | 153 | ||
192 | /** | 154 | /** |
193 | - * Get idPlanificacionContenido | 155 | + * Get planificacionSeccionId |
194 | * | 156 | * |
195 | * @return \AppBundle\Entity\PlanificacionSeccion | 157 | * @return \AppBundle\Entity\PlanificacionSeccion |
196 | */ | 158 | */ |
197 | - public function getIdPlanificacionContenido() | 159 | + public function getPlanificacionSeccionId() |
198 | { | 160 | { |
199 | - return $this->idPlanificacionContenido; | 161 | + return $this->planificacionSeccionId; |
200 | } | 162 | } |
201 | } | 163 | } |
src/AppBundle/Entity/PlanificacionSeccionContenido.php~
@@ -7,16 +7,7 @@ use Doctrine\ORM\Mapping as ORM; | @@ -7,16 +7,7 @@ use Doctrine\ORM\Mapping as ORM; | ||
7 | /** | 7 | /** |
8 | * PlanificacionSeccionContenido | 8 | * PlanificacionSeccionContenido |
9 | * | 9 | * |
10 | - * @ORM\Table(name="planificacion_seccion_contenido", | ||
11 | - * uniqueConstraints= | ||
12 | - * {@ORM\UniqueConstraint(name="uq_planificacion_seccion_contenido", | ||
13 | - * columns={"id_planificacion_seccion"}) | ||
14 | - * }, | ||
15 | - * indexes={ | ||
16 | - * @ORM\Index(name="fki_id_planificacion_seccion", | ||
17 | - * columns={"id_planificacion_seccion"}) | ||
18 | - * } | ||
19 | - * ) | 10 | + * @ORM\Table(name="planificacion_seccion_contenido") |
20 | * @ORM\Entity | 11 | * @ORM\Entity |
21 | */ | 12 | */ |
22 | class PlanificacionSeccionContenido | 13 | class PlanificacionSeccionContenido |
@@ -56,21 +47,94 @@ class PlanificacionSeccionContenido | @@ -56,21 +47,94 @@ class PlanificacionSeccionContenido | ||
56 | */ | 47 | */ |
57 | private $id; | 48 | private $id; |
58 | 49 | ||
50 | + | ||
59 | /** | 51 | /** |
60 | - * @var \AppBundle\Entity\PlanificacionSeccion | ||
61 | - * | ||
62 | - * @ORM\ManyToOne(targetEntity="AppBundle\Entity\PlanificacionSeccion") | ||
63 | - * @ORM\JoinColumns({ | ||
64 | - * @ORM\JoinColumn(name="id_planificacion_seccion", referencedColumnName="id", nullable=false) | ||
65 | - * }) | 52 | + * @ORM\ManyToOne(targetEntity="PlanificacionSeccion", inversedBy="contenido") |
53 | + * @ORM\JoinColumn(name="planificacion_seccion_id", referencedColumnName="id", nullable=FALSE) | ||
66 | */ | 54 | */ |
67 | - private $idPlanificacionSeccion; | 55 | + protected $planificacionSeccion; |
56 | + | ||
68 | 57 | ||
58 | + | ||
69 | /** | 59 | /** |
70 | - * @ORM\ManyToOne(targetEntity="PlanificacionSeccion", inversedBy="contenido") | ||
71 | - * @ORM\JoinColumn(name="id_planificacion_contenido", referencedColumnName="id") | 60 | + * Set conceptual |
61 | + * | ||
62 | + * @param string $conceptual | ||
63 | + * @return PlanificacionSeccionContenido | ||
64 | + */ | ||
65 | + public function setConceptual($conceptual) | ||
66 | + { | ||
67 | + $this->conceptual = $conceptual; | ||
68 | + | ||
69 | + return $this; | ||
70 | + } | ||
71 | + | ||
72 | + /** | ||
73 | + * Get conceptual | ||
74 | + * | ||
75 | + * @return string | ||
76 | + */ | ||
77 | + public function getConceptual() | ||
78 | + { | ||
79 | + return $this->conceptual; | ||
80 | + } | ||
81 | + | ||
82 | + /** | ||
83 | + * Set procedimental | ||
84 | + * | ||
85 | + * @param string $procedimental | ||
86 | + * @return PlanificacionSeccionContenido | ||
87 | + */ | ||
88 | + public function setProcedimental($procedimental) | ||
89 | + { | ||
90 | + $this->procedimental = $procedimental; | ||
91 | + | ||
92 | + return $this; | ||
93 | + } | ||
94 | + | ||
95 | + /** | ||
96 | + * Get procedimental | ||
97 | + * | ||
98 | + * @return string | ||
99 | + */ | ||
100 | + public function getProcedimental() | ||
101 | + { | ||
102 | + return $this->procedimental; | ||
103 | + } | ||
104 | + | ||
105 | + /** | ||
106 | + * Set actitudinal | ||
107 | + * | ||
108 | + * @param string $actitudinal | ||
109 | + * @return PlanificacionSeccionContenido | ||
110 | + */ | ||
111 | + public function setActitudinal($actitudinal) | ||
112 | + { | ||
113 | + $this->actitudinal = $actitudinal; | ||
114 | + | ||
115 | + return $this; | ||
116 | + } | ||
117 | + | ||
118 | + /** | ||
119 | + * Get actitudinal | ||
120 | + * | ||
121 | + * @return string | ||
122 | + */ | ||
123 | + public function getActitudinal() | ||
124 | + { | ||
125 | + return $this->actitudinal; | ||
126 | + } | ||
127 | + | ||
128 | + /** | ||
129 | + * Get id | ||
130 | + * | ||
131 | + * @return integer | ||
72 | */ | 132 | */ |
73 | - private $idPlanificacionContenido; | 133 | + public function getId() |
134 | + { | ||
135 | + return $this->id; | ||
136 | + } | ||
74 | 137 | ||
138 | + | ||
75 | 139 | ||
76 | } | 140 | } |
src/AppBundle/Entity/Seccion.php
@@ -88,7 +88,7 @@ class Seccion | @@ -88,7 +88,7 @@ class Seccion | ||
88 | private $ofertaAcademica; | 88 | private $ofertaAcademica; |
89 | 89 | ||
90 | /** | 90 | /** |
91 | - * @ORM\OneToMany(targetEntity="PlanificacionSeccion", mappedBy="seccion") | 91 | + * @ORM\OneToMany(targetEntity="PlanificacionSeccion", mappedBy="seccion", cascade={"all"}) |
92 | */ | 92 | */ |
93 | private $planificacion; | 93 | private $planificacion; |
94 | 94 |
src/AppBundle/Entity/UnidadCurricularVolumenTema.php
@@ -52,6 +52,13 @@ class UnidadCurricularVolumenTema | @@ -52,6 +52,13 @@ class UnidadCurricularVolumenTema | ||
52 | */ | 52 | */ |
53 | private $id; | 53 | private $id; |
54 | 54 | ||
55 | + /** | ||
56 | + * @ORM\OneToMany(targetEntity="PlanificacionSeccion", mappedBy="idtemaUc") | ||
57 | + */ | ||
58 | + private $hasPlanificacion; | ||
59 | + | ||
60 | + | ||
61 | + | ||
55 | 62 | ||
56 | 63 | ||
57 | /** | 64 | /** |
@@ -169,4 +176,46 @@ class UnidadCurricularVolumenTema | @@ -169,4 +176,46 @@ class UnidadCurricularVolumenTema | ||
169 | { | 176 | { |
170 | return $this->orden; | 177 | return $this->orden; |
171 | } | 178 | } |
179 | + | ||
180 | + | ||
181 | + /** | ||
182 | + * Constructor | ||
183 | + */ | ||
184 | + public function __construct() | ||
185 | + { | ||
186 | + $this->hasPlanificacion = new \Doctrine\Common\Collections\ArrayCollection(); | ||
187 | + } | ||
188 | + | ||
189 | + /** | ||
190 | + * Add hasPlanificacion | ||
191 | + * | ||
192 | + * @param \AppBundle\Entity\PlanificacionSeccion $hasPlanificacion | ||
193 | + * @return UnidadCurricularVolumenTema | ||
194 | + */ | ||
195 | + public function addHasPlanificacion(\AppBundle\Entity\PlanificacionSeccion $hasPlanificacion) | ||
196 | + { | ||
197 | + $this->hasPlanificacion[] = $hasPlanificacion; | ||
198 | + | ||
199 | + return $this; | ||
200 | + } | ||
201 | + | ||
202 | + /** | ||
203 | + * Remove hasPlanificacion | ||
204 | + * | ||
205 | + * @param \AppBundle\Entity\PlanificacionSeccion $hasPlanificacion | ||
206 | + */ | ||
207 | + public function removeHasPlanificacion(\AppBundle\Entity\PlanificacionSeccion $hasPlanificacion) | ||
208 | + { | ||
209 | + $this->hasPlanificacion->removeElement($hasPlanificacion); | ||
210 | + } | ||
211 | + | ||
212 | + /** | ||
213 | + * Get hasPlanificacion | ||
214 | + * | ||
215 | + * @return \Doctrine\Common\Collections\Collection | ||
216 | + */ | ||
217 | + public function getHasPlanificacion() | ||
218 | + { | ||
219 | + return $this->hasPlanificacion; | ||
220 | + } | ||
172 | } | 221 | } |
src/AppBundle/Entity/UnidadCurricularVolumenTema.php~
@@ -14,9 +14,9 @@ use Doctrine\ORM\Mapping as ORM; | @@ -14,9 +14,9 @@ use Doctrine\ORM\Mapping as ORM; | ||
14 | class UnidadCurricularVolumenTema | 14 | class UnidadCurricularVolumenTema |
15 | { | 15 | { |
16 | /** | 16 | /** |
17 | - * @var string | 17 | + * @var text |
18 | * | 18 | * |
19 | - * @ORM\Column(name="tema", type="string", length=50, nullable=false, options={"comment" = "nombre del estado"}) | 19 | + * @ORM\Column(name="tema", type="text", nullable=false, options={"comment" = "nombre del estado"}) |
20 | */ | 20 | */ |
21 | private $nombre; | 21 | private $nombre; |
22 | 22 | ||
@@ -52,6 +52,13 @@ class UnidadCurricularVolumenTema | @@ -52,6 +52,13 @@ class UnidadCurricularVolumenTema | ||
52 | */ | 52 | */ |
53 | private $id; | 53 | private $id; |
54 | 54 | ||
55 | + /** | ||
56 | + * @ORM\OneToMany(targetEntity="PlanificacionSeccion", mappedBy="idtemaUc") | ||
57 | + */ | ||
58 | + private $hasPlanificacion; | ||
59 | + | ||
60 | + | ||
61 | + | ||
55 | 62 | ||
56 | 63 | ||
57 | /** | 64 | /** |
@@ -146,4 +153,29 @@ class UnidadCurricularVolumenTema | @@ -146,4 +153,29 @@ class UnidadCurricularVolumenTema | ||
146 | { | 153 | { |
147 | return $this->objetivoGeneral; | 154 | return $this->objetivoGeneral; |
148 | } | 155 | } |
156 | + | ||
157 | + /** | ||
158 | + * Set orden | ||
159 | + * | ||
160 | + * @param integer $orden | ||
161 | + * @return UnidadCurricularVolumenTema | ||
162 | + */ | ||
163 | + public function setOrden($orden) | ||
164 | + { | ||
165 | + $this->orden = $orden; | ||
166 | + | ||
167 | + return $this; | ||
168 | + } | ||
169 | + | ||
170 | + /** | ||
171 | + * Get orden | ||
172 | + * | ||
173 | + * @return integer | ||
174 | + */ | ||
175 | + public function getOrden() | ||
176 | + { | ||
177 | + return $this->orden; | ||
178 | + } | ||
179 | + | ||
180 | + | ||
149 | } | 181 | } |
src/AppBundle/Form/PlanificacionSeccionContenidoType.php
@@ -0,0 +1,34 @@ | @@ -0,0 +1,34 @@ | ||
1 | +<?php | ||
2 | + | ||
3 | +namespace AppBundle\Form; | ||
4 | + | ||
5 | +use Symfony\Component\Form\AbstractType; | ||
6 | +use Symfony\Component\Form\FormBuilderInterface; | ||
7 | +use Symfony\Component\OptionsResolver\OptionsResolver; | ||
8 | + | ||
9 | +class PlanificacionSeccionContenidoType extends AbstractType | ||
10 | +{ | ||
11 | + /** | ||
12 | + * @param FormBuilderInterface $builder | ||
13 | + * @param array $options | ||
14 | + */ | ||
15 | + public function buildForm(FormBuilderInterface $builder, array $options) | ||
16 | + { | ||
17 | + $builder | ||
18 | + ->add('conceptual') | ||
19 | + ->add('procedimental') | ||
20 | + ->add('actitudinal') | ||
21 | + //->add('planificacionSeccion') | ||
22 | + ; | ||
23 | + } | ||
24 | + | ||
25 | + /** | ||
26 | + * @param OptionsResolver $resolver | ||
27 | + */ | ||
28 | + public function configureOptions(OptionsResolver $resolver) | ||
29 | + { | ||
30 | + $resolver->setDefaults(array( | ||
31 | + 'data_class' => 'AppBundle\Entity\PlanificacionSeccionContenido' | ||
32 | + )); | ||
33 | + } | ||
34 | +} |
src/AppBundle/Form/PlanificacionSeccionType.php
@@ -5,6 +5,9 @@ namespace AppBundle\Form; | @@ -5,6 +5,9 @@ namespace AppBundle\Form; | ||
5 | use Symfony\Component\Form\AbstractType; | 5 | use Symfony\Component\Form\AbstractType; |
6 | use Symfony\Component\Form\FormBuilderInterface; | 6 | use Symfony\Component\Form\FormBuilderInterface; |
7 | use Symfony\Component\OptionsResolver\OptionsResolver; | 7 | use Symfony\Component\OptionsResolver\OptionsResolver; |
8 | +use Symfony\Component\Form\Extension\Core\Type\CollectionType; | ||
9 | +use Symfony\Bridge\Doctrine\Form\Type\EntityType; | ||
10 | +use Doctrine\ORM\EntityRepository; | ||
8 | 11 | ||
9 | class PlanificacionSeccionType extends AbstractType | 12 | class PlanificacionSeccionType extends AbstractType |
10 | { | 13 | { |
@@ -14,10 +17,38 @@ class PlanificacionSeccionType extends AbstractType | @@ -14,10 +17,38 @@ class PlanificacionSeccionType extends AbstractType | ||
14 | */ | 17 | */ |
15 | public function buildForm(FormBuilderInterface $builder, array $options) | 18 | public function buildForm(FormBuilderInterface $builder, array $options) |
16 | { | 19 | { |
20 | + $this->seccion = $options['seccion']; | ||
21 | + //var_dump($this->seccion); exit; | ||
17 | $builder | 22 | $builder |
18 | - ->add('idtemaUc') | ||
19 | - ->add('observacion') | ||
20 | - ->add('seccion') | 23 | + |
24 | + ->add('idtemaUc', EntityType::class, array( | ||
25 | + 'class' => 'AppBundle:UnidadCurricularVolumenTema', | ||
26 | + 'query_builder' => function (EntityRepository $er) { | ||
27 | + return $er->createQueryBuilder('u') | ||
28 | + ->orderBy('u.orden', 'ASC') | ||
29 | + ->where('u.idUnidadCurricularVolumen = ?1') //que las uc conicidan con la malla del estado academico | ||
30 | + ->setParameters(array( | ||
31 | + 1 => $this->seccion->getOfertaAcademica()->getIdMallaCurricularUc()->getIdUnidadCurricularVolumen()->getId() | ||
32 | + )); | ||
33 | + ;}, | ||
34 | + | ||
35 | + )) | ||
36 | + ->add('seccion', EntityType::class, array( | ||
37 | + 'class' => 'AppBundle:Seccion', | ||
38 | + 'query_builder' => function (EntityRepository $er) { | ||
39 | + return $er->createQueryBuilder('u') | ||
40 | + ->where('u.id = ?1') //que las uc conicidan con la malla del estado academico | ||
41 | + ->setParameters(array( | ||
42 | + 1 => $this->seccion->getId(), | ||
43 | + )); | ||
44 | + ;}, | ||
45 | + )) | ||
46 | + ->add('contenido', CollectionType::class, array( | ||
47 | + 'entry_type' => PlanificacionSeccionContenidoType::class, | ||
48 | + 'allow_add' => true, | ||
49 | + 'label' => false | ||
50 | + )) | ||
51 | + | ||
21 | ; | 52 | ; |
22 | } | 53 | } |
23 | 54 | ||
@@ -27,7 +58,8 @@ class PlanificacionSeccionType extends AbstractType | @@ -27,7 +58,8 @@ class PlanificacionSeccionType extends AbstractType | ||
27 | public function configureOptions(OptionsResolver $resolver) | 58 | public function configureOptions(OptionsResolver $resolver) |
28 | { | 59 | { |
29 | $resolver->setDefaults(array( | 60 | $resolver->setDefaults(array( |
30 | - 'data_class' => 'AppBundle\Entity\PlanificacionSeccion' | 61 | + 'data_class' => 'AppBundle\Entity\PlanificacionSeccion', |
62 | + 'seccion' => null | ||
31 | )); | 63 | )); |
32 | } | 64 | } |
33 | } | 65 | } |