update registrationfee bugs

This commit is contained in:
wayanrivan
2026-04-30 10:12:58 +07:00
parent 435f21bad1
commit 4715f55cc2
2 changed files with 17 additions and 20 deletions

View File

@ -133,7 +133,7 @@ export class InpatientRoomController {
data.room = room; data.room = room;
data.name = param.name; data.name = param.name;
data.number_of_bed = param.number_of_bed; data.number_of_bed = param.number_of_bed;
data.created_by = req.auth.data.name; data.created_by = req.auth?.data.name;
await OrmHelper.DB.manager.save(data); await OrmHelper.DB.manager.save(data);
@ -231,7 +231,7 @@ export class InpatientRoomController {
inpatientRoom.room = room; inpatientRoom.room = room;
inpatientRoom.name = param.name; inpatientRoom.name = param.name;
inpatientRoom.number_of_bed = param.number_of_bed; inpatientRoom.number_of_bed = param.number_of_bed;
inpatientRoom.updated_by = req.auth.data.name; inpatientRoom.updated_by = req.auth?.data.name;
await queryRunner.manager.save(inpatientRoom); await queryRunner.manager.save(inpatientRoom);
@ -277,7 +277,7 @@ export class InpatientRoomController {
const repo = OrmHelper.DB.getRepository(InpatientRoom); const repo = OrmHelper.DB.getRepository(InpatientRoom);
const affected = (!param.hard ? await repo.softDelete({ id: param.id }) : await repo.delete({ id: param.id })).affected; const affected = (!param.hard ? await repo.softDelete({ id: param.id }) : await repo.delete({ id: param.id })).affected ?? 0;
if (affected > 0) { if (affected > 0) {
return ReturnHelper.successResponseAny(res, 200, Language.lang.success_delete, {}); return ReturnHelper.successResponseAny(res, 200, Language.lang.success_delete, {});

View File

@ -49,40 +49,37 @@ export class RegistrationFeeController {
const filter = param.filter && param.filter !== "" ? JSON.parse(param.filter) : {}; const filter = param.filter && param.filter !== "" ? JSON.parse(param.filter) : {};
const offset = (param.page - 1) * param.limit; const offset = (param.page - 1) * param.limit;
const query = OrmHelper.DB.getRepository(RegistrationFee) const baseQuery = OrmHelper.DB.getRepository(RegistrationFee)
.createQueryBuilder("RegistrationFee") .createQueryBuilder("RegistrationFee")
.leftJoinAndSelect("RegistrationFee.services", "service") .leftJoinAndMapMany(
.select([ "RegistrationFee.services",
"RegistrationFee.id", Service,
"RegistrationFee.type", "service",
"RegistrationFee.created_at", "service.id::text = ANY(RegistrationFee.service)"
"RegistrationFee.updated_at", );
"service.id",
"service.name",
]);
// ── Filter RegistrationFee.type ─────────────────────────────────── // ── Filter RegistrationFee.type ───────────────────────────────────
if (filter.type && filter.type !== "") { if (filter.type && filter.type !== "") {
query.andWhere("RegistrationFee.type = :type", { type: filter.type }); baseQuery.andWhere("RegistrationFee.type ILIKE :type", { type:`%${filter.type}%` });
} }
// ── Filter service.name ─────────────────────────────────────────── // ── Filter service.name ───────────────────────────────────────────
if (filter.service_name && filter.service_name !== "") { if (filter.service_name && filter.service_name !== "") {
query.andWhere("service.name ILIKE :service_name", { service_name: `%${filter.service_name}%` }); baseQuery.andWhere("service.name ILIKE :service_name", { service_name: `%${filter.service_name}%` });
} }
// ── Filter service.id ───────────────────────────────────────────── // ── Filter service.id ─────────────────────────────────────────────
if (filter.service_id && filter.service_id !== "") { if (filter.service_id && filter.service_id !== "") {
query.andWhere("service.id = :service_id", { service_id: filter.service_id }); baseQuery.andWhere("service.id = :service_id", { service_id: filter.service_id });
} }
if (param.with_deleted) { if (param.with_deleted) {
query.withDeleted(); baseQuery.withDeleted();
} }
const current_page = param.page; const current_page = param.page;
const total_count_data = await query.getCount(); const total_count_data = await baseQuery.getCount();
const list_data = await query const list_data = await baseQuery
.orderBy("RegistrationFee." + param.order_field, param.order_direction) .orderBy("RegistrationFee." + param.order_field, param.order_direction)
.offset(offset) .offset(offset)
.limit(param.limit) .limit(param.limit)
@ -165,7 +162,7 @@ export class RegistrationFeeController {
const param: any = await schema.validateAsync({ const param: any = await schema.validateAsync({
...req.body, ...req.body,
id: req.params.id id: req.params.id
}); });
if (param.service && param.service.length > 0) { if (param.service && param.service.length > 0) {
for (const serviceId of param.service) { for (const serviceId of param.service) {