@cids/abstract-repository
v1.0.7
Published
Repositorio abstracto del cual deberían heredar todos los concretos
Downloads
18
Readme
Abstract Repository
Abstract Repository es, como su nombre lo indica, un repositorio abstracto del cual deberían heredar los repositorios concretos a la hora de acceder a la base de datos
Ejemplo
application.repository.ts
@injectable()
export class ApplicationRepository extends AbstractRepository {
async getArea(payload: AreaQueryFilter): Promise<AreaResult[]> {
const connection = await oracledb.getConnection();
const spLib = new StoredProcedure(`MOP_VIVIENDA.${SP_NAMES.OBTENER_AREAS}`, connection)
.addParam(payload.areaId, SP_PARAM_TYPES.NUMBER);
const sp = await spLib.executeSp()
return sp;
}
}
Adicionalmente, debemos hacer el mapeo en nuestro servicio, utilizando class-transformer
application.service.ts
getArea(payload: AreaQueryFilter): Promise<AreaResult[]> {
return this._applicationRepository.getArea(payload).then((result) => {
const mapped = plainToClass(AreaResult, result);
return mapped;
});
}