Repository navigation
Cierre de farmacia · stock por producto, «Motivo» en el teléfono y evidencia de FAR-04/05/06 (test) - #1692
Merged
Conversation
…el teléfono La API decide ahora la disponibilidad por producto: un producto sin posición en una sucursal sigue lo declarado en el catálogo aunque la sucursal lleve stock propio de otros. El panel de stock por sucursal deja la fila «Sin registrar en esta sucursal» con su botón: esas filas son «Como en el catálogo», con el interruptor de siempre, y los avisos dicen que lo propio es por producto. La marca «sin stock en catálogo» sale de `outOfStockDeclared`, que la lectura de gestión ya sirve, en vez de deducirse de `inStock: false` con conteo distinto de cero. La cantidad deja de cortar su rótulo vacío («Del catálogo»): el campo tiene ancho fijo y la tabla le reserva el lugar. En la vista previa de importación de categorías, precios y sucursales, «Motivo» pasa a columna primaria y la tabla se apila en el teléfono: el motivo de un rechazo se lee en la ficha de cada fila, sin desplegar.
…FAR-05 y FAR-06 FAR-04 (nueva): menú de la farmacia, la pantalla en cinco viewports y dos temas, cada pestaña con su `?tab=` sin entradas en el historial, las rutas viejas y los atajos del resumen, el precio guardado y releído, la tira de pestañas a 390 y el paciente sin acceso. FAR-05: categoría creada, renombrada y eliminada, y producto editado desde el modal, cada paso con recarga; «Motivo» en la ficha de cada fila a 390. El alta desde el modal queda bloqueada: parte del catálogo oficial de medicamentos, que la base de verificación no tiene cargado. FAR-06: el producto publicado después sale «Como en el catálogo» en una sucursal con stock propio, «Lo tengo» con cantidad y el paciente que lo vuelve a ver, el 422 en su fila, la columna de cantidad a 390 y el radio (Precios, Productos, «Subir CSV»).
6 of 13 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Qué cambia
Hermano hacia
testde #1691: los mismos dos commits (63fdc2c0dcódigo,817281af1evidencia), traídos por cherry-pick a una rama creada desdeorigin/test. Los 13 archivos de código son idénticos endevy entestantes del cambio.Cierre de FAR-04, FAR-05 y FAR-06 en el front: dos ajustes de pantalla que pedía la evidencia, el uso de lo que la API suma en mdavila-2001/mantra-core-health-api#1147 (hacia
test: mdavila-2001/mantra-core-health-api#1148) y la evidencia de navegador que faltaba.Stock por sucursal, por producto (FAR-06, D-06-3). La API decide ahora la disponibilidad por producto: un producto sin posición en una sucursal sigue lo declarado en el catálogo aunque la sucursal lleve stock propio de otros.
site-stock-rows.ts: desaparece el tipo de filaUNTRACKED(«Sin registrar en esta sucursal» con su botón «Lo tengo»). Sin posición, la fila esCATALOG: lo del catálogo, con el interruptor de siempre.site-stock-panel.html: en una sucursal con stock propio, las filas que siguen el catálogo dicen «Como en el catálogo». Los avisos explican que lo propio es por producto, también el de «Todas» (pharmacy-inventory.ts) y la descripción del selector («Con stock propio»).outOfStockDeclared(PharmacyProduct, lectura de gestión), en vez de deducirse deinStock: falsecon conteo distinto de cero.«Motivo» en el teléfono (FAR-05). En la vista previa de importación de categorías, precios y sucursales, «Motivo» quedaba detrás del detalle plegado a 390. Pasa a columna primaria y la tabla se apila (
stackedOnMobile), como la del stock por sucursal. Spec nueva enentity-import.spec.ts.Evidencia que faltaba:
docs/frontend/evidence/far-04-catalogo-por-pestanas/(nueva), y los casos pendientes defar-05-importacion-masiva/(R2) yfar-06-stock-por-sucursal/(6 a 11).El diff contra
testes solo de este cambio y su evidencia.Evidencia de navegador
Tomada sobre la rama de
dev(#1691), mismo código: build de producción contra la API de mdavila-2001/mantra-core-health-api#1147 en local, cuentas sintéticas@alovida.test. Cada carpeta tiene suREADME.mdpor caso yconsola.txtcon hechos, escrituras y errores (los únicos errores de consola son el 422 provocado a propósito).?tab=, ninguna pantalla dibuja membrete propio, «Atrás» después de las seis vuelve a/administration/pharmacypharmacy-inventory?alerts=true→pharmacy-catalog?alerts=true&tab=inventorycon «solo alertas» marcado; categorías, precios e importación a su pestaña; «Revisar inventario» y «Actualizar en lote» abren Inventario e Importación/administration/pharmacy-catalogtermina en/dashboardy «Catálogo» no está en su menúpharmacy-catalog-hub.spec.ts)PATCH200, recarga); alta BLOCKED (catálogo oficial vacío en la base de verificación)PUT200{available:true, quantity:3}→ recarga → A en «Lo tengo»; el paciente vuelve a ver A en Sur 2 (1440 y 390)PUT422 → el motivo y el código de soporte bajo la fila de C, el aviso dice «el motivo está en su fila»; la marca se deshizo despuésVerificación
features/pharmacyycore/data-access/pharmacyen esta rama: 24 archivos, 349/349.eslint,tscy loscheck-*de abajo se corrieron en la rama dedev(mismos archivos).check-api-prefixes,check-route-prefixes,check-tokens,check-css-tokens,check-contrast,check-doc-linksycheck-english-identifiers(baseorigin/dev).origin/devlimpio:check-client-prefixes,check-colores-sueltos,check-architecture,check-form-pages,check-max-lines,check-usted,check-correcciones(solo cambian las rutas absolutas y, encheck-architecture, los imports aenv.generated, que el árbol limpio no tiene generado).Decisiones tomadas
outOfStockDeclared) la fila marcada no se reconoce y elPUTla rechaza con su motivo en la fila. No se deja la deducción vieja como respaldo: los dos PR van juntos.Generated by Claude Code