BE/src/mssql/manage-holders/manage-holders.controller.ts
2025-05-26 17:27:36 +05:30

123 lines
3.9 KiB
TypeScript

import { BadRequestException, Body, Controller, Get, Param, ParseIntPipe, Patch, Post, Put } from '@nestjs/common';
import { ApiTags } from '@nestjs/swagger';
import { ManageHoldersService } from './manage-holders.service';
import { CreateHoldersDTO, GetHolderDTO, HolderActivateOrInactivateDTO, HolderContactActivateOrInactivateDTO, UpdateHolderContactDTO, UpdateHolderDTO } from 'src/dto/holder/holder.dto';
@Controller('mssql')
export class ManageHoldersController {
constructor(private readonly manageHoldersService: ManageHoldersService) { }
@ApiTags('Manage Holders - Mssql')
@Post('/CreateHolderData')
CreateHolders(@Body() body: CreateHoldersDTO) {
return this.manageHoldersService.CreateHolders(body);
}
@ApiTags('Manage Holders - Mssql')
@Put('/UpdateHolder')
UpdateHolder(@Body() body: UpdateHolderDTO) {
return this.manageHoldersService.UpdateHolder(body);
}
@ApiTags('Manage Holders - Mssql')
@Put('/UpdateHolderContact')
UpdateHolderContact(@Body() body: UpdateHolderContactDTO) {
return this.manageHoldersService.UpdateHolderContact(body);
}
@ApiTags('Manage Holders - Mssql')
@Get('/GetHolderRecord/:p_spid/:p_holderid')
GetHolderMaster(
@Param('P_SPID', ParseIntPipe) P_SPID: number,
@Param('P_HOLDERID', ParseIntPipe) P_HOLDERID: number,
) {
const reqParams: GetHolderDTO = { P_SPID, P_HOLDERID };
return this.manageHoldersService.GetHolderRecord(reqParams);
}
@ApiTags('Manage Holders - Mssql')
@Get('/GetHolderContacts/:p_spid/:p_holderid')
GetHolderContacts(
@Param('P_SPID', ParseIntPipe) P_SPID: number,
@Param('P_HOLDERID', ParseIntPipe) P_HOLDERID: number,
) {
const reqParams: GetHolderDTO = { P_SPID, P_HOLDERID };
return this.manageHoldersService.GetHolderContacts(reqParams);
}
@ApiTags('Manage Holders - Mssql')
@Patch('/InactivateHolder/:P_SPID/:P_HOLDERID/:P_USERID')
InactivateHolder(
@Param('P_SPID', ParseIntPipe) P_SPID: number,
@Param('P_HOLDERID', ParseIntPipe) P_HOLDERID: number,
@Param('P_USERID') P_USERID: string
) {
if (!P_USERID) {
throw new BadRequestException("Bad Request");
}
const reqParams: HolderActivateOrInactivateDTO = { P_SPID, P_HOLDERID, P_USERID };
return this.manageHoldersService.InactivateHolder(reqParams);
}
@ApiTags('Manage Holders - Mssql')
@Patch('/ReactivateHolder/:P_SPID/:P_HOLDERID/:P_USERID')
ReactivateHolder(
@Param('P_SPID', ParseIntPipe) P_SPID: number,
@Param('P_HOLDERID', ParseIntPipe) P_HOLDERID: number,
@Param('P_USERID') P_USERID: string
) {
if (!P_USERID) {
throw new BadRequestException("Bad Request");
}
const reqParams: HolderActivateOrInactivateDTO = { P_SPID, P_HOLDERID, P_USERID };
return this.manageHoldersService.ReactivateHolder(reqParams);
}
@ApiTags('Manage Holders - Mssql')
@Patch('/InactivateHolderContact/:P_SPID/:P_HOLDERCONTACTID/:P_USERID')
InactivateHolderContact(
@Param('P_SPID', ParseIntPipe) P_SPID: number,
@Param('P_HOLDERCONTACTID', ParseIntPipe) P_HOLDERCONTACTID: number,
@Param('P_USERID') P_USERID: string
) {
if (!P_USERID) {
throw new BadRequestException("Bad Request");
}
const reqParams: HolderContactActivateOrInactivateDTO = {
P_SPID,
P_HOLDERCONTACTID,
P_USERID
};
return this.manageHoldersService.InactivateHolderContact(reqParams);
}
@ApiTags('Manage Holders - Mssql')
@Patch('/ReactivateHolderContact/:P_SPID/:P_HOLDERCONTACTID/:P_USERID')
ReactivateHolderContact(
@Param('P_SPID', ParseIntPipe) P_SPID: number,
@Param('P_HOLDERCONTACTID', ParseIntPipe) P_HOLDERCONTACTID: number,
@Param('P_USERID') P_USERID: string
) {
if (!P_USERID) {
throw new BadRequestException("Bad Request");
}
const reqParams: HolderContactActivateOrInactivateDTO = {
P_SPID,
P_HOLDERCONTACTID,
P_USERID
};
return this.manageHoldersService.ReactivateHolderContact(reqParams);
}
}