MIS Patrones de investigación



La última vez, se describió qué entidades básicas se utilizan para almacenar datos médicos en el MIS Namedi. Hoy, ofrecemos sumergirnos en el mundo de las plantillas para protocolos de investigación.

Protocolo de estudio: un documento emitido al paciente en sus brazos. ¿Qué es una plantilla? Hermosas imágenes y letras de colores son solo una fachada, y la base es una estructura almacenada en una base de datos. En general, puede elegir cualquier formato para describir datos abstractos que le permitan guardar una estructura jerárquica. Nos decidimos por XML.

Las plantillas no son datos estáticos que se ingresan en el campo de la tabla una vez y se olvidan. Con el tiempo, la estructura de la plantilla puede cambiar. Por ejemplo, faltan algunas medidas o, por el contrario, son superfluas, y el médico no las completa, coloca guiones o deja espacios vacíos. Otro caso de un cambio en la estructura es una extensión de la funcionalidad del sistema de plantillas o un replanteamiento de los antiguos. Independientemente de la razón de los cambios, la versión anterior de la plantilla indica el tiempo hasta el cual es válida, y la nueva, a su vez, a partir de qué momento entra en vigencia. Por lo tanto, todos los protocolos antiguos no pierden ni adquieren ninguna parte, y permanecen en la forma en que fueron entregados al paciente.

En general, el sistema usa más de 15 etiquetas, y cada una tiene su propio conjunto de atributos. Usando las etiquetas básicas que se describen a continuación, puede crear una plantilla para cualquier protocolo de investigación.

Plantilla


El elemento raíz dentro del cual se encuentran las etiquetas restantes. Usando dos atributos, indica la presencia y ubicación de la imagen principal en la plantilla:

  • image-id : identificador de la imagen que se encuentra en el repositorio;
  • posición de la imagen: ubicación de la imagen. Opciones: ninguna, arriba, esquina superior izquierda, esquina inferior izquierda, esquina superior izquierda. El valor predeterminado es ninguno.

Anatomia


Se usa para mostrar la esencia de la anatomía. Atributos

  • id : número de anatomía en la base de datos;
  • font-size, font-bold, font-underline - configuración de fuente;
  • nombre-anatomía : le permite redefinir el nombre de la anatomía. Por defecto, el nombre se toma de la base de datos.

Comentario de anatomía


Se usa para mostrar el comentario de la entidad. Atributos

  • comment-id : número de comentario en la base de datos;
  • use-default : una marca que indica la necesidad de completar automáticamente el campo de comentarios con una plantilla de frase estándar, marcada como "predeterminada". Las opciones son verdaderas y falsas. El valor predeterminado es falso;
  • tipo de comentario: indica el tipo de comentario. Opciones: comentario (comentario), conclusión (conclusión), queja (queja). El valor predeterminado es comentario.

Medida


Se usa para mostrar las dimensiones de la entidad. Atributos

  • id : número de medición en la base de datos;
  • max-width : el ancho total del elemento;
  • valor-ancho : el ancho de la lista desplegable para las dimensiones enumeradas;
  • ancho de unidad : ancho de unidades para medidas numéricas;
  • nombre-medición : le permite anular el nombre de la medición, que se toma de la base de datos de manera predeterminada;
  • need-points-to-end : muestra si se necesitan puntos después del valor de una dimensión enumerada. Las opciones son verdaderas y falsas. El valor predeterminado es falso;
  • nombre-vacío - una bandera que permite no mostrar el nombre de la dimensión. Las opciones son verdaderas y falsas. El valor predeterminado es falso;
  • show-referent-interval - bandera para mostrar el intervalo de referencia. Las opciones son verdaderas y falsas. El valor predeterminado es verdadero.

Etiqueta de conclusión


Usado al final del patrón. Como resultado, se agrega una línea verde en todo el ancho de la línea y la palabra "Conclusión" se muestra debajo de ella.

Todas estas etiquetas se pueden encontrar, por ejemplo, en la plantilla de vejiga de ultrasonido:

<template> <anatomy id="119" font-size="10" font-bold="true" font-underline="false" comment=" " /> <measurement id="663" comment="   " /> <measurement id="664" comment="     " /> <measurement id="665" comment="    (  )" /> <anatomy-comment comment-id="94" comment-type="comment" /> <conclusion-label spacing-before="HALF"/> <anatomy-comment comment-id="4" comment-type="conclusion" /> </template> 



Texto


