diff --git a/src/registrasi-sidsem/registrasi-sidsem.controller.ts b/src/registrasi-sidsem/registrasi-sidsem.controller.ts
index 3cc510a800f8d1434f56374cf78aee03bbee5d07..0b86f03572797d80254190b1a67f57e191bbe38c 100644
--- a/src/registrasi-sidsem/registrasi-sidsem.controller.ts
+++ b/src/registrasi-sidsem/registrasi-sidsem.controller.ts
@@ -13,6 +13,7 @@ import {
 import {
   ApiBearerAuth,
   ApiCookieAuth,
+  ApiCreatedResponse,
   ApiOkResponse,
   ApiOperation,
   ApiTags,
@@ -24,6 +25,7 @@ import {
   CreatePengajuanSidsemDto,
   GetAllPengajuanSidangReqQueryDto,
   GetAllPengajuanSidangRespDto,
+  GetOnePengajuanSidangRespDto,
   PengajuanSidsemIdDto,
   SidsemMhsIdParamDto,
   UpdateSidsemDetailDto,
@@ -48,7 +50,7 @@ import {
 export class RegistrasiSidsemController {
   constructor(private readonly regisSidsemService: RegistrasiSidsemService) {}
 
-  @ApiOkResponse({ type: PengajuanSidsemIdDto })
+  @ApiCreatedResponse({ type: PengajuanSidsemIdDto })
   @Roles(RoleEnum.S2_MAHASISWA)
   @Post()
   async create(@Req() req: Request, @Body() dto: CreatePengajuanSidsemDto) {
@@ -76,7 +78,7 @@ export class RegistrasiSidsemController {
     );
   }
 
-  @ApiOkResponse({ type: PengajuanSidsemIdDto })
+  @ApiOkResponse({ type: GetOnePengajuanSidangRespDto })
   @Roles(...HIGH_AUTHORITY_ROLES, ...DOSEN, RoleEnum.S2_MAHASISWA)
   @Get("/mahasiswa/:mhsId")
   async findOne(@Req() req: Request, @Param() param: SidsemMhsIdParamDto) {
diff --git a/src/registrasi-sidsem/registrasi-sidsem.dto.ts b/src/registrasi-sidsem/registrasi-sidsem.dto.ts
index 46b28569e4da5770cfd5449a1b4561a6c46e3b50..6e3495e64e7539c0b6d1625b688c2db542480e0f 100644
--- a/src/registrasi-sidsem/registrasi-sidsem.dto.ts
+++ b/src/registrasi-sidsem/registrasi-sidsem.dto.ts
@@ -117,9 +117,9 @@ export class GetOnePengajuanSidangRespDto extends GetAllPengajuanSidangItemDto {
   judulTopik: string;
   @ApiProperty()
   deskripsiTopik: string;
-  @ApiProperty({ isArray: true })
+  @ApiProperty({ type: [String] })
   dosenPembimbing: string[];
-  @ApiProperty({ isArray: true })
+  @ApiProperty({ type: [String] })
   dosenPenguji: string[];
 }
 
diff --git a/src/registrasi-sidsem/registrasi-sidsem.service.ts b/src/registrasi-sidsem/registrasi-sidsem.service.ts
index 0c25202e31029b46f99720233f165c0677fda919..de643d6189ee0907bcc2ef450d5aad9fe11dfb6c 100644
--- a/src/registrasi-sidsem/registrasi-sidsem.service.ts
+++ b/src/registrasi-sidsem/registrasi-sidsem.service.ts
@@ -166,24 +166,26 @@ export class RegistrasiSidsemService {
         "latest",
         "latest.latest_pendaftaranTesisId = ps.pendaftaranTesisId AND ps.waktuPengiriman = latest.latestPengiriman",
       )
-      .innerJoin("ps.pendaftaranTesis", "pt")
-      .innerJoin("ps.berkasSidsem", "berkasSidsem")
-      .innerJoin("pt.dosenBimbingan", "dosenBimbingan")
-      .innerJoin("dosenBimbingan.dosen", "dosen")
-      .innerJoin("pt.mahasiswa", "mahasiswa")
+      .leftJoin("ps.pendaftaranTesis", "pt")
+      .leftJoin("ps.berkasSidsem", "berkasSidsem")
+      .leftJoin("pt.dosenBimbingan", "dosenBimbingan")
+      .leftJoin("dosenBimbingan.dosen", "dosen")
+      .leftJoin("pt.mahasiswa", "mahasiswa")
       .where("mahasiswa.aktif = true")
       .orderBy("ps.waktuPengiriman", "DESC");
 
     if (idPembimbing) {
-      baseQuery.andWhere("dosenBimbingan.dosenId = :idPembimbing", {
-        idPembimbing,
-      });
+      baseQuery
+        .innerJoin("pt.dosenBimbingan", "dosenBimbinganFilter")
+        .andWhere("dosenBimbinganFilter.idDosen = :idPembimbing", {
+          idPembimbing,
+        });
     }
 
     if (idPenguji) {
       baseQuery
-        .innerJoin("ps.penguji", "penguji")
-        .andWhere("penguji.idDosen = :idPenguji", {
+        .innerJoin("ps.penguji", "pengujiFilter")
+        .andWhere("pengujiFilter.idDosen = :idPenguji", {
           idPenguji,
         });
     }