Files
bigcapital/packages/server-nest/src/modules/CreditNotes/queries/GetCreditNotes.service.ts

69 lines
2.2 KiB
TypeScript

// import { Service, Inject } from 'typedi';
// import * as R from 'ramda';
// import { ICreditNotesQueryDTO } from '@/interfaces';
// import DynamicListingService from '@/services/DynamicListing/DynamicListService';
// import BaseCreditNotes from './commands/CommandCreditNoteDTOTransform.service';
// import { CreditNoteTransformer } from './queries/CreditNoteTransformer';
// import { TransformerInjectable } from '@/lib/Transformer/TransformerInjectable';
// @Service()
// export default class ListCreditNotes extends BaseCreditNotes {
// @Inject()
// private dynamicListService: DynamicListingService;
// @Inject()
// private transformer: TransformerInjectable;
// /**
// * Parses the sale invoice list filter DTO.
// * @param filterDTO
// * @returns
// */
// private parseListFilterDTO = (filterDTO) => {
// return R.compose(this.dynamicListService.parseStringifiedFilter)(filterDTO);
// };
// /**
// * Retrieves the paginated and filterable credit notes list.
// * @param {number} tenantId -
// * @param {ICreditNotesQueryDTO} creditNotesQuery -
// */
// public getCreditNotesList = async (
// tenantId: number,
// creditNotesQuery: ICreditNotesQueryDTO
// ) => {
// const { CreditNote } = this.tenancy.models(tenantId);
// // Parses stringified filter roles.
// const filter = this.parseListFilterDTO(creditNotesQuery);
// // Dynamic list service.
// const dynamicFilter = await this.dynamicListService.dynamicList(
// tenantId,
// CreditNote,
// filter
// );
// const { results, pagination } = await CreditNote.query()
// .onBuild((builder) => {
// builder.withGraphFetched('entries.item');
// builder.withGraphFetched('customer');
// dynamicFilter.buildQuery()(builder);
// creditNotesQuery?.filterQuery && creditNotesQuery?.filterQuery(builder);
// })
// .pagination(filter.page - 1, filter.pageSize);
// // Transforomes the credit notes to POJO.
// const creditNotes = await this.transformer.transform(
// tenantId,
// results,
// new CreditNoteTransformer()
// );
// return {
// creditNotes,
// pagination,
// filterMeta: dynamicFilter.getResponseMeta(),
// };
// };
// }