Diseñado para mostrar texto plano. Atributos

  • etiqueta de texto : el texto mostrado;
  • max-width - ancho del elemento;
  • font-size, font-bold, font-underline - configuración de fuente;
  • is-color-selection : resalte en verde. Las opciones son verdaderas y falsas. El valor predeterminado es falso.

Grupo de medida


Se usa para mostrar un grupo de dimensiones de entidad. Puede poner etiquetas de medición y texto dentro de esta etiqueta. Atributos

  • id : número del grupo de medición en la base de datos;
  • is-color-selection : resalte en verde. Las opciones son verdaderas y falsas. El valor predeterminado es falso;
  • Intervalo múltiple : se utiliza para mostrar los intervalos de referencia cuando se ubican 2 mediciones en una línea con ellos. Las opciones son verdaderas y falsas. El valor predeterminado es falso;
  • show-through-slash : muestra las mediciones a través de /. Posibles opciones: verdadero y falso. El valor predeterminado es falso.

Una etiqueta se puede usar de dos maneras. El primer método: especifique solo la etiqueta del grupo de medición con los atributos deseados. El sistema, por su parte, agregará automáticamente todas las mediciones que se incluyen en este grupo de mediciones. Por ejemplo, la plantilla de ultrasonido del hígado y la vesícula biliar para la vesícula indica:

 <anatomy id="84" font-size="10" font-bold="true" font-underline="false" comment=" "/> <measurement-group id="7"/> <measurement id="429" comment=" "/> <measurement id="430" comment="   "/> <anatomy-comment comment-id="171" comment-type="comment" comment=" "/> 



La segunda forma: especifique la etiqueta del grupo de medición con los atributos necesarios y especifique algunos atributos de las etiquetas de medición dentro o agregue una etiqueta con texto. Por ejemplo, en la plantilla de ultrasonido BCA, el siguiente código se usa para mostrar información de la arteria carótida común:

Parte de la plantilla de ultrasonido BCA
 <line comment="-"> <text text-label=" " /> <text text-label="" max-width="197" is-color-selection="true" /> <text text-label="" max-width="197" is-color-selection="true" /> </line> <anatomy id="261" font-size="10" font-bold="true" font-underline="false" comment="  " /> <measurement-group id="11" multi-interval="true" comment="  :  "> <measurement id="609" unit-width="19" max-width="295" measurement-name="  (Vps)" comment="" /> <measurement id="606" unit-width="19" empty-name="true" comment="" /> </measurement-group> <measurement-group id="12" multi-interval="true" comment="  :  "> <measurement id="610" unit-width="19" max-width="295" measurement-name=" " comment="" /> <measurement id="607" unit-width="19" empty-name="true" comment="" /> </measurement-group> 




Para visualizar la inscripción "derecha-izquierda", se utilizan la etiqueta de texto familiar y una nueva línea , que se descifrarán a continuación.

Siempre puede encontrar una excepción en cualquier regla. También sucedió con la presión arterial. Este es exactamente el grupo de medición que determinó la nueva forma de mostrar grupos: los valores de medición se escriben a través de una barra diagonal y los intervalos de referencia se encuentran uno al lado del otro:

 <measurement id="1577" max-width="247" need-points-to-end="false" measurement-name=" " /> <measurement-group id="81" show-through-slash="true" multi-interval="true"> <measurement id="1581" unit-width="27" measurement-name=" " comment="  " /> <measurement id="1582" unit-width="27" max-width="190" empty-name="true" comment="  " /> </measurement-group> <measurement id="1621" comment=" " /> 



Línea


Todos los elementos dentro de esta etiqueta están en una línea. La principal diferencia entre la etiqueta de línea y el grupo de medición es que la línea combina visualmente datos que no están relacionados entre sí. Las etiquetas pueden incluir anatomía , medición y texto . La etiqueta utiliza los atributos is-color-selection y multi-intervalo , cuyo comportamiento corresponde a los mismos atributos en el grupo de medición .

Por ejemplo, las siguientes medidas se pueden encontrar en una tomografía computarizada del cerebro:

Parte de la tomografía computarizada del cerebro
 <line> <measurement id="2801" measurement-name="  " /> <measurement id="2782" measurement-name="  " /> <measurement id="2781" max-width="145" measurement-name="" comment="  "/> </line> <line> <measurement id="2762" measurement-name=" " /> <measurement id="2763" measurement-name=" " /> <measurement id="2764" max-width="145" measurement-name=" " /> </line> <line> <measurement id="2743" measurement-name=" " /> <text max-width="247" text-label=" " /> </line> <line> <measurement id="2803" max-width="169" measurement-name="" /> <measurement id="2767" value-width="148" comment="  "/> </line> <line> <measurement id="2821" measurement-name="  " /> <measurement id="2841" measurement-name="  " /> </line> 




