feat: multi-archivo órdenes visible en enfermero, domicilios y órdenes médicas
- OrdenMedica::filtrarCampos(): agrega domicilio_id al whitelist - Domicilio::obtener(): consulta secundaria archivos_ordenes[] con fallback - Enfermera::agenda(): bulk-query archivos_ordenes[] por domicilio_id - api/lab/link_ordenes_domicilio.php: API POST vincula orden_ids a domicilio_id - conversations.php guardar(): trackea allOrdenIds[], llama link API post-save - lab_domicilios.php: renderOrdenesDetail() multi-archivo en detalle - enfermero_portal.php: renderOrdenesEnfermero() multi-archivo en cards - lab_ordenes.php: botón 'Ver domicilio' cuando domicilio_id está vinculado - migrations/: ALTER TABLE lab_ordenes_medicas ADD domicilio_id + índice
This commit is contained in:
+15
-2
@@ -7439,6 +7439,7 @@ const labDomicilio = (() => {
|
||||
try {
|
||||
const convIdNum = (_convId && !String(_convId).startsWith('__user:'))
|
||||
? parseInt(_convId) : null;
|
||||
const allOrdenIds = [];
|
||||
for (let _fi = 0; _fi < _localFiles.length; _fi++) {
|
||||
const orRes = await fetch('api/lab/crear_desde_whatsapp.php', {
|
||||
method: 'POST',
|
||||
@@ -7453,10 +7454,12 @@ const labDomicilio = (() => {
|
||||
}),
|
||||
});
|
||||
const orData = await orRes.json();
|
||||
if (orData.success && orData.orden_id && _fi === 0) {
|
||||
datos.orden_id = orData.orden_id;
|
||||
if (orData.success && orData.orden_id) {
|
||||
allOrdenIds.push(orData.orden_id);
|
||||
if (_fi === 0) datos.orden_id = orData.orden_id;
|
||||
}
|
||||
}
|
||||
datos._allOrdenIds = allOrdenIds;
|
||||
} catch (_) { /* no bloquea */ }
|
||||
}
|
||||
|
||||
@@ -7469,6 +7472,16 @@ const labDomicilio = (() => {
|
||||
const d = await r.json();
|
||||
|
||||
if (d.success) {
|
||||
// Vincular todas las órdenes al domicilio recién creado
|
||||
const _oids = datos._allOrdenIds;
|
||||
if (Array.isArray(_oids) && _oids.length > 0 && d.id) {
|
||||
fetch('api/lab/link_ordenes_domicilio.php', {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({ domicilio_id: d.id, orden_ids: _oids }),
|
||||
}).catch(() => {});
|
||||
}
|
||||
|
||||
// Actualizar _pacNombre si el usuario editó el nombre en el input
|
||||
const _editedNombre = fv('labdom-pac-nombre');
|
||||
if (_editedNombre) _pacNombre = _editedNombre;
|
||||
|
||||
Reference in New Issue
Block a user