Update search diagnostic

This commit is contained in:
Narul Hidayah
2026-05-29 13:14:13 +09:00
parent a124af5618
commit b98cb1c6e9

View File

@ -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);
}),
);
}