diff --git a/src/registrasi-sidsem/registrasi-sidsem.dto.ts b/src/registrasi-sidsem/registrasi-sidsem.dto.ts index fbead66ec4da85fd3d5ff7d5b537d1a8f873c361..5f631f12a78d35cc5ba28c5d5a3ba192555d5091 100644 --- a/src/registrasi-sidsem/registrasi-sidsem.dto.ts +++ b/src/registrasi-sidsem/registrasi-sidsem.dto.ts @@ -57,6 +57,11 @@ export class GetAllPengajuanSidangReqQueryDto extends SidsemViewQueryDto { @IsOptional() jenisSidang?: TipeSidsemEnum; + @ApiPropertyOptional({ enum: SidsemStatus }) + @IsEnum(SidsemStatus) + @IsOptional() + status?: SidsemStatus; + @IsOptional() @IsNumberString() @ApiPropertyOptional({ description: "default: 1" }) diff --git a/src/registrasi-sidsem/registrasi-sidsem.service.ts b/src/registrasi-sidsem/registrasi-sidsem.service.ts index 1f1b73a3907008766d8dfb9f34917b29283242e0..c803fb8be3aa8f4cf992908731be07a0cc8103f1 100644 --- a/src/registrasi-sidsem/registrasi-sidsem.service.ts +++ b/src/registrasi-sidsem/registrasi-sidsem.service.ts @@ -1,3 +1,4 @@ +import { HttpService } from "@nestjs/axios"; import { BadRequestException, ForbiddenException, @@ -6,14 +7,23 @@ import { NotFoundException, } from "@nestjs/common"; import { InjectRepository } from "@nestjs/typeorm"; +import * as dayjs from "dayjs"; +import { Request } from "express"; +import { firstValueFrom } from "rxjs"; +import { BerkasSidsem } from "src/entities/berkasSidsem.entity"; +import { KonfigurasiKeyEnum } from "src/entities/konfigurasi.entity"; import { - cmpTipeSidsem, PendaftaranSidsem, SidsemStatus, TipeSidsemEnum, + cmpTipeSidsem, } from "src/entities/pendaftaranSidsem"; +import { RegStatus } from "src/entities/pendaftaranTesis.entity"; +import { Pengguna, RoleEnum } from "src/entities/pengguna.entity"; import { PengujiSidsem } from "src/entities/pengujiSidsem.entity"; -import { DataSource, In, Repository, Brackets } from "typeorm"; +import { KonfigurasiService } from "src/konfigurasi/konfigurasi.service"; +import { RegistrasiTesisService } from "src/registrasi-tesis/registrasi-tesis.service"; +import { Brackets, DataSource, In, Repository } from "typeorm"; import { CreatePengajuanSidsemDto, GetAllPengajuanSidangItemDto, @@ -23,16 +33,6 @@ import { PengajuanSidsemIdDto, UpdateSidsemDetailDto, } from "./registrasi-sidsem.dto"; -import { RegStatus } from "src/entities/pendaftaranTesis.entity"; -import { RegistrasiTesisService } from "src/registrasi-tesis/registrasi-tesis.service"; -import { BerkasSidsem } from "src/entities/berkasSidsem.entity"; -import { Pengguna, RoleEnum } from "src/entities/pengguna.entity"; -import { KonfigurasiService } from "src/konfigurasi/konfigurasi.service"; -import { KonfigurasiKeyEnum } from "src/entities/konfigurasi.entity"; -import * as dayjs from "dayjs"; -import { HttpService } from "@nestjs/axios"; -import { Request } from "express"; -import { firstValueFrom } from "rxjs"; @Injectable() export class RegistrasiSidsemService { @@ -260,6 +260,12 @@ export class RegistrasiSidsemService { }); } + if (query.status) { + baseQuery.andWhere("ps.status = :status", { + status: query.status, + }); + } + if (query.limit) { baseQuery.take(query.limit); baseQuery.skip((query.page - 1) * query.limit);