diff --git a/modules/insumos/insumos-schema.ts b/modules/insumos/insumos-schema.ts index f8fd5c0532..7e550b7740 100644 --- a/modules/insumos/insumos-schema.ts +++ b/modules/insumos/insumos-schema.ts @@ -1,7 +1,6 @@ import * as mongoose from 'mongoose'; import { AuditPlugin } from '@andes/mongoose-plugin-audit'; - export const insumoSchema = new mongoose.Schema({ nombre: String, codigo: [{ diff --git a/modules/insumos/insumos.routes.ts b/modules/insumos/insumos.routes.ts index 72a6ccb354..c8e88a9bc4 100644 --- a/modules/insumos/insumos.routes.ts +++ b/modules/insumos/insumos.routes.ts @@ -7,9 +7,15 @@ class InsumosResource extends ResourceBase { resourceName = 'insumos'; middlewares = [Auth.authenticate()]; searchFileds = { - nombre: MongoQuery.partialString, - 'codigo.valor': MongoQuery.partialString, - tipo: MongoQuery.equalMatch, + nombre: (value: any) => { + if (value && value.charAt(0) === '^') { + const searchPattern = value.substring(1); + const escaped = searchPattern.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\$&'); + return { $regex: escaped, $options: 'i' }; + } + return value; + }, + tipo: MongoQuery.inArray, estado: MongoQuery.equalMatch, requiereEspecificacion: MongoQuery.equalMatch, }; diff --git a/modules/recetas/recetasInsumos/receta-insumo.events.ts b/modules/recetas/recetasInsumos/receta-insumo.events.ts index 15b66b5a97..9ae7d5a046 100644 --- a/modules/recetas/recetasInsumos/receta-insumo.events.ts +++ b/modules/recetas/recetasInsumos/receta-insumo.events.ts @@ -3,7 +3,7 @@ import { crearRecetaInsumo } from '../../recetas/recetasInsumos/recetaInsumosCon import { getProfesionActualizada } from '../../recetas/recetasController'; import * as moment from 'moment'; import { RecetaInsumo } from './receta-insumo.schema'; -import { createLog, informarLog, updateLog, jobsLog } from './../recetaLogs'; +import { createLog } from './../recetaLogs'; EventCore.on('prestacion:recetaInsumo:create', async ({ prestacion, registro }) => { const idRegistro = registro._id; @@ -39,6 +39,7 @@ EventCore.on('prestacion:recetaInsumo:create', async ({ prestacion, registro }) for (const insumo of registro.valor.insumos) { const receta: any = await RecetaInsumo.findOne({ 'insumo.id': insumo.generico.id, + 'insumo.nombre': insumo.generico.nombre, idRegistro }); if (!receta) { diff --git a/modules/recetas/recetasInsumos/receta-insumo.schema.ts b/modules/recetas/recetasInsumos/receta-insumo.schema.ts index 2d6af10eef..fa6d1598d7 100644 --- a/modules/recetas/recetasInsumos/receta-insumo.schema.ts +++ b/modules/recetas/recetasInsumos/receta-insumo.schema.ts @@ -11,7 +11,6 @@ const insumoSubSchema = new mongoose.Schema({ valor: String } ], - tipo: { type: String, enum: ['dispositivo', 'nutricion', 'magistral']