diff --git a/src/controllers/diagnosis.ts b/src/controllers/diagnosis.ts index 5543e2d..eeb3f89 100644 --- a/src/controllers/diagnosis.ts +++ b/src/controllers/diagnosis.ts @@ -25,7 +25,7 @@ export class DiagnosisController { "bearerAuth": [] }] #swagger.parameters['filter'] = { - description: 'Filter: JSON object; Diagnosis.code and Diagnosis.diagnosis are combined with OR; other fields use AND.', + description: 'Filter: JSON object; Diagnosis.code, Diagnosis.diagnosis, and Diagnosis.type are combined with OR; other fields use AND.', in: 'query', type: 'string', } @@ -74,15 +74,18 @@ export class DiagnosisController { const codeKey = "Diagnosis.code"; const diagnosisKey = "Diagnosis.diagnosis"; + const typeKey = "Diagnosis.type"; const orCode = filter[codeKey]; const orDiagnosis = filter[diagnosisKey]; + const orType = filter[typeKey]; const restFilter = { ...filter }; delete restFilter[codeKey]; delete restFilter[diagnosisKey]; + delete restFilter[typeKey]; var query = await DiagnosisModel.list(restFilter); - if (orCode !== undefined || orDiagnosis !== undefined) { + if (orCode !== undefined || orDiagnosis !== undefined || orType !== undefined) { query.andWhere( new Brackets((qb) => { let isFirst = true; @@ -110,6 +113,7 @@ export class DiagnosisController { }; if (orCode !== undefined) addOr("Diagnosis.code", "diag_or_code", orCode); if (orDiagnosis !== undefined) addOr("Diagnosis.diagnosis", "diag_or_diagnosis", orDiagnosis); + if (orType !== undefined) addOr("Diagnosis.type", "diag_or_type", orType); }), ); }