faxno optional, clientcontact-id added for client-contact-controls, Search-Holder API in holder section
This commit is contained in:
parent
4572ea4bcc
commit
34c5b5d22d
@ -121,7 +121,8 @@ export class GetClientDTO extends IntersectionType(
|
|||||||
) { }
|
) { }
|
||||||
|
|
||||||
export class ClientContactControlsDTO extends IntersectionType(
|
export class ClientContactControlsDTO extends IntersectionType(
|
||||||
GetClientDTO,
|
SPID_DTO,
|
||||||
|
CLIENT_CONTACTID_DTO,
|
||||||
USERID_DTO
|
USERID_DTO
|
||||||
) { }
|
) { }
|
||||||
|
|
||||||
|
|||||||
@ -98,7 +98,7 @@ export class CONTACTSTABLE_ROW_DTO extends IntersectionType(
|
|||||||
EMAIL_ADDRESS_DTO,
|
EMAIL_ADDRESS_DTO,
|
||||||
PHONE_NO_DTO,
|
PHONE_NO_DTO,
|
||||||
MOBILE_NO_DTO,
|
MOBILE_NO_DTO,
|
||||||
FAX_NO_DTO
|
PartialType(FAX_NO_DTO)
|
||||||
) { }
|
) { }
|
||||||
|
|
||||||
export class CONTACTSTABLE_DTO {
|
export class CONTACTSTABLE_DTO {
|
||||||
|
|||||||
@ -89,5 +89,9 @@ export class HolderContactActivateOrInactivateDTO extends IntersectionType(
|
|||||||
SPID_DTO,
|
SPID_DTO,
|
||||||
HOLDERCONTACTID_DTO,
|
HOLDERCONTACTID_DTO,
|
||||||
USERID_DTO
|
USERID_DTO
|
||||||
) {
|
) {}
|
||||||
}
|
|
||||||
|
export class SearchHolderDTO extends IntersectionType(
|
||||||
|
SPID_DTO,
|
||||||
|
HOLDERNAME_DTO
|
||||||
|
){}
|
||||||
@ -403,7 +403,7 @@ export class ManageClientsService {
|
|||||||
END;`,
|
END;`,
|
||||||
{
|
{
|
||||||
P_SPID: { val: body.P_SPID, type: oracledb.DB_TYPE_NUMBER },
|
P_SPID: { val: body.P_SPID, type: oracledb.DB_TYPE_NUMBER },
|
||||||
P_CLIENTID: { val: body.P_CLIENTID, type: oracledb.DB_TYPE_NUMBER },
|
P_CLIENTID: { val: body.P_CLIENTCONTACTID, type: oracledb.DB_TYPE_NUMBER },
|
||||||
P_USERID: { val: body.P_USERID, type: oracledb.DB_TYPE_NVARCHAR },
|
P_USERID: { val: body.P_USERID, type: oracledb.DB_TYPE_NVARCHAR },
|
||||||
P_CURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT }
|
P_CURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT }
|
||||||
},
|
},
|
||||||
@ -447,7 +447,7 @@ export class ManageClientsService {
|
|||||||
END;`,
|
END;`,
|
||||||
{
|
{
|
||||||
P_SPID: { val: body.P_SPID, type: oracledb.DB_TYPE_NUMBER },
|
P_SPID: { val: body.P_SPID, type: oracledb.DB_TYPE_NUMBER },
|
||||||
P_CLIENTID: { val: body.P_CLIENTID, type: oracledb.DB_TYPE_NUMBER },
|
P_CLIENTID: { val: body.P_CLIENTCONTACTID, type: oracledb.DB_TYPE_NUMBER },
|
||||||
P_USERID: { val: body.P_USERID, type: oracledb.DB_TYPE_NVARCHAR },
|
P_USERID: { val: body.P_USERID, type: oracledb.DB_TYPE_NVARCHAR },
|
||||||
P_CURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT }
|
P_CURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT }
|
||||||
},
|
},
|
||||||
@ -491,7 +491,7 @@ export class ManageClientsService {
|
|||||||
END;`,
|
END;`,
|
||||||
{
|
{
|
||||||
P_SPID: { val: body.P_SPID, type: oracledb.DB_TYPE_NUMBER },
|
P_SPID: { val: body.P_SPID, type: oracledb.DB_TYPE_NUMBER },
|
||||||
P_CLIENTID: { val: body.P_CLIENTID, type: oracledb.DB_TYPE_NUMBER },
|
P_CLIENTID: { val: body.P_CLIENTCONTACTID, type: oracledb.DB_TYPE_NUMBER },
|
||||||
P_USERID: { val: body.P_USERID, type: oracledb.DB_TYPE_NVARCHAR },
|
P_USERID: { val: body.P_USERID, type: oracledb.DB_TYPE_NVARCHAR },
|
||||||
P_CURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT }
|
P_CURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT }
|
||||||
},
|
},
|
||||||
|
|||||||
@ -14,14 +14,19 @@ import { ManageHoldersService } from './manage-holders.service';
|
|||||||
|
|
||||||
import {
|
import {
|
||||||
CreateHoldersDTO, GetHolderDTO, HolderActivateOrInactivateDTO,
|
CreateHoldersDTO, GetHolderDTO, HolderActivateOrInactivateDTO,
|
||||||
HolderContactActivateOrInactivateDTO, UpdateHolderContactDTO, UpdateHolderDTO
|
HolderContactActivateOrInactivateDTO, SearchHolderDTO, UpdateHolderContactDTO, UpdateHolderDTO
|
||||||
} from 'src/dto/property.dto';
|
} from 'src/dto/property.dto';
|
||||||
|
|
||||||
|
@ApiTags('Manage Holders - Oracle')
|
||||||
@Controller('oracle')
|
@Controller('oracle')
|
||||||
export class ManageHoldersController {
|
export class ManageHoldersController {
|
||||||
constructor(private readonly manageHoldersService: ManageHoldersService) { }
|
constructor(private readonly manageHoldersService: ManageHoldersService) { }
|
||||||
|
|
||||||
@ApiTags('Manage Holders - Oracle')
|
@Get('SearchHolder/:P_SPID/:P_HOLDERNAME')
|
||||||
|
SearchHolder(@Param() param: SearchHolderDTO) {
|
||||||
|
return this.manageHoldersService.SearchHolder(param)
|
||||||
|
}
|
||||||
|
|
||||||
@Post('/CreateHolderData')
|
@Post('/CreateHolderData')
|
||||||
CreateHolders(@Body() body: CreateHoldersDTO) {
|
CreateHolders(@Body() body: CreateHoldersDTO) {
|
||||||
return this.manageHoldersService.CreateHolders(body);
|
return this.manageHoldersService.CreateHolders(body);
|
||||||
@ -29,49 +34,41 @@ export class ManageHoldersController {
|
|||||||
// return {message:"Request received.."}
|
// return {message:"Request received.."}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiTags('Manage Holders - Oracle')
|
|
||||||
@Put('/UpdateHolder')
|
@Put('/UpdateHolder')
|
||||||
UpdateHolder(@Body() body: UpdateHolderDTO) {
|
UpdateHolder(@Body() body: UpdateHolderDTO) {
|
||||||
return this.manageHoldersService.UpdateHolder(body);
|
return this.manageHoldersService.UpdateHolder(body);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiTags('Manage Holders - Oracle')
|
|
||||||
@Put('/UpdateHolderContact')
|
@Put('/UpdateHolderContact')
|
||||||
UpdateHolderContact(@Body() body: UpdateHolderContactDTO) {
|
UpdateHolderContact(@Body() body: UpdateHolderContactDTO) {
|
||||||
return this.manageHoldersService.UpdateHolderContact(body);
|
return this.manageHoldersService.UpdateHolderContact(body);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiTags('Manage Holders - Oracle')
|
|
||||||
@Get('/GetHolderRecord/:P_SPID/:P_HOLDERID')
|
@Get('/GetHolderRecord/:P_SPID/:P_HOLDERID')
|
||||||
GetHolderMaster(@Param() body: GetHolderDTO) {
|
GetHolderMaster(@Param() body: GetHolderDTO) {
|
||||||
return this.manageHoldersService.GetHolderRecord(body);
|
return this.manageHoldersService.GetHolderRecord(body);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiTags('Manage Holders - Oracle')
|
|
||||||
@Get('/GetHolderContacts/:P_SPID/:P_HOLDERID')
|
@Get('/GetHolderContacts/:P_SPID/:P_HOLDERID')
|
||||||
GetHolderContacts(@Param() body: GetHolderDTO) {
|
GetHolderContacts(@Param() body: GetHolderDTO) {
|
||||||
return this.manageHoldersService.GetHolderContacts(body);
|
return this.manageHoldersService.GetHolderContacts(body);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiTags('Manage Holders - Oracle')
|
|
||||||
@Patch('/InactivateHolder/:P_SPID/:P_HOLDERID/:P_USERID')
|
@Patch('/InactivateHolder/:P_SPID/:P_HOLDERID/:P_USERID')
|
||||||
InactivateHolder(@Param() body: HolderActivateOrInactivateDTO) {
|
InactivateHolder(@Param() body: HolderActivateOrInactivateDTO) {
|
||||||
return this.manageHoldersService.InactivateHolder(body);
|
return this.manageHoldersService.InactivateHolder(body);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiTags('Manage Holders - Oracle')
|
|
||||||
@Patch('/ReactivateHolder/:P_SPID/:P_HOLDERID/:P_USERID')
|
@Patch('/ReactivateHolder/:P_SPID/:P_HOLDERID/:P_USERID')
|
||||||
ReactivateHolder(@Param() body: HolderActivateOrInactivateDTO) {
|
ReactivateHolder(@Param() body: HolderActivateOrInactivateDTO) {
|
||||||
return this.manageHoldersService.ReactivateHolder(body);
|
return this.manageHoldersService.ReactivateHolder(body);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiTags('Manage Holders - Oracle')
|
|
||||||
@Patch('/InactivateHolderContact/:P_SPID/:P_HOLDERCONTACTID/:P_USERID')
|
@Patch('/InactivateHolderContact/:P_SPID/:P_HOLDERCONTACTID/:P_USERID')
|
||||||
InactivateHolderContact(@Param() body: HolderContactActivateOrInactivateDTO) {
|
InactivateHolderContact(@Param() body: HolderContactActivateOrInactivateDTO) {
|
||||||
return this.manageHoldersService.InactivateHolderContact(body);
|
return this.manageHoldersService.InactivateHolderContact(body);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiTags('Manage Holders - Oracle')
|
|
||||||
@Patch('/ReactivateHolderContact/:P_SPID/:P_HOLDERCONTACTID/:P_USERID')
|
@Patch('/ReactivateHolderContact/:P_SPID/:P_HOLDERCONTACTID/:P_USERID')
|
||||||
ReactivateHolderContact(@Param() body: HolderContactActivateOrInactivateDTO) {
|
ReactivateHolderContact(@Param() body: HolderContactActivateOrInactivateDTO) {
|
||||||
return this.manageHoldersService.ReactivateHolderContact(body);
|
return this.manageHoldersService.ReactivateHolderContact(body);
|
||||||
|
|||||||
@ -7,7 +7,7 @@ import { closeOracleDbConnection, fetchCursor, handleError, setEmptyStringsToNul
|
|||||||
|
|
||||||
import {
|
import {
|
||||||
CreateHoldersDTO, GetHolderDTO, HolderActivateOrInactivateDTO,
|
CreateHoldersDTO, GetHolderDTO, HolderActivateOrInactivateDTO,
|
||||||
HolderContactActivateOrInactivateDTO, UpdateHolderContactDTO, UpdateHolderDTO
|
HolderContactActivateOrInactivateDTO, SearchHolderDTO, UpdateHolderContactDTO, UpdateHolderDTO
|
||||||
} from 'src/dto/property.dto';
|
} from 'src/dto/property.dto';
|
||||||
import { OracleService } from '../oracle.service';
|
import { OracleService } from '../oracle.service';
|
||||||
import { BadRequestException } from 'src/exceptions/badRequest.exception';
|
import { BadRequestException } from 'src/exceptions/badRequest.exception';
|
||||||
@ -562,4 +562,49 @@ export class ManageHoldersService {
|
|||||||
await closeOracleDbConnection(connection, ManageHoldersService.name)
|
await closeOracleDbConnection(connection, ManageHoldersService.name)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
SearchHolder = async (body: SearchHolderDTO) => {
|
||||||
|
let connection;
|
||||||
|
|
||||||
|
try {
|
||||||
|
connection = await this.oracleDBService.getConnection();
|
||||||
|
|
||||||
|
const result: Result<any> = await connection.execute(
|
||||||
|
`BEGIN
|
||||||
|
MANAGEHOLDER_PKG.SearchHolder(
|
||||||
|
:P_SPID, :P_HOLDERNAME, :P_CURSOR
|
||||||
|
);
|
||||||
|
END;`,
|
||||||
|
{
|
||||||
|
P_SPID: { val: body.P_SPID, type: oracledb.DB_TYPE_NUMBER },
|
||||||
|
P_HOLDERCONTACTID: { val: body.P_HOLDERNAME, type: oracledb.DB_TYPE_NUMBER },
|
||||||
|
P_CURSOR: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
outFormat: oracledb.OUT_FORMAT_OBJECT,
|
||||||
|
},
|
||||||
|
);
|
||||||
|
|
||||||
|
await connection.commit();
|
||||||
|
|
||||||
|
const outBinds: any = result.outBinds;
|
||||||
|
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.");
|
||||||
|
}
|
||||||
|
|
||||||
|
const fres: any = await fetchCursor(outBinds.P_CURSOR, ManageHoldersService.name);
|
||||||
|
|
||||||
|
if (fres.length > 0 && fres[0].ERRORMESG) {
|
||||||
|
this.logger.warn(fres[0].ERRORMESG);
|
||||||
|
throw new BadRequestException(fres[0].ERRORMESG)
|
||||||
|
}
|
||||||
|
|
||||||
|
return fres;
|
||||||
|
} catch (error) {
|
||||||
|
handleError(error, ManageHoldersService.name)
|
||||||
|
} finally {
|
||||||
|
await closeOracleDbConnection(connection, ManageHoldersService.name)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -165,7 +165,7 @@ export class OracleService {
|
|||||||
x.P_EMAILADDRESS,
|
x.P_EMAILADDRESS,
|
||||||
x.P_PHONENO,
|
x.P_PHONENO,
|
||||||
x.P_MOBILENO,
|
x.P_MOBILENO,
|
||||||
x.P_FAXNO,
|
x?.P_FAXNO,
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
@ -182,6 +182,46 @@ export class OracleService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async get_CONTACTS_TABLE_INSTANCEX(finalBody: any) {
|
||||||
|
|
||||||
|
// P_CONTACTSTABLE: { val: CONTACTSTABLE_INSTANCE, type: 'CARNETSYS.CONTACTSTABLE' }
|
||||||
|
|
||||||
|
// P_CONTACTSTABLE: { val: CONTACTSTABLE_INSTANCE, type: oracledb.DB_TYPE_OBJECT }
|
||||||
|
// this is working fine for CreateCientContact
|
||||||
|
|
||||||
|
let connection;
|
||||||
|
try {
|
||||||
|
connection = await this.oracleDBService.getConnection();
|
||||||
|
|
||||||
|
const CONTACTSROW = await connection.getDbObjectClass('C##CARNETSYS.CONTACTSROW');
|
||||||
|
const CONTACTSARRAY = await connection.getDbObjectClass('C##CARNETSYS.CONTACTSARRAY');
|
||||||
|
const CONTACTSTABLE = await connection.getDbObjectClass('C##CARNETSYS.CONTACTSTABLE');
|
||||||
|
|
||||||
|
const contactRows = finalBody.P_CONTACTSTABLE?.map((x: CONTACTSTABLE_ROW_DTO) => {
|
||||||
|
return new CONTACTSROW({
|
||||||
|
FIRSTNAME: x.P_FIRSTNAME,
|
||||||
|
LASTNAME: x.P_LASTNAME,
|
||||||
|
MIDDLEINITIAL: x.P_MIDDLEINITIAL,
|
||||||
|
TITLE: x.P_TITLE,
|
||||||
|
EMAILADDRESS: x.P_EMAILADDRESS,
|
||||||
|
PHONENO: x.P_PHONENO,
|
||||||
|
MOBILENO: x.P_MOBILENO,
|
||||||
|
FAXNO: x.P_FAXNO,
|
||||||
|
});
|
||||||
|
}) ?? [];
|
||||||
|
|
||||||
|
const contactsArrayInstance = new CONTACTSARRAY(contactRows);
|
||||||
|
const CONTACTSTABLE_INSTANCE = new CONTACTSTABLE({ CONTACTS: contactsArrayInstance });
|
||||||
|
|
||||||
|
return CONTACTSTABLE_INSTANCE;
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
throw new Error("Error occured completing this process")
|
||||||
|
} finally {
|
||||||
|
await closeOracleDbConnection(connection, OracleService.name)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
async get_CLIENTLOCADDRESS_TABLE_INSTANCE(finalBody: any) {
|
async get_CLIENTLOCADDRESS_TABLE_INSTANCE(finalBody: any) {
|
||||||
|
|
||||||
// P_CLIENTLOCADDRESSTABLE: { val: CLIENTLOCADDRESSTABLE_INSTANCE, type: 'CARNETSYS.CLIENTLOCADDRESSTABLE' }
|
// P_CLIENTLOCADDRESSTABLE: { val: CLIENTLOCADDRESSTABLE_INSTANCE, type: 'CARNETSYS.CLIENTLOCADDRESSTABLE' }
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user