diff --git a/src/controllers/ProfileAvatarController.ts b/src/controllers/ProfileAvatarController.ts index a97cb6a1..c79e1821 100644 --- a/src/controllers/ProfileAvatarController.ts +++ b/src/controllers/ProfileAvatarController.ts @@ -22,6 +22,18 @@ export class ProfileAvatarController extends Controller { return new HttpSuccess(lists); } + @Get("profileId/{id}") + async getProfile(@Path() id: string) { + const profile = await this.profileRepository.findOne({ + select: ["avatar", "avatarName"], + where: { id }, + }); + + if (!profile) throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบข้อมูล"); + + return new HttpSuccess(profile); + } + @Get("select/{profileId}/{id}") public async selectAvatar(@Path() profileId: string, @Path() id: string) { const result = await this.avatarRepository.findOneBy({ id: id }); diff --git a/src/controllers/ProfileController.ts b/src/controllers/ProfileController.ts index f3168c46..7862f8f0 100644 --- a/src/controllers/ProfileController.ts +++ b/src/controllers/ProfileController.ts @@ -496,15 +496,27 @@ export class ProfileController extends Controller { if (!profile) throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบข้อมูล"); - const _caregiver = await this.profileRepo.find({ - relations: { posLevel: true, posType: true }, - }); - const _commander = await this.profileRepo.find({ - relations: { posLevel: true, posType: true }, - }); - const _chairman = await this.profileRepo.find({ - relations: { posLevel: true, posType: true }, - }); + const _caregiver = await this.profileRepo + .createQueryBuilder("profile") + .leftJoinAndSelect("profile.posLevel", "posLevel") + .leftJoinAndSelect("profile.posType", "posType") + .skip((1 - 1) * 20) + .take(20) + .getMany(); + const _commander = await this.profileRepo + .createQueryBuilder("profile") + .leftJoinAndSelect("profile.posLevel", "posLevel") + .leftJoinAndSelect("profile.posType", "posType") + .skip((1 - 1) * 20) + .take(20) + .getMany(); + const _chairman = await this.profileRepo + .createQueryBuilder("profile") + .leftJoinAndSelect("profile.posLevel", "posLevel") + .leftJoinAndSelect("profile.posType", "posType") + .skip((1 - 1) * 20) + .take(20) + .getMany(); const caregiver = _caregiver.map((_data) => ({ id: _data.id,