From 2259d306b11ec1c471c7eb78674b3135b8fe8298 Mon Sep 17 00:00:00 2001 From: Kallesh B S Date: Tue, 8 Jul 2025 17:56:39 +0530 Subject: [PATCH] holder modifying --- src/dto/manage-clients/manage-clients.dto.ts | 4 +-- .../manage-clients/manage-clients.service.ts | 2 +- .../carnet-application.service.ts | 18 +++++++--- .../manage-clients/manage-clients.service.ts | 4 +-- .../manage-holders/manage-holders.service.ts | 33 ++++++++++--------- 5 files changed, 35 insertions(+), 26 deletions(-) diff --git a/src/dto/manage-clients/manage-clients.dto.ts b/src/dto/manage-clients/manage-clients.dto.ts index 15c8e42..e1d494f 100644 --- a/src/dto/manage-clients/manage-clients.dto.ts +++ b/src/dto/manage-clients/manage-clients.dto.ts @@ -1,6 +1,6 @@ import { IntersectionType, PartialType } from "@nestjs/swagger"; -import { CONTACTSTABLE_DTO } from "../manage-holders/manage-holders-property.dto"; +import { CONTACTSTABLE_DTO, LOCATIONID_DTO } from "../manage-holders/manage-holders-property.dto"; import { DEFAULT_CONTACT_FLAG_DTO, EMAIL_ADDRESS_DTO, FAX_NO_DTO, FIRSTNAME_DTO, LASTNAME_DTO, @@ -102,7 +102,7 @@ export class UpdateClientLocationsDTO extends IntersectionType( export class CreateClientContactsDTO extends IntersectionType( SPID_DTO, - CLIENTID_DTO, + LOCATIONID_DTO, CONTACTSTABLE_DTO, DEFAULT_CONTACT_FLAG_DTO, USERID_DTO diff --git a/src/mssql/manage-clients/manage-clients.service.ts b/src/mssql/manage-clients/manage-clients.service.ts index 4ffe384..2b45108 100644 --- a/src/mssql/manage-clients/manage-clients.service.ts +++ b/src/mssql/manage-clients/manage-clients.service.ts @@ -201,7 +201,7 @@ export class ManageClientsService { connection = await this.mssqlDBService.getConnection(); const request = new Request(connection); request.input('P_SPID', mssql.Int, finalBody.P_SPID); - request.input('P_CLIENTID', mssql.Int, finalBody.P_CLIENTID); + request.input('P_LOCATIONID', mssql.Int, finalBody.P_LOCATIONID); const contactTable = new mssql.Table('carnetsys.ContactsTable'); contactTable.create = true; diff --git a/src/oracle/carnet-application/carnet-application.service.ts b/src/oracle/carnet-application/carnet-application.service.ts index f671ed3..155eea8 100644 --- a/src/oracle/carnet-application/carnet-application.service.ts +++ b/src/oracle/carnet-application/carnet-application.service.ts @@ -15,6 +15,7 @@ import { GetCarnetControlCenterDTO } from 'src/dto/property.dto'; import { OracleService } from '../oracle.service'; +import { BadRequestException } from 'src/exceptions/badRequest.exception'; @Injectable() export class CarnetApplicationService { @@ -272,7 +273,7 @@ export class CarnetApplicationService { `BEGIN CARNETAPPLICATION_PKG.CreateApplication( :P_SPID, :P_CLIENTID, :P_LOCATIONID, :P_USERID, - :P_APPLICATIONNAME, :P_ORDERTYPE, :P_ERRORMESG + :P_APPLICATIONNAME, :P_ORDERTYPE, :P_CURSOR ); END;`, { @@ -282,8 +283,8 @@ export class CarnetApplicationService { P_USERID: { val: body.P_USERID, type: oracledb.DB_TYPE_NVARCHAR }, P_APPLICATIONNAME: { val: body.P_APPLICATIONNAME, type: oracledb.DB_TYPE_NVARCHAR }, P_ORDERTYPE: { val: body.P_ORDERTYPE, type: oracledb.DB_TYPE_NVARCHAR }, - P_ERRORMESG: { dir: oracledb.BIND_OUT, type: oracledb.CURSOR }, - // P_CURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT } + // P_ERRORMESG: { dir: oracledb.BIND_OUT, type: oracledb.DB_TYPE_NVARCHAR }, + P_CURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT } }, { outFormat: oracledb.OUT_FORMAT_OBJECT } ); @@ -291,12 +292,19 @@ export class CarnetApplicationService { await connection.commit(); const outBinds = result.outBinds; - if (!outBinds?.P_ERRORMESG) { + if (!outBinds?.P_CURSOR) { this.logger.error('One or more expected cursors are missing from stored procedure output.'); throw new InternalServerException("Incomplete data received from the database."); } - return await fetchCursor(outBinds.P_ERRORMESG, CarnetApplicationService.name); + const fres: any = await fetchCursor(outBinds.P_CURSOR, CarnetApplicationService.name); + + if (fres.length > 0 && fres[0].ERRORMESG) { + this.logger.warn(fres[0].ERRORMESG); + throw new BadRequestException(fres[0].ERRORMESG) + } + + return { statusCode: 201, message: "Application created successfully", ...fres[0] }; } catch (error) { handleError(error, CarnetApplicationService.name) } finally { diff --git a/src/oracle/manage-clients/manage-clients.service.ts b/src/oracle/manage-clients/manage-clients.service.ts index 0ecdb97..654a088 100644 --- a/src/oracle/manage-clients/manage-clients.service.ts +++ b/src/oracle/manage-clients/manage-clients.service.ts @@ -351,12 +351,12 @@ export class ManageClientsService { const result = await connection.execute( `BEGIN MANAGEPREPARER_PKG.CreateClientContact( - :P_SPID, :P_CLIENTID, :P_CONTACTSTABLE, :P_DEFCONTACTFLAG, :P_USERID, :P_CURSOR + :P_SPID, :P_LOCATIONID, :P_CONTACTSTABLE, :P_DEFCONTACTFLAG, :P_USERID, :P_CURSOR ); END;`, { P_SPID: { val: finalBody.P_SPID, type: oracledb.DB_TYPE_NUMBER }, - P_CLIENTID: { val: finalBody.P_CLIENTID, type: oracledb.DB_TYPE_NUMBER }, + P_LOCATIONID: { val: finalBody.P_LOCATIONID, type: oracledb.DB_TYPE_NUMBER }, P_CONTACTSTABLE: { val: CONTACTSTABLE_INSTANCE, type: oracledb.DB_TYPE_OBJECT }, P_DEFCONTACTFLAG: { val: finalBody.P_DEFCONTACTFLAG, type: oracledb.DB_TYPE_NVARCHAR }, P_USERID: { val: finalBody.P_USERID, type: oracledb.DB_TYPE_NVARCHAR }, diff --git a/src/oracle/manage-holders/manage-holders.service.ts b/src/oracle/manage-holders/manage-holders.service.ts index 92732c6..ab55155 100644 --- a/src/oracle/manage-holders/manage-holders.service.ts +++ b/src/oracle/manage-holders/manage-holders.service.ts @@ -64,7 +64,7 @@ export class ManageHoldersService { :P_USCIBMEMBERFLAG, :P_GOVAGENCYFLAG, :P_HOLDERNAME, :P_NAMEQUALIFIER, :P_ADDLNAME, :P_ADDRESS1, :P_ADDRESS2, :P_CITY, :P_STATE, :P_ZIP, :P_COUNTRY, :P_USERID, - :P_CONTACTSTABLE, :P_HOLDERCURSOR, :P_HOLDERCONTACTCURSOR + :P_HOLDERCURSOR ); END;`, { @@ -86,7 +86,7 @@ export class ManageHoldersService { P_USERID: { val: finalBody.P_USERID, type: oracledb.DB_TYPE_NVARCHAR }, // P_CONTACTSTABLE: { val: CONTACTSTABLE_INSTANCE, type: oracledb.DB_TYPE_OBJECT }, P_HOLDERCURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT }, - P_HOLDERCONTACTCURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT } + // P_HOLDERCONTACTCURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT } }, { outFormat: oracledb.OUT_FORMAT_OBJECT } ); @@ -94,7 +94,7 @@ export class ManageHoldersService { await connection.commit(); const outBinds: any = result.outBinds; - if (!outBinds?.P_HOLDERCURSOR || !outBinds?.P_HOLDERCONTACTCURSOR) { + if (!outBinds?.P_HOLDERCURSOR) { this.logger.error('One or more expected cursors are missing from stored procedure output.'); throw new InternalServerException("Incomplete data received from the database."); } @@ -103,19 +103,21 @@ export class ManageHoldersService { // throw new InternalServerException("Incomplete data received from the database."); // } - // const fres: any = await fetchCursor(outBinds.P_CURSOR, ParamTableService.name); + const fres: any = await fetchCursor(outBinds.P_HOLDERCURSOR, ManageHoldersService.name); - // if (fres.length > 0 && fres[0].ERRORMESG) { - // this.logger.warn(fres[0].ERRORMESG); - // throw new BadRequestException(fres[0].ERRORMESG) - // } + if (fres.length > 0 && fres[0].ERRORMESG) { + this.logger.warn(fres[0].ERRORMESG); + throw new BadRequestException(fres[0].ERRORMESG) + } // return { // holderDetails: await fetchCursor(outBinds.P_HOLDERCURSOR, ManageHoldersService.name), // holderContactDetails: await fetchCursor(outBinds.P_HOLDERCONTACTCURSOR, ManageHoldersService.name), // } - return await fetchCursor(outBinds.P_HOLDERCURSOR, ManageHoldersService.name); + // return await fetchCursor(outBinds.P_HOLDERCURSOR, ManageHoldersService.name); + + return { statusCode: 201, message: "Created Successfully", ...fres[0] }; } catch (error) { handleError(error, ManageHoldersService.name) @@ -149,7 +151,7 @@ export class ManageHoldersService { const result = await connection.execute( `BEGIN - MANAGEPREPARER_PKG.CreateClientContact( + MANAGEHOLDER_PKG.CreateHoldercontact( :P_SPID, :P_HOLDERID, :P_CONTACTSTABLE, :P_USERID, :P_CURSOR ); END;`, @@ -221,7 +223,7 @@ export class ManageHoldersService { const result = await connection.execute( `BEGIN - MANAGEHOLDER_PKG.UPDATEHOLDERS( + MANAGEHOLDER_PKG.UPDATEHOLDER( :P_HOLDERID, :P_SPID, :P_LOCATIONID, :P_HOLDERNO, :P_HOLDERTYPE, :P_USCIBMEMBERFLAG, :P_GOVAGENCYFLAG, :P_HOLDERNAME, :P_NAMEQUALIFIER, :P_ADDLNAME, :P_ADDRESS1, :P_ADDRESS2, @@ -268,8 +270,7 @@ export class ManageHoldersService { throw new BadRequestException(fres[0].ERRORMESG) } - - return { P_cursor: fres }; + return { statusCode: 200, message: "Updated Successfully", ...fres[0] }; // return fres } catch (error) { @@ -315,7 +316,7 @@ export class ManageHoldersService { throw new BadRequestException(fres[0].ERRORMESG) } - return fres; + return fres.length > 0 ? fres[0] : fres; } catch (error) { handleError(error, ManageHoldersService.name) } finally { @@ -351,7 +352,7 @@ export class ManageHoldersService { const result: Result = await connection.execute( `BEGIN - MANAGEHOLDER_PKG.UPDATEHOLDERS( + MANAGEHOLDER_PKG.UpdateHolderContacts( :P_HOLDERCONTACTID, :P_SPID, :P_FIRSTNAME, :P_LASTNAME, :P_MIDDLEINITIAL, :P_TITLE, :P_PHONENO, :P_MOBILENO, :P_FAXNO, :P_EMAILADDRESS, :P_USERID, :P_CURSOR @@ -393,7 +394,7 @@ export class ManageHoldersService { throw new BadRequestException(fres[0].ERRORMESG) } - return { P_cursor: fres }; + return { statusCode: 200, message: "Updated Successfully", ...fres[0] }; // return fres } catch (error) {