BE/src/pg/user-maintenance/user-maintenance.controller.ts

90 lines
2.9 KiB
TypeScript
Raw Normal View History

2025-09-17 10:18:44 +05:30
import { Body, Controller, Get, Param, Patch, Post, UseGuards } from '@nestjs/common';
import { ApiTags } from '@nestjs/swagger';
import { Roles } from 'src/decorators/roles.decorator';
import { JwtAuthGuard } from 'src/guards/jwt-auth.guard';
import { RolesGuard } from 'src/guards/roles.guard';
import { UserMaintenanceService } from './user-maintenance.service';
import { CreateClientLoginsDTO, CreateSPLoginsDTO, CreateUSCIBLoginsDTO, EMAIL_DTO, SPID_CLIENTID_DTO, SPID_DTO, SPID_EMAIL_DTO, USERID_DTO } from 'src/dto/property.dto';
@ApiTags('User Maintenance - PG')
// @UseGuards(JwtAuthGuard, RolesGuard)
@Roles('ca', 'sa', 'ua')
@Controller('2')
export class UserMaintenanceController {
constructor(private readonly userMaintenanceService: UserMaintenanceService) { }
// SP_USER_DETAILS
// @Get('GetUserDetails/:P_USERID')
async GetPreparers(@Param() params: USERID_DTO) {
return await this.userMaintenanceService.GetSPUserDetails(params);
}
@Patch('LockUserAccount')
async LockUserAccount(@Body() body: SPID_EMAIL_DTO) {
return await this.userMaintenanceService.LockUserAccount(body);
}
// USCIB_LOGINS
@Get('GetUSCIBLogins')
@Roles('ua')
async GetUSCIBLogins() {
return await this.userMaintenanceService.GetUSCIBLogins();
}
@Post('CreateUSCIBLogins')
@Roles('ua')
async CreateUSCIBLogins(@Body() body: CreateUSCIBLoginsDTO) {
return await this.userMaintenanceService.CreateUSCIBLogins(body);
}
// SP LOGINS
@Get('GetSPLogins/:P_SPID')
@Roles('sa')
async GetSPLogins(@Param() params: SPID_DTO) {
return await this.userMaintenanceService.GetSPLogins(params);
}
@Post('CreateSPLogins')
@Roles('sa')
async CreateSPLogins(@Body() body: CreateSPLoginsDTO) {
return await this.userMaintenanceService.CreateSPLogins(body);
}
// CLIENT LOGINS
@Get('GetClientloginsBySPID/:P_SPID')
@Roles('sa')
async GetClientloginsBySPID(@Param() params: SPID_DTO) {
return await this.userMaintenanceService.GetSPLogins(params);
}
@Get('GetClientloginsByClientID/:P_SPID/:P_CLIENTID')
@Roles('sa')
async GetClientloginsByClientID(@Param() params: SPID_CLIENTID_DTO) {
return await this.userMaintenanceService.GetSPLogins(params);
}
@Post('CreateClientLogins')
@Roles('sa')
async CreateClientLogins(@Body() body: CreateClientLoginsDTO) {
return await this.userMaintenanceService.CreateClientLogins(body);
}
// validate email
@Get('ValidateEmail/:P_EMAILADDR')
async ValidateEmail(@Param() params: EMAIL_DTO) {
return await this.userMaintenanceService.ValidateEmail(params);
}
// get carnet summary data
@Get('GetCarnetSummaryData/:P_USERID')
GetCarnetSummaryData(@Param() params: USERID_DTO) {
return this.userMaintenanceService.GetCarnetSummaryData(params);
}
}