BE/src/mssql/uscib-managed-sp/sp/sp.service.ts

101 lines
4.7 KiB
TypeScript
Raw Normal View History

2025-04-07 17:10:59 +05:30
import { Injectable } from '@nestjs/common';
import { Connection, Request } from 'mssql';
import { MssqlDBService } from 'src/db/db.service';
2025-05-23 17:32:44 +05:30
import { InsertNewServiceProviderDTO, UpdateServiceProviderDTO } from 'src/dto/sp/sp.dto';
2025-04-08 12:47:55 +05:30
import * as mssql from 'mssql'
2025-05-26 17:27:36 +05:30
import { SPID_DTO } from 'src/dto/sp/sp-property.dto';
2025-04-07 17:10:59 +05:30
@Injectable()
export class SpService {
constructor(private readonly mssqlDBService: MssqlDBService) { }
async getAllServiceproviders() {
let connection: Connection;
try {
connection = await this.mssqlDBService.getConnection();
const request = new Request(connection);
const result = await request.execute('carnetsys.GETALLSPS');
2025-04-08 16:03:54 +05:30
return { data: result.recordset };
2025-04-07 17:10:59 +05:30
} catch (error) {
2025-04-28 12:08:13 +05:30
return { error: error.message };
2025-05-26 17:27:36 +05:30
}
2025-04-07 17:10:59 +05:30
}
2025-04-08 12:47:55 +05:30
async getSpBySpid(body: SPID_DTO) {
2025-04-08 12:47:55 +05:30
let connection: Connection;
try {
connection = await this.mssqlDBService.getConnection();
const request = new Request(connection);
2025-05-26 17:27:36 +05:30
request.input('P_SPID', mssql.Int, body.P_SPID);
2025-04-08 12:47:55 +05:30
const result = await request.execute('carnetsys.GETSPBYSPID');
2025-04-08 16:03:54 +05:30
return { data: result.recordset };
2025-04-08 12:47:55 +05:30
} catch (error) {
2025-04-28 12:08:13 +05:30
return { error: error.message };
2025-05-26 17:27:36 +05:30
}
2025-04-08 12:47:55 +05:30
}
2025-04-09 11:01:35 +05:30
async insertNewServiceProvider(body: InsertNewServiceProviderDTO) {
let connection: Connection;
try {
connection = await this.mssqlDBService.getConnection();
const request = new Request(connection);
request.input('P_NAME', mssql.VarChar(4000), body.P_NAME);
2025-05-26 17:27:36 +05:30
request.input('P_LOOKUPCODE', mssql.VarChar(4000), body.P_LOOKUPCODE);
request.input('P_ADDRESS1', mssql.VarChar(4000), body.P_ADDRESS1);
request.input('P_ADDRESS2', mssql.VarChar(4000), body.P_ADDRESS2);
request.input('P_CITY', mssql.VarChar(4000), body.P_CITY);
request.input('P_STATE', mssql.VarChar(4000), body.P_STATE);
request.input('P_ZIP', mssql.VarChar(4000), body.P_ZIP);
request.input('P_COUNTRY', mssql.VarChar(4000), body.P_COUNTRY);
request.input('P_ISSUINGREGION', mssql.VarChar(4000), body.P_ISSUINGREGION);
request.input('P_REPLACEMENTREGION', mssql.VarChar(4000), body.P_REPLACEMENTREGION);
request.input('P_BONDSURETY', mssql.VarChar(4000), body.P_BONDSURETY);
request.input('P_CARGOPOLICYNO', mssql.VarChar(4000), body.P_CARGOPOLICYNO);
request.input('P_CARGOSURETY', mssql.VarChar(4000), body.P_CARGOSURETY);
request.input('P_USER_ID', mssql.VarChar(4000), body.P_USER_ID);
2025-04-09 11:01:35 +05:30
request.input('P_NOTES', mssql.VarChar(4000), body.P_NOTES);
request.input('P_FILEIDS', mssql.VarChar(4000), body.P_FILEIDS);
const result = await request.execute('carnetsys.INSERTNEWSP');
return { data: result.recordset };
} catch (error) {
2025-04-28 12:08:13 +05:30
return { error: error.message };
2025-05-26 17:27:36 +05:30
}
2025-04-09 11:01:35 +05:30
}
async updateServiceProvider(body: UpdateServiceProviderDTO) {
let connection: Connection;
try {
connection = await this.mssqlDBService.getConnection();
const request = new Request(connection);
2025-05-26 17:27:36 +05:30
request.input('P_SPID', mssql.Int, body.P_SPID);
request.input('P_NAME', mssql.VarChar(4000), body.P_NAME);
2025-05-26 17:27:36 +05:30
request.input('P_LOOKUPCODE', mssql.VarChar(4000), body.P_LOOKUPCODE);
request.input('P_ADDRESS1', mssql.VarChar(4000), body.P_ADDRESS1);
request.input('P_ADDRESS2', mssql.VarChar(4000), body.P_ADDRESS2);
request.input('P_CITY', mssql.VarChar(4000), body.P_CITY);
request.input('P_STATE', mssql.VarChar(4000), body.P_STATE);
request.input('P_ZIP', mssql.VarChar(4000), body.P_ZIP);
request.input('P_COUNTRY', mssql.VarChar(4000), body.P_COUNTRY);
request.input('P_BONDSURETY', mssql.VarChar(4000), body.P_BONDSURETY);
request.input('P_CARGOPOLICYNO', mssql.VarChar(4000), body.P_CARGOPOLICYNO);
request.input('P_CARGOSURETY', mssql.VarChar(4000), body.P_CARGOSURETY);
request.input('P_REPLACEMENTREGION', mssql.VarChar(4000), body.P_REPLACEMENTREGION);
request.input('P_ISSUINGREGION', mssql.VarChar(4000), body.P_ISSUINGREGION);
request.input('P_USER_ID', mssql.VarChar(4000), body.P_USER_ID);
2025-04-09 11:01:35 +05:30
request.input('P_NOTES', mssql.VarChar(4000), body.P_NOTES);
request.input('P_FILEIDS', mssql.VarChar(4000), body.P_FILEIDS);
const result = await request.execute('carnetsys.UPDATESP');
return { data: result.recordset };
} catch (error) {
2025-04-28 12:08:13 +05:30
return { error: error.message };
2025-05-26 17:27:36 +05:30
}
2025-04-09 11:01:35 +05:30
}
2025-04-07 17:10:59 +05:30
}