diff --git a/modules/descargas/informe-rup/elementos-rup/receta-medica.component.ts b/modules/descargas/informe-rup/elementos-rup/receta-medica.component.ts
index 2ff6e6335..c39c227c3 100644
--- a/modules/descargas/informe-rup/elementos-rup/receta-medica.component.ts
+++ b/modules/descargas/informe-rup/elementos-rup/receta-medica.component.ts
@@ -39,7 +39,12 @@ export class RecetaMedicaComponent extends HTMLComponent {
{{#each registro.valor.medicamentos}}
- | {{generico.term}} |
+
+ {{generico.term}}
+ {{#if esMagistral}}
+ (Preparación Magistral)
+ {{/if}}
+ |
{{ unidades }} {{presentacion.term }}(s)
|
diff --git a/modules/insumos/insumos-schema.ts b/modules/insumos/insumos-schema.ts
index 8b8dc9f36..6648fc4d7 100644
--- a/modules/insumos/insumos-schema.ts
+++ b/modules/insumos/insumos-schema.ts
@@ -1,17 +1,21 @@
import * as mongoose from 'mongoose';
-import { AuditPlugin } from '@andes/mongoose-plugin-audit';
-
export const insumoSchema = new mongoose.Schema({
- insumo: String,
+ nombre: String,
+ codigo: [{
+ fuente: { type: String, enum: ['SIFAHO', 'SNOMED'] },
+ valor: String
+ }],
tipo: {
type: String,
enum: ['dispositivo', 'nutricion', 'magistral']
},
- requiereEspecificacion: Boolean
+ estado: {
+ type: String,
+ enum: ['activo', 'inactivo']
+ },
+ requiereEspecificacion: Boolean,
+ observaciones: String
});
-
-insumoSchema.plugin(AuditPlugin);
-
-export const Insumo = mongoose.model('insumo', insumoSchema, 'insumo');
+export const Insumo = mongoose.model('insumos', insumoSchema, 'insumos');
diff --git a/modules/insumos/insumos.routes.ts b/modules/insumos/insumos.routes.ts
index f4758a038..ab889ad25 100644
--- a/modules/insumos/insumos.routes.ts
+++ b/modules/insumos/insumos.routes.ts
@@ -7,8 +7,18 @@ class InsumosResource extends ResourceBase {
resourceName = 'insumos';
middlewares = [Auth.authenticate()];
searchFileds = {
- insumo: MongoQuery.partialString,
- tipo: MongoQuery.inArray,
+ nombre: MongoQuery.partialString,
+ termino: (value) => {
+ return {
+ $or: [
+ { nombre: { $regex: value, $options: 'i' } },
+ { 'codigo.valor': { $regex: value, $options: 'i' } }
+ ]
+ };
+ },
+ 'codigo.valor': MongoQuery.partialString,
+ tipo: MongoQuery.equalMatch,
+ estado: MongoQuery.equalMatch,
requiereEspecificacion: MongoQuery.equalMatch,
};
}
diff --git a/modules/recetas/receta-schema.ts b/modules/recetas/receta-schema.ts
index fcb699d53..5b99208f5 100644
--- a/modules/recetas/receta-schema.ts
+++ b/modules/recetas/receta-schema.ts
@@ -110,6 +110,8 @@ const medicamentoSubschema = new mongoose.Schema({
notaMedica: String
},
tratamientoProlongado: Boolean,
+ esMagistral: { type: Boolean, default: false },
+
tiempoTratamiento: mongoose.SchemaTypes.Mixed,
ordenTratamiento: Number,
tipoReceta: {
diff --git a/modules/recetas/recetasController.ts b/modules/recetas/recetasController.ts
index f6f61df78..557bedf8f 100644
--- a/modules/recetas/recetasController.ts
+++ b/modules/recetas/recetasController.ts
@@ -622,6 +622,7 @@ export async function crearReceta(dataReceta, req) {
notaMedica: medicamento.dosisDiaria.notaMedica
},
tratamientoProlongado,
+ esMagistral: medicamento.esMagistral,
tiempoTratamiento: tratamientoProlongado ? medicamento.tiempoTratamiento : null,
ordenTratamiento: i,
tipoReceta: medicamento.tipoReceta?.id || medicamento.tipoReceta || 'simple',