Bueno, quedan algunas etiquetas más, pero pasemos a la letra, y luego a una descripción seca del "bien" restante.

Cada plantilla se adjunta a un precio específico (servicio). Todos los precios, a su vez, se distribuyen entre los grupos de precios. Estos últimos ya están incluidos en cualquier modalidad. Por ejemplo:

  • columna cervical (servicio) - cuello (grupo de precios) - resonancia magnética [MRI] (modalidad);
  • columna cervical (servicio) - cuello (grupo de precios) - tomografía computarizada [TC] (modalidad);
  • consulta con un médico general (servicio) - terapia (grupo de precios) - consultas y manipulaciones [CM] (modalidad);
  • riñones y glándulas suprarrenales (servicio) - cavidad abdominal (grupo de precios) - ultrasonido [ultrasonido] (modalidad).

Si consideramos el precio con más detalle, podemos distinguir los siguientes tipos:

  • principal;
  • adicional
  • análisis

Los servicios y análisis adicionales siempre están asociados con los principales y no se pueden pagar y realizar por separado de ellos. En general, la introducción de servicios adicionales en el marco del servicio principal no solo aumenta la cantidad de información recibida durante el examen (relevante para los estudios realizados en diversos equipos), sino que también facilita la introducción en el IIM del concepto de citas primarias y repetidas de un médico especialista.

Considere una cita con un terapeuta. Si traducimos la idea de una cita inicial al lenguaje de precios, obtenemos que esta cita consiste en los precios de una consulta con un médico general (precio principal) y el examen de un médico general (precio adicional). Mientras tanto, una segunda cita es solo una consulta de precios. Del mismo modo para otros especialistas. Este enfoque de dividir la recepción en dos listas de precios separadas le permite al paciente emitir una opinión solo con la información necesaria.

Al generar el protocolo de investigación, se tiene en cuenta la versión actual de la plantilla, que está vinculada a la lista de precios principal actual. Si un paciente paga, por ejemplo, el servicio "Ultrasonido del páncreas" o "consulta con un médico", entonces no surgen preguntas cuando se lo muestra al médico. Pero, ¿qué hacer si no solo se paga la consulta de un médico general, sino también un examen? ¿Cómo agregar una plantilla vinculada al examen de un médico?

No menos interesante es la visualización del protocolo de investigación para el diagnóstico de laboratorio (LD), que utiliza un enfoque diferente de las listas de precios adicionales. Es por eso que se asignó un tipo de precio separado para los análisis. En este caso, cada lista principal de precios de LD (prueba de frotis / raspado, prueba de orina, etc.) sirve para combinar varias listas de precios con el tipo de "análisis", que pertenecen a diferentes grupos de precios, en un solo conjunto. Como resultado, para cada lista de precios principal, solo se emite un protocolo de estudio, independientemente de la cantidad de análisis pagados. Si, por ejemplo, se ordenaron varios análisis de sangre (el precio principal es un análisis de sangre) y un frotis urológico (el precio principal es un examen de frotis / raspado), se emitirán dos conclusiones.

No debemos olvidar que algunos lugares en diferentes plantillas pueden duplicarse, o la plantilla es cursi muy grande y es difícil de navegar. Por ejemplo, un conjunto de medidas para las amígdalas derecha e izquierda se encuentran en los exámenes de un médico general, endocrinólogo, neumólogo, etc.

Por lo tanto, es necesario, en primer lugar, extraer un fragmento de código XML en una plantilla separada y luego agregarlo a un lugar especial y, en segundo lugar, adjuntar listas de precios o análisis adicionales a la plantilla de plantilla principal. Para estas tareas, necesitamos las tres etiquetas restantes.

Seguramente surgió la pregunta: ¿por qué usar etiquetas especiales cuando simplemente puede agregar una plantilla al final de otra, mientras recibe una especie de locomotora con vagones? Sí, existe tal manera. Sin embargo, el sistema de plantillas debe ser flexible y capaz de insertar diferentes plantillas en el lugar que necesitamos, mientras se observa un cierto orden.

Creador de plantillas


Utilizado como referencia a otra plantilla. El atributo id especifica el número de la plantilla insertada.

Como ejemplo, damos las plantillas de las amígdalas derecha e izquierda, que se utilizan en la plantilla para examinar especialistas.

