Saltearse al contenido

Editar una operación

El formulario de edición vive en /operations/{id}/edit. Es estructuralmente el mismo formulario que la página de creación, pre-rellenado desde el documento missions/{id} existente y guardado mediante updateMission() (un parche merge, no un reemplazo).

El acceso está protegido por el operationOwnerGuard. Necesitas el permiso operations.edit y propiedad del documento — admins de la org, el creador, o editores explícitamente concedidos.

Abrir el editor

  • Desde la lista de operaciones, abre el menú kebab de la fila → Editar.
  • Desde la cabecera del detalle de operación, haz clic en el botón EDIT (requiere operations.edit).
  • URL directa: /operations/{id}/edit.

Qué carga el editor

Al abrirse, el formulario se suscribe a missions/{id} y parchea:

  • Todos los campos de identidad, clasificación, programación y C2.
  • Objetivos, ROE y Plan de comms en sus arrays dinámicos del formulario.
  • Configuración CAS en el panel incrustado.
  • Equipos seleccionados y operativos individuales, reconstruidos desde assetIds[] menos cualquier UID que pertenezca a un equipo actualmente seleccionado.
  • Región del mapa en el Google Map vía fitBounds.

Qué puedes editar

Prácticamente todos los campos que existen en MissionData son editables desde este formulario:

  • Nombre, nombre en clave, descripción.
  • Tipo de misión, clasificación, prioridad, estado.
  • Fechas de inicio y fin.
  • Toggle de PTT semidúplex.
  • UID del comandante, POI principal, notas de HQ/OPORD, etiquetas.
  • Objetivos, ROE y Plan de comms (añadir, reordenar mediante eliminar-y-reañadir, eliminar).
  • Configuración CAS (los seis umbrales numéricos más el interruptor maestro).
  • Personal — añadir o quitar equipos y operativos individuales. Al guardar, assetIds[] se recalcula como la unión deduplicada de operativos directos más miembros del equipo.
  • Límites del mapa de AO — desplaza o haz zoom en el mapa; mission.region se sobrescribe con el viewport actual.

Qué no es editable aquí

  • Difuminado de privacidad — se establece en el momento de la creación; no hay panel de difuminado en el formulario de edición.
  • Multimedia de la misión — el uploader del formulario de creación no se renderiza aquí. La media existente se preserva sin tocar (media: m?.media ?? []). Añade o elimina media desde el panel Multimedia de la misión de la página de detalle.
  • Propiedad de la organizaciónorgId / orgIds se dejan tal cual; no hay selector de org en el formulario de edición.

Guardar

Guardar valida, llama a updateMission(id, patch) y enruta a /operations/{id}. No se escribe nada hasta que lo pulses — cerrar la pestaña descarta los cambios locales.

Promover a través de estados

Moverse de planningreadyactivecompleted se hace cambiando el desplegable Estado y guardando. No hay un botón separado “Iniciar operación” aquí — ese vive en la página de detalle de operación. En la práctica, los comandantes tienden a promover a ready/active desde la página de detalle y usan este formulario para ajustes.

Eliminar

La eliminación no está expuesta en el formulario de edición. Usa el menú kebab de fila en la lista de operacionesEliminar. Hoy es un deleteDoc definitivo (sin eliminación lógica ni restauración).

Relacionados