update
This commit is contained in:
@ -48,22 +48,38 @@ export class ExaminationDetailController {
|
|||||||
const offset = (param.page - 1) * param.limit;
|
const offset = (param.page - 1) * param.limit;
|
||||||
let limit = param.limit;
|
let limit = param.limit;
|
||||||
|
|
||||||
const res_count = query;
|
const res_count = query.clone();
|
||||||
const res_list = query
|
const res_ids = query
|
||||||
.leftJoinAndSelect("ExaminationDetail.measurement_unit", "measurementUnit")
|
.clone()
|
||||||
.leftJoinAndSelect("ExaminationDetail.reference_range", "referenceRange")
|
.select("ExaminationDetail.id", "id")
|
||||||
.orderBy("ExaminationDetail." + param.order_field, param.order_direction)
|
.orderBy("ExaminationDetail." + param.order_field, param.order_direction)
|
||||||
.offset(offset)
|
.offset(offset)
|
||||||
.limit(limit);
|
.limit(limit);
|
||||||
|
|
||||||
if (param.with_deleted) {
|
if (param.with_deleted) {
|
||||||
res_count.withDeleted();
|
res_count.withDeleted();
|
||||||
res_list.withDeleted();
|
res_ids.withDeleted();
|
||||||
}
|
}
|
||||||
|
|
||||||
const current_page = param.page;
|
const current_page = param.page;
|
||||||
const total_count_data = await res_count.getCount();
|
const total_count_data = await res_count.getCount();
|
||||||
const list_data = await res_list.getMany();
|
const ids = (await res_ids.getRawMany()).map((r: any) => r.id).filter(Boolean);
|
||||||
|
|
||||||
|
let list_data: any[] = [];
|
||||||
|
if (ids.length > 0) {
|
||||||
|
const res_list = OrmHelper.DB.getRepository(ExaminationDetail)
|
||||||
|
.createQueryBuilder("ExaminationDetail")
|
||||||
|
.leftJoinAndSelect("ExaminationDetail.measurement_unit", "measurementUnit")
|
||||||
|
.leftJoinAndSelect("ExaminationDetail.reference_range", "referenceRange")
|
||||||
|
.where("ExaminationDetail.id IN (:...ids)", { ids })
|
||||||
|
.orderBy("ExaminationDetail." + param.order_field, param.order_direction);
|
||||||
|
|
||||||
|
if (param.with_deleted) {
|
||||||
|
res_list.withDeleted();
|
||||||
|
}
|
||||||
|
|
||||||
|
list_data = await res_list.getMany();
|
||||||
|
}
|
||||||
const count_data = CommonHelper.countObject(list_data);
|
const count_data = CommonHelper.countObject(list_data);
|
||||||
|
|
||||||
return ReturnHelper.successResponselist(res, 200, Language.lang.success_view, count_data, current_page, total_count_data, list_data);
|
return ReturnHelper.successResponselist(res, 200, Language.lang.success_view, count_data, current_page, total_count_data, list_data);
|
||||||
@ -135,8 +151,7 @@ export class ExaminationDetailController {
|
|||||||
|
|
||||||
let param: any = await schema.validateAsync(req.params);
|
let param: any = await schema.validateAsync(req.params);
|
||||||
|
|
||||||
let examinationDetail = await ExaminationDetailModel.list({ "ExaminationDetail.id": param.id })
|
let examinationDetail = await ExaminationDetailModel.list({ "ExaminationDetail.id": param.id }).then((q) => q.leftJoinAndSelect("ExaminationDetail.measurement_unit", "measurementUnit").leftJoinAndSelect("ExaminationDetail.reference_range", "referenceRange").getOne());
|
||||||
.then((q) => q.leftJoinAndSelect("ExaminationDetail.measurement_unit", "measurementUnit").leftJoinAndSelect("ExaminationDetail.reference_range", "referenceRange").getOne());
|
|
||||||
|
|
||||||
if (!examinationDetail) throw { message: "Examination Detail Not Found" };
|
if (!examinationDetail) throw { message: "Examination Detail Not Found" };
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user