Patrón de amígdala derecha
 <template> <line> <anatomy id="524" font-size="10" font-bold="true" font-underline="false" comment=" " /> <measurement id="1542" max-width="112" empty-name="true" comment="  " /> <measurement id="1543" max-width="161" empty-name="true" comment="  " /> </line> <line> <measurement id="1550" measurement-name="" comment="  " /> <measurement id="1551" measurement-name="" comment="  " /> <measurement id="1552" measurement-name="" comment="  " /> </line> </template> 


Patrón de amígdala izquierda
 <template> <line> <anatomy id="525" font-size="10" font-bold="true" font-underline="false" comment=" " /> <measurement id="1554" max-width="112" empty-name="true" comment="  " /> <measurement id="1555" max-width="161" empty-name="true" comment="  " /> </line> <line> <measurement id="1556" measurement-name="" comment="  " /> <measurement id="1557" measurement-name="" comment="  " /> <measurement id="1558" measurement-name="" comment="  " /> </line> </template> 


Parte de la plantilla de examen especializado, donde la plantilla número 516 es para la amígdala derecha y 517 es para la amígdala izquierda:

 <template-builder id="516"/> <anatomy-comment comment-id="372" comment-type="comment" comment="   " /> <template-builder id="517"/> <anatomy-comment comment-id="373" comment-type="comment" comment="   " /> 



Constructor de plantillas de precios


Indica la inserción de una plantilla, cuya disponibilidad depende del pago. Por ejemplo, un examen médico, varias pruebas. Contiene solo un atributo de identificación , donde se escribe el número de plantilla.

Plantilla de consulta al terapeuta:

 <template> <price-template-builder id="336"/> <anatomy-comment comment-id="370" comment-type="comment" comment="  " /> <conclusion-label spacing-before="HALF"/> <anatomy-comment comment-id="371" comment-type="conclusion" comment="  " /> </template> 



Plantilla de examen de terapeuta
 <template> <anatomy-comment comment-id="358" comment-type="complaint" comment=" " /> <measurement id="8541" comment=" " /> <line> <measurement id="1521" measurement-name="" comment=" " /> <measurement id="1559" measurement-name="" comment=" " /> <measurement id="1560" empty-name="true" comment=" " /> </line> <template-builder id="516"/> <anatomy-comment comment-id="372" comment-type="comment" comment="   " /> <template-builder id="517"/> <anatomy-comment comment-id="373" comment-type="comment" comment="   " /> <line> <measurement id="1181" comment=" " /> <measurement id="1182" measurement-name="" comment=" " /> <measurement id="1183" empty-name="true" comment=" " /> </line> <line> <measurement id="1561" max-width="247" measurement-name="" comment=" " /> <measurement id="1562" measurement-name=" " comment="  " /> <measurement id="1563" max-width="70" empty-name="true" comment="  " /> </line> <line> <measurement id="1564" measurement-name=" " comment="  " /> <measurement id="1565" empty-name="true" comment="  " /> <measurement id="1566" empty-name="true" comment="   " /> </line> <line> <measurement id="1567" measurement-name=" " comment="  " /> <measurement id="1568" empty-name="true" comment="  " /> <measurement id="1569" empty-name="true" comment="   " /> </line> <line> <measurement id="1570" measurement-name=" " comment="  " /> <measurement id="1571" empty-name="true" comment="  " /> <measurement id="1572" comment=""/> </line> <measurement id="1153" max-width="247" need-points-to-end="false" comment="  "/> <line> <measurement id="1573" measurement-name="  " /> <measurement id="1574" comment="   " /> </line> <measurement id="1575" comment=" " /> <measurement id="1576" comment="  " /> <measurement id="1577" max-width="247" need-points-to-end="false" measurement-name=" " /> <measurement-group id="81" show-through-slash="true" multi-interval="true" is-color-selection="false"> <measurement id="1581" unit-width="27" measurement-name=" " comment="  " /> <measurement id="1582" unit-width="27" max-width="190" empty-name="true" comment="  " /> </measurement-group> <line> <measurement id="1578" measurement-name="" comment=" " /> <measurement id="1579" empty-name="true" comment=" " /> <measurement id="1580" empty-name="true" comment=" " /> </line> <measurement id="1621" comment=" " /> <measurement id="1583" comment="   " /> <measurement id="1587" comment=" ()" /> <line> <measurement id="1584" max-width="247" comment=" " /> <measurement id="1585" comment=" " /> <measurement id="1586" max-width="70" empty-name="true" comment=" " /> </line> </template> 




Grupo de precios


Se usa para mostrar el grupo de precios en las plantillas de análisis. Puede contener una etiqueta de generador de plantillas de precios . Atributos

  • id : número del grupo de precios de la base de datos;
  • bgcolor - color de fondo;
  • fgcolor : color del texto.

Considere un protocolo de análisis de sangre para listas de precios pagados, estado lipídico, aspartato aminotransferasa (AcAT), alanina aminotransferasa (AlAT), testosterona total, estradiol, prolactina, hormona de crecimiento (STH).

Parte de una plantilla de análisis de sangre.
 <template> <price-group id="9" bgcolor="#E18C8E" fgcolor="#FFFFFF"> <price-template-builder id="368"/> <price-template-builder id="369"/> <price-template-builder id="370"/> <price-template-builder id="371"/> <price-template-builder id="372"/> <price-template-builder id="373"/> <price-template-builder id="374"/> <price-template-builder id="375"/> <price-template-builder id="379"/> </price-group> <price-group id="10" bgcolor="#E18C8E" fgcolor="#FFFFFF"> <price-template-builder id="380"/> <price-template-builder id="381"/> <price-template-builder id="382"/> <price-template-builder id="383"/> <price-template-builder id="384"/> <price-template-builder id="385"/> <price-template-builder id="716"/> <price-template-builder id="717"/> </price-group> <price-group id="17" bgcolor="#E18C8E" fgcolor="#FFFFFF"> <price-template-builder id="425"/> <price-template-builder id="426"/> <price-template-builder id="427"/> <price-template-builder id="428"/> <price-template-builder id="429"/> <price-template-builder id="430"/> <price-template-builder id="431"/> <price-template-builder id="432"/> </price-group> <price-group id="31" bgcolor="#E18C8E" fgcolor="#FFFFFF"> <price-template-builder id="445"/> <price-template-builder id="446"/> </price-group> <anatomy-comment comment-id="6"/> </template> 


Plantilla para el estado de los lípidos (número en la base de datos - 379):

 <template> <measurement id="36" comment=""/> <measurement id="37" comment=" "/> <measurement id="38" comment="    ()"/> <measurement id="39" comment="    ()"/> <measurement id="40" comment="     ("/> <measurement id="41" comment=" "/> </template> 

Plantilla para alanina aminotransferasa (AlAT) (número en la base de datos - 381):

 <template> <measurement id="43" comment=" ()"/> </template> 



El sistema tiene un par de atributos que se pueden encontrar en todas las etiquetas:

  • comentario : el sistema lo ignora y actúa como una marca para el desarrollador;
  • espaciado antes : espaciado de línea adicional. Posibles opciones: NINGUNO, MEDIO, COMPLETO. El valor predeterminado es NINGUNO;
  • is-short : indica el tipo de cadena: normal (falso) o corto (verdadero). El valor predeterminado es falso.

Usando el atributo is-short , puede hacer un protocolo de investigación, donde la imagen principal se encuentra a la izquierda, y varias dimensiones y grupos de medición están a la derecha. Una de estas conclusiones es un ultrasonido de la glándula tiroides, cuya plantilla se proporciona a continuación:

Plantilla de ultrasonido de tiroides
 <template image-id="5" need-warning="true" image-position="left-top-corner"> <anatomy id="22" font-size="10" font-bold="true" font-underline="false" is-short="true" comment=" "/> <line is-short="true" spacing-before="HALF"> <measurement id="310" max-width="156" comment=""/> <measurement id="341" max-width="156" comment=""/> </line> <line is-short="true"> <measurement id="308" max-width="156" comment=""/> <measurement id="342" max-width="156" comment=""/> </line> <template-builder id="253" is-short="true"/> <template-builder id="254" is-short="true"/> <measurement id="307" is-short="true" measurement-name=" " spacing-before="HALF" /> <measurement id="309" measurement-name="   " /> <anatomy-comment comment-id="9" comment-type="comment" spacing-before="HALF" /> <conclusion-label spacing-before="HALF"/> <anatomy-comment comment-id="8" comment-type="conclusion" /> </template> 


Patrón del lóbulo derecho:

 <template> <anatomy id="24" font-size="10" font-bold="true" font-underline="false" spacing-before="HALF" is-short="true" comment=" "/> <measurement-group id="2" is-color-selection="true" is-short="true"/> </template> 

Plantilla del lóbulo izquierdo:

 <template> <anatomy id="23" font-size="10" font-bold="true" font-underline="false" spacing-before="HALF" is-short="true" comment=" "/> <measurement-group id="1" is-color-selection="true" is-short="true"/> </template> 



Ya hemos mencionado que varias metamorfosis ocurren con una persona a lo largo de la vida. Las etiquetas restantes son solo para su descripción, y se considerarán la próxima vez.

Source: https://habr.com/ru/post/es416645/


All Articles