@cids/abstract-repository
v1.0.7
Published
Repositorio abstracto del cual deberían heredar todos los concretos
Downloads
2
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;
});
}