|
@@ -102,12 +102,17 @@ class ONUAdmin extends WorkflowBaseAdmin
|
|
|
*/
|
|
|
protected function configureFormFields(FormMapper $formMapper)
|
|
|
{
|
|
|
- $em = $this->get("doctrine.orm.entity_manager");
|
|
|
- $template = $em->getRepository(ONUTemplate::class)
|
|
|
- ->findOneBy(array(
|
|
|
- 'base' => true,
|
|
|
- ));
|
|
|
$subject = $this->getSubject();
|
|
|
+ $em = $this->get("doctrine.orm.entity_manager");
|
|
|
+
|
|
|
+ // busco el ONU template si se pasa como parámetro
|
|
|
+ $template = null;
|
|
|
+ $onuTemplateId = $this->getRequest()->query->get('onu_template');
|
|
|
+ if ($onuTemplateId) {
|
|
|
+ $this->getRequest()->query->remove('onu_template');
|
|
|
+ $template = $em->getRepository(ONUTemplate::class)
|
|
|
+ ->find($onuTemplateId);
|
|
|
+ }
|
|
|
|
|
|
$marks = OLTModelMark::getChoices();
|
|
|
foreach ($marks as $m) {
|
|
@@ -126,12 +131,11 @@ class ONUAdmin extends WorkflowBaseAdmin
|
|
|
|
|
|
// Editando la ONU o hay template base o pasado como parámetro
|
|
|
if ($subject->getId() || $template) {
|
|
|
+ $olt = null;
|
|
|
if ($subject->getOlt()) {
|
|
|
$olt = $subject->getOlt();
|
|
|
} elseif ($template) {
|
|
|
$olt = $template->getOlt();
|
|
|
- } else {
|
|
|
- $olt = null;
|
|
|
}
|
|
|
|
|
|
// Según el modelo de OLT se muestran algunos campos específicos
|
|
@@ -156,7 +160,20 @@ class ONUAdmin extends WorkflowBaseAdmin
|
|
|
|
|
|
$formMapper
|
|
|
->tab('default')
|
|
|
- ->with('')
|
|
|
+ ->with('');
|
|
|
+
|
|
|
+ // Se agrega ONUTemplate solo en el create
|
|
|
+ if ($this->isCurrentRoute('create')) {
|
|
|
+ $formMapper->add('onuTemplate', 'entity', [
|
|
|
+ 'class' => ONUTemplate::class,
|
|
|
+ 'required' => false,
|
|
|
+ 'mapped' => false,
|
|
|
+ 'help' => $this->trans('helps.onuTemplate'),
|
|
|
+ 'data' => $template,
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+
|
|
|
+ $formMapper
|
|
|
->add('clientId')
|
|
|
->add('ponSerialNumber', null, array(
|
|
|
'attr' => array(
|