瀏覽代碼

solutions to doors that wouldn't open

FREDY 1 月之前
父節點
當前提交
f34c52f5e5
共有 1 個文件被更改,包括 20 次插入9 次删除
  1. 20 9
      Front/src/app/modules/Profesor/pages/tareas/tareas.component.ts

+ 20 - 9
Front/src/app/modules/Profesor/pages/tareas/tareas.component.ts

@@ -44,7 +44,7 @@ export class TareasComponent {
   @ViewChild('TABLE') table!: ElementRef;
 
   constructor(
-    
+
     private tareasService: TareasService,
     private _MatIconRegister: MatIconRegistry,
     private _DomSanitizer: DomSanitizer,
@@ -92,7 +92,7 @@ export class TareasComponent {
 
   openDialog(tarea?: any) {
     let dialogRef;
-  
+
     dialogRef = this.dialog.open(ModalTarea, {
       autoFocus: false,
       data: tarea ?? null   // <--- paso la tarea si existe
@@ -100,7 +100,7 @@ export class TareasComponent {
   }
 
 
-  
+
 
   public allInfo: any;
   public files: any;
@@ -120,16 +120,16 @@ export class TareasComponent {
         } else {
           tarea.vinculoTareaArray = [];
         }
-      
+
         if (tarea.adjuntoTarea) {
           tarea.adjuntoTarea = JSON.parse(tarea.adjuntoTarea);
         } else {
           tarea.adjuntoTarea = [];
         }
-      
+
         return tarea;
       });
-      
+
 
       this.dataSource = new MatTableDataSource<any>(this.allInfo);
       this.dataSource.paginator = this.paginator;
@@ -282,7 +282,7 @@ export class TareasComponent {
   ],
 })
 export class ModalTarea {
-  constructor(
+   constructor(
     public dialog: MatDialog,
     private circularService: CircularService,
     private _enviarInfoService: EnviarInfoService,
@@ -291,8 +291,19 @@ export class ModalTarea {
     private grupoService: GruposService,
     private materiaService: MateriaService,
     private tareaService: TareasService,
-    @Inject(MAT_DIALOG_DATA) public data: any 
+    @Inject(MAT_DIALOG_DATA) public data: any
   ) {
+    try {
+      if (this.data && typeof this.data === 'string' && this.data.trim() !== '') {
+        this.data = JSON.parse(this.data);
+      } else if (!this.data) {
+        this.data = {};
+      }
+    } catch (e) {
+      console.warn('Error al parsear data:', e);
+      this.data = {};
+    }
+
     this.getTipoTareas();
     this.getMaterias();
   }
@@ -730,4 +741,4 @@ export class ModalTarea {
   }
 
 
-}
+}