All files / src/repositories dgd.view.repository.ts

100% Statements 18/18
100% Branches 0/0
100% Functions 1/1
100% Lines 16/16

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 411x 1x 1x   1x       1x   1x                 1x   1x   1x   1x   1x   1x     1x 1x     1x 1x      
import { Getter, inject } from '@loopback/core';
import { BelongsToAccessor, HasOneRepositoryFactory, repository } from '@loopback/repository';
import { LogChainDataSource } from '../datasources';
import { Company, User, Country, DGDRelations } from '../models';
import { BaseCrudRepository } from './base-crud.repository.base';
import { CompanyRepository } from './company.repository';
import { UserViewRepository } from './user.view.repository';
import { CountryRepository } from '.';
import { DGDView, DGDViewRelations } from '@logchain/models/views';
 
export class DGDViewRepository extends BaseCrudRepository<DGDView, typeof DGDView.prototype.id, DGDViewRelations> {
  public readonly company: BelongsToAccessor<Company, typeof Company.prototype.id>;
  public readonly modifier: BelongsToAccessor<User, typeof User.prototype.id>;
  public readonly pol_country: HasOneRepositoryFactory<Country, typeof Country.prototype.id>;
  public readonly pod_country: HasOneRepositoryFactory<Country, typeof Country.prototype.id>;
 
  constructor(
    @inject('datasources.logchain') dataSource: LogChainDataSource,
    @repository.getter('CompanyRepository')
    protected companyRepositoryGetter: Getter<CompanyRepository>,
    @repository.getter('UserViewRepository')
    protected userRepositoryGetter: Getter<UserViewRepository>,
    @repository.getter('CountryRepository')
    protected country_repo_getter: Getter<CountryRepository>,
  ) {
    super(DGDView, dataSource);
 
    this.company = this.createBelongsToAccessor('company', companyRepositoryGetter);
 
    this.modifier = this.createBelongsToAccessor('modifier', userRepositoryGetter);
 
    // POL Country
    this.pol_country = this.createHasOneRepositoryFactoryFor('pol_country', country_repo_getter);
    this.registerInclusionResolver('pol_country', this.pol_country.inclusionResolver);
 
    // POD Country
    this.pod_country = this.createHasOneRepositoryFactoryFor('pod_country', country_repo_getter);
    this.registerInclusionResolver('pod_country', this.pod_country.inclusionResolver);
  }
}