eust-conciliation
Version:
38 lines (34 loc) • 1.32 kB
text/typescript
import { DeepPartial, EntityTarget } from 'typeorm';
import { Injectable } from '@severo-tech/injection-decorator';
import { BaseDBRepository } from '../db/base-db-repository';
import { DebitInstallmentEntity } from '../db/entities';
import { IDebitInstallmentRepository } from '../../application/contracts';
import { DebitInstallment } from '../../domain/debit-installment';
()
export class DebitInstallmentRepository extends BaseDBRepository<DebitInstallmentEntity, DebitInstallment> implements IDebitInstallmentRepository {
protected entityClass: EntityTarget<DebitInstallmentEntity> = DebitInstallmentEntity;
protected toModel(entity: DebitInstallmentEntity): DebitInstallment {
return {
id: entity.id,
debitId: entity.debitId,
value: entity.value,
index: entity.index,
dueDate: entity.dueDate,
createdBy: entity.createdBy,
updatedBy: entity.updatedBy,
createdAt: entity.created_at,
updatedAt: entity.updated_at,
};
}
protected fromModel(model: Partial<DebitInstallment>): DeepPartial<DebitInstallmentEntity> {
return {
id: model.id,
debitId: model.debitId,
value: model.value,
index: model.index,
dueDate: model.dueDate,
createdBy: model.createdBy,
updatedBy: model.updatedBy,
};
}
}