Update search diagnostic
This commit is contained in:
@ -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);
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user