diff --git a/apps/backend/fixtures/lambda/reconcile.json b/apps/backend/fixtures/lambda/reconcile.json index 6ce0f6e8..85e66ac1 100644 --- a/apps/backend/fixtures/lambda/reconcile.json +++ b/apps/backend/fixtures/lambda/reconcile.json @@ -3,7 +3,7 @@ { "Sns": { "Message": { - "reconciliationMaxDate": "2023-09-16", + "reconciliationMaxDate": "2023-10-30", "program": "SBC", "reportEnabled": false, "byPassFileValidity": true diff --git a/apps/backend/src/constants.ts b/apps/backend/src/constants.ts index 6d2d99fd..da7c7976 100644 --- a/apps/backend/src/constants.ts +++ b/apps/backend/src/constants.ts @@ -74,20 +74,6 @@ export interface AggregatedPosPayment { payments: PaymentEntity[]; } -export interface NormalizedLocation { - location_id: number; - source_id: string; - program_code: number; - ministry_client: number; - resp_code: string; - service_line_code: number; - stob_code: number; - project_code: number; - description: string; - merchant_ids: number[]; - pt_location_id: number; -} - export const BankMerchantId = 999999999; export const SUPPORTED_FILE_EXTENSIONS: { diff --git a/apps/backend/src/database/database.module.ts b/apps/backend/src/database/database.module.ts index 1c77c050..a7efc9c3 100644 --- a/apps/backend/src/database/database.module.ts +++ b/apps/backend/src/database/database.module.ts @@ -7,6 +7,7 @@ import { join } from 'path'; import { DatabaseLogger } from './database-logger'; import { DatabaseService } from './database.service'; import { entities } from './entity.config'; +import { DepositModule } from '../deposits/deposit.module'; import { LocationModule } from '../location/location.module'; import { NotificationModule } from '../notification/notification.module'; import { S3ManagerModule } from '../s3-manager/s3-manager.module'; @@ -80,6 +81,7 @@ export const appOrmConfig: PostgresConnectionOptions = { S3ManagerModule, LocationModule, TransactionModule, + DepositModule, NotificationModule, TypeOrmModule.forRootAsync({ useFactory: () => appOrmConfig, diff --git a/apps/backend/src/database/database.service.ts b/apps/backend/src/database/database.service.ts index 26ed00ce..b71a43d6 100644 --- a/apps/backend/src/database/database.service.ts +++ b/apps/backend/src/database/database.service.ts @@ -3,7 +3,14 @@ import { Inject, Injectable } from '@nestjs/common'; import * as csv from 'csvtojson'; import { masterData } from './const'; import { FileTypes, Ministries } from '../constants'; -import { LocationEntity } from '../location/entities'; +import { CashDepositService } from '../deposits/cash-deposit.service'; +import { CashDepositEntity } from '../deposits/entities/cash-deposit.entity'; +import { POSDepositEntity } from '../deposits/entities/pos-deposit.entity'; +import { PosDepositService } from '../deposits/pos-deposit.service'; +import { + MinistryLocationEntity, + MasterLocationEntity, +} from '../location/entities'; import { LocationService } from '../location/location.service'; import { FileIngestionRulesEntity } from '../notification/entities/file-ingestion-rules.entity'; import { NotificationService } from '../notification/notification.service'; @@ -11,6 +18,7 @@ import { ProgramRequiredFileEntity } from '../parse/entities/program-required-fi import { S3ManagerService } from '../s3-manager/s3-manager.service'; import { PaymentMethodEntity } from '../transaction/entities'; import { PaymentMethodService } from '../transaction/payment-method.service'; +import { TransactionService } from '../transaction/transaction.service'; @Injectable() export class DatabaseService { @@ -20,13 +28,20 @@ export class DatabaseService { @Inject(NotificationService) private readonly notificationService: NotificationService, @Inject(PaymentMethodService) - private readonly paymentMethodService: PaymentMethodService + private readonly paymentMethodService: PaymentMethodService, + @Inject(TransactionService) + private readonly transactionService: TransactionService, + @Inject(PosDepositService) + private readonly posDepositService: PosDepositService, + @Inject(CashDepositService) + private readonly cashDepositService: CashDepositService ) {} /** * We rely on "master" data to join our txn/deposit table in order to match */ async seedMasterData() { - const locations: LocationEntity[] = await this.locationService.findAll(); + const locations: MasterLocationEntity[] = + await this.locationService.findAll(); const paymentMethods: PaymentMethodEntity[] = await this.paymentMethodService.getPaymentMethods(); @@ -34,6 +49,13 @@ export class DatabaseService { const rules: FileIngestionRulesEntity[] = await this.notificationService.getAllRules(); + const transactionsWithNullLocation = + await this.transactionService.findWithNullLocation(); + const posDepositWithNullLocation = + await this.posDepositService.findWithNullLocation(); + const cashDepositWithnullLocation = + await this.cashDepositService.findWithNullLocation(); + if (rules.length === 0) { await this.seedFileIngestionRules(); } @@ -60,6 +82,49 @@ export class DatabaseService { Ministries[rule.program as keyof typeof Ministries] ); } + const locations: MinistryLocationEntity[] = + await this.locationService.findMinistryLocations( + Ministries[rule.program as keyof typeof Ministries] + ); + if (transactionsWithNullLocation.length > 0) { + const txns = transactionsWithNullLocation.map((txn) => { + const location = locations.find( + (loc) => + loc.source_id === txn.source_id && + loc.location_id === txn.location_id + )!; + return { ...txn, location }; + }); + await this.transactionService.saveTransactions(txns); + } + if (posDepositWithNullLocation.length > 0) { + const merchants = locations.flatMap((itm) => itm.merchants); + const posDeposits = posDepositWithNullLocation.map( + (pos: POSDepositEntity) => { + const merchant = merchants.find( + (merch) => merch.merchant_id === pos.merchant_id + )!; + return { + ...pos, + timestamp: pos.timestamp, + merchant, + }; + } + ); + await this.posDepositService.savePOSDepositEntities(posDeposits); + } + if (cashDepositWithnullLocation.length > 0) { + const banks = locations.flatMap((itm) => itm.banks); + const cash = cashDepositWithnullLocation.map( + (cash: CashDepositEntity) => { + const bank = banks.find( + (bank) => bank.bank_id === cash.pt_location_id + )!; + return { ...cash, bank }; + } + ); + await this.cashDepositService.saveCashDepositEntities(cash); + } } } diff --git a/apps/backend/src/database/entity.config.ts b/apps/backend/src/database/entity.config.ts index fa8351ea..375e3104 100644 --- a/apps/backend/src/database/entity.config.ts +++ b/apps/backend/src/database/entity.config.ts @@ -3,7 +3,7 @@ import { POSDepositEntity } from '../deposits/entities/pos-deposit.entity'; import { MinistryLocationEntity, BankLocationEntity, - LocationEntity, + MasterLocationEntity, MerchantEntity, } from '../location/entities'; import { AlertDestinationEntity } from '../notification/entities/alert-destination.entity'; @@ -24,7 +24,7 @@ export const entities = [ POSDepositEntity, CashDepositEntity, MinistryLocationEntity, - LocationEntity, + MasterLocationEntity, BankLocationEntity, MerchantEntity, FileUploadedEntity, diff --git a/apps/backend/src/database/migrations/1698772487856-fk-migration.ts b/apps/backend/src/database/migrations/1698772487856-fk-migration.ts new file mode 100644 index 00000000..c593f429 --- /dev/null +++ b/apps/backend/src/database/migrations/1698772487856-fk-migration.ts @@ -0,0 +1,47 @@ +import { MigrationInterface, QueryRunner } from 'typeorm'; + +export class Migration1698772487856 implements MigrationInterface { + name = 'FKMigration1698772487856'; + + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query( + `ALTER TABLE "location" DROP CONSTRAINT "UQ_62c907775331b5aa98ec8daf7dd"` + ); + await queryRunner.query(`ALTER TABLE "transaction" ADD "location" uuid`); + await queryRunner.query(`ALTER TABLE "pos_deposit" ADD "merchant" uuid`); + await queryRunner.query(`ALTER TABLE "cash_deposit" ADD "bank" uuid`); + await queryRunner.query( + `ALTER TABLE "location" ADD CONSTRAINT "UQ_346127033e9c6ca7ffa2df9ecbf" UNIQUE ("location_id", "source_id")` + ); + await queryRunner.query( + `ALTER TABLE "transaction" ADD CONSTRAINT "FK_dd423da8b6167163d79d3c06953" FOREIGN KEY ("location") REFERENCES "location"("id") ON DELETE NO ACTION ON UPDATE NO ACTION` + ); + await queryRunner.query( + `ALTER TABLE "pos_deposit" ADD CONSTRAINT "FK_0c2d1a0d19b5b5ea5f0af5f3bf2" FOREIGN KEY ("merchant") REFERENCES "location_merchant"("id") ON DELETE NO ACTION ON UPDATE NO ACTION` + ); + await queryRunner.query( + `ALTER TABLE "cash_deposit" ADD CONSTRAINT "FK_0889fcbcebfdf2845d242627936" FOREIGN KEY ("bank") REFERENCES "location_bank"("id") ON DELETE NO ACTION ON UPDATE NO ACTION` + ); + } + + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query( + `ALTER TABLE "cash_deposit" DROP CONSTRAINT "FK_0889fcbcebfdf2845d242627936"` + ); + await queryRunner.query( + `ALTER TABLE "pos_deposit" DROP CONSTRAINT "FK_0c2d1a0d19b5b5ea5f0af5f3bf2"` + ); + await queryRunner.query( + `ALTER TABLE "transaction" DROP CONSTRAINT "FK_dd423da8b6167163d79d3c06953"` + ); + await queryRunner.query( + `ALTER TABLE "location" DROP CONSTRAINT "UQ_346127033e9c6ca7ffa2df9ecbf"` + ); + await queryRunner.query(`ALTER TABLE "cash_deposit" DROP COLUMN "bank"`); + await queryRunner.query(`ALTER TABLE "pos_deposit" DROP COLUMN "merchant"`); + await queryRunner.query(`ALTER TABLE "transaction" DROP COLUMN "location"`); + await queryRunner.query( + `ALTER TABLE "location" ADD CONSTRAINT "UQ_62c907775331b5aa98ec8daf7dd" UNIQUE ("source_id", "location_id")` + ); + } +} diff --git a/apps/backend/src/deposits/cash-deposit.service.ts b/apps/backend/src/deposits/cash-deposit.service.ts index aea2febc..fbf576e1 100644 --- a/apps/backend/src/deposits/cash-deposit.service.ts +++ b/apps/backend/src/deposits/cash-deposit.service.ts @@ -64,13 +64,13 @@ export class CashDepositService { async findCashDepositsByDate( program: Ministries, deposit_date: string, - pt_location_id: number, + pt_location_ids: number[], statuses?: MatchStatus[] ): Promise { const depositStatus = statuses ?? MatchStatusAll; return await this.cashDepositRepo.find({ where: { - pt_location_id, + pt_location_id: In(pt_location_ids), metadata: { program: program }, deposit_date, status: In(depositStatus), @@ -88,13 +88,13 @@ export class CashDepositService { */ async findAllCashDepositDatesPerLocation( program: Ministries, - pt_location_id: number, + pt_location_ids: number[], order: FindOptionsOrderValue ): Promise { const deposits: CashDepositEntity[] = await this.cashDepositRepo.find({ where: { metadata: { program }, - pt_location_id, + pt_location_id: In(pt_location_ids), }, order: { deposit_date: order, @@ -133,11 +133,11 @@ export class CashDepositService { async findCashDepositExceptions( date: string, program: Ministries, - pt_location_id: number + pt_location_ids: number[] ): Promise { return await this.cashDepositRepo.find({ where: { - pt_location_id, + pt_location_id: In(pt_location_ids), metadata: { program: program }, deposit_date: LessThanOrEqual(date), status: MatchStatus.IN_PROGRESS, @@ -251,4 +251,7 @@ export class CashDepositService { }); return [...reconciled, ...in_progress, ...pending]; } + async findWithNullLocation() { + return await this.cashDepositRepo.find({ where: { bank: undefined } }); + } } diff --git a/apps/backend/src/deposits/entities/cash-deposit.entity.ts b/apps/backend/src/deposits/entities/cash-deposit.entity.ts index 3fc0a02d..37e4e5d9 100644 --- a/apps/backend/src/deposits/entities/cash-deposit.entity.ts +++ b/apps/backend/src/deposits/entities/cash-deposit.entity.ts @@ -11,6 +11,7 @@ import { FileMetadata } from '../../common/columns/metadata'; import { MatchStatus } from '../../common/const'; import { FileTypes } from '../../constants'; import { TDI17Details } from '../../flat-files'; +import { BankLocationEntity } from '../../location/entities'; import { FileUploadedEntity } from '../../parse/entities/file-uploaded.entity'; import { PaymentEntity } from '../../transaction/entities/payment.entity'; @@ -100,6 +101,10 @@ export class CashDepositEntity { @Column({ name: 'file_uploaded', nullable: true }) fileUploadedEntityId?: string; + @ManyToOne(() => BankLocationEntity, { nullable: true }) + @JoinColumn({ referencedColumnName: 'id', name: 'bank' }) + bank: Relation; + constructor(data?: TDI17Details) { Object.assign(this, data?.resource); } diff --git a/apps/backend/src/deposits/entities/pos-deposit.entity.ts b/apps/backend/src/deposits/entities/pos-deposit.entity.ts index 6a2eeab7..9dadfe9b 100644 --- a/apps/backend/src/deposits/entities/pos-deposit.entity.ts +++ b/apps/backend/src/deposits/entities/pos-deposit.entity.ts @@ -13,6 +13,7 @@ import { FileMetadata } from '../../common/columns'; import { MatchStatus } from '../../common/const'; import { FileTypes } from '../../constants'; import { TDI34Details } from '../../flat-files'; +import { MerchantEntity } from '../../location/entities'; import { FileUploadedEntity } from '../../parse/entities/file-uploaded.entity'; import { PosHeuristicRound } from '../../reconciliation/types/const'; import { PaymentEntity, PaymentMethodEntity } from '../../transaction/entities'; @@ -94,6 +95,10 @@ export class POSDepositEntity { ) payment_match?: Relation; + @ManyToOne(() => MerchantEntity, { nullable: true }) + @JoinColumn({ referencedColumnName: 'id', name: 'merchant' }) + merchant: Relation; + constructor(data?: TDI34Details) { Object.assign(this, data?.resource); } diff --git a/apps/backend/src/deposits/pos-deposit.service.ts b/apps/backend/src/deposits/pos-deposit.service.ts index 6148711f..6e8ddba0 100644 --- a/apps/backend/src/deposits/pos-deposit.service.ts +++ b/apps/backend/src/deposits/pos-deposit.service.ts @@ -12,8 +12,11 @@ import { import { POSDepositEntity } from './entities/pos-deposit.entity'; import { MatchStatus, MatchStatusAll } from '../common/const'; import { mapLimit } from '../common/promises'; -import { DateRange, Ministries, NormalizedLocation } from '../constants'; -import { LocationEntity } from '../location/entities'; +import { DateRange, Ministries } from '../constants'; +import { + MasterLocationEntity, + MinistryLocationEntity, +} from '../location/entities'; import { AppLogger } from '../logger/logger.service'; @Injectable() @@ -85,7 +88,7 @@ export class PosDepositService { } async findPOSBySettlementDate( - locations: NormalizedLocation[], + locations: MinistryLocationEntity[], program: Ministries, dateRange: DateRange ) { @@ -98,13 +101,15 @@ export class PosDepositService { qb.addSelect('SUM(transaction_amt)::numeric(10,2)', 'transaction_amt'); qb.addSelect('location_id'); qb.leftJoin( - LocationEntity, + MasterLocationEntity, 'master_location_data', 'master_location_data.merchant_id = pos_deposit.merchant_id AND master_location_data.method = pos_deposit.payment_method' ); qb.where({ metadata: { program }, - merchant_id: In(locations.flatMap((l) => l.merchant_ids)), + merchant_id: In( + locations.flatMap((l) => l.merchants.map((itm) => itm.merchant_id)) + ), settlement_date: Raw( (alias) => `${alias} >= :minDate::date and ${alias} <= :maxDate::date`, { minDate, maxDate } @@ -250,4 +255,8 @@ export class PosDepositService { }); return [...reconciled, ...in_progress, ...pending]; } + + async findWithNullLocation() { + return await this.posDepositRepo.find({ where: { merchant: undefined } }); + } } diff --git a/apps/backend/src/lambdas/reconcile.ts b/apps/backend/src/lambdas/reconcile.ts index 3b4ffe0d..56c15c06 100644 --- a/apps/backend/src/lambdas/reconcile.ts +++ b/apps/backend/src/lambdas/reconcile.ts @@ -9,10 +9,10 @@ import { MatchStatus } from '../common/const'; import { DateRange, Ministries, - NormalizedLocation, PaymentMethodClassification, } from '../constants'; import { PosDepositService } from '../deposits/pos-deposit.service'; +import { MinistryLocationEntity } from '../location/entities'; import { LocationService } from '../location/location.service'; import { AppLogger } from '../logger/logger.service'; import { FileIngestionRulesEntity } from '../notification/entities/file-ingestion-rules.entity'; @@ -185,7 +185,7 @@ const reconcilePos = async ( posReconciliationService: PosReconciliationService, currentDate: string, paymentService: PaymentService, - locations: NormalizedLocation[], + locations: MinistryLocationEntity[], program: Ministries, posDepositService: PosDepositService, appLogger: AppLogger @@ -212,7 +212,11 @@ const reconcilePos = async ( ) ); posReconciliationService.setPendingDeposits( - deposits.filter((itm) => location.merchant_ids.includes(itm.merchant_id)) + deposits.filter((itm) => + location.merchants + .map((itm) => itm.merchant_id) + .includes(itm.merchant_id) + ) ); posReconciliationService.setHeuristicMatchRound(heuristics[program][0]); posReconciliationService.setMatchedPayments([]); @@ -240,7 +244,7 @@ const findPosExceptions = async ( posReconciliationService: PosReconciliationService, currentDate: string, paymentService: PaymentService, - locations: NormalizedLocation[], + locations: MinistryLocationEntity[], program: Ministries, posDepositService: PosDepositService, appLogger: AppLogger @@ -267,7 +271,9 @@ const findPosExceptions = async ( ); posReconciliationService.setPendingDeposits( depositsInprogress.filter((itm) => - location.merchant_ids.includes(itm.merchant_id) + location.merchants + .map((itm) => itm.merchant_id) + .includes(itm.merchant_id) ) ); @@ -287,7 +293,7 @@ const findPosExceptions = async ( */ const reconcileCash = async ( dateRange: DateRange, - locations: NormalizedLocation[], + locations: MinistryLocationEntity[], cashReconciliationService: CashReconciliationService, program: Ministries, appLogger: AppLogger diff --git a/apps/backend/src/lambdas/report.ts b/apps/backend/src/lambdas/report.ts index d42f620f..4484bf75 100644 --- a/apps/backend/src/lambdas/report.ts +++ b/apps/backend/src/lambdas/report.ts @@ -5,7 +5,6 @@ import { format, getMonth, getYear, parse } from 'date-fns'; import { AppModule } from '../app.module'; import { PaymentMethodClassification, - NormalizedLocation, DateRange, Ministries, } from '../constants'; @@ -13,6 +12,7 @@ import { CashDepositService } from '../deposits/cash-deposit.service'; import { CashDepositEntity } from '../deposits/entities/cash-deposit.entity'; import { POSDepositEntity } from '../deposits/entities/pos-deposit.entity'; import { PosDepositService } from '../deposits/pos-deposit.service'; +import { MinistryLocationEntity } from '../location/entities'; import { LocationService } from '../location/location.service'; import { AppLogger } from '../logger/logger.service'; import { ReportingService } from '../reporting/reporting.service'; @@ -164,7 +164,7 @@ const getPageThreeDeposits = async ( app: INestApplicationContext, dateRange: DateRange, program: Ministries, - locations: NormalizedLocation[] + locations: MinistryLocationEntity[] ): Promise<{ pageThreeDeposits: { cash: CashDepositEntity[]; pos: POSDepositEntity[] }; pageThreeDepositDates: DateRange; @@ -185,7 +185,7 @@ const getPageThreeDeposits = async ( const cashDepositsResults: CashDepositEntity[] = await cashDepositService.findCashDepositsForPageThreeReport( - locations.map((itm) => itm.pt_location_id), + locations.flatMap((itm) => itm.banks.map((itm) => itm.bank_id)), program, formattedDateRangeForPageThree ); diff --git a/apps/backend/src/lambdas/utils/parseGarms.ts b/apps/backend/src/lambdas/utils/parseGarms.ts index 4c9dc5d4..c3a97c1b 100644 --- a/apps/backend/src/lambdas/utils/parseGarms.ts +++ b/apps/backend/src/lambdas/utils/parseGarms.ts @@ -1,6 +1,7 @@ import Decimal from 'decimal.js'; import { parseFlatDateString } from '../../common/utils/format'; import { Ministries } from '../../constants'; +import { MinistryLocationEntity } from '../../location/entities'; import { TransactionEntity, PaymentEntity } from '../../transaction/entities'; import { PaymentMethodEntity } from '../../transaction/entities/payment-method.entity'; import { @@ -26,6 +27,7 @@ export const parseGarms = ( garmsJson: SBCGarmsJson[], source_file_name: string, paymentMethods: PaymentMethodEntity[], + locations: MinistryLocationEntity[], fileDate: string ): TransactionEntity[] => { const garmsData = garmsJson.map((itm) => ({ @@ -34,7 +36,7 @@ export const parseGarms = ( })); return garmsData.map((data: SBCGarmsJson) => - parseGarmsData(data, fileDate, source_file_name, paymentMethods) + parseGarmsData(data, fileDate, source_file_name, paymentMethods, locations) ); }; @@ -42,7 +44,8 @@ const parseGarmsData = ( garmsData: SBCGarmsJson, fileDate: string, source_file_name: string, - paymentMethods: PaymentMethodEntity[] + paymentMethods: PaymentMethodEntity[], + locations: MinistryLocationEntity[] ): TransactionEntity => { const { sales_transaction_date, @@ -60,6 +63,11 @@ const parseGarmsData = ( transaction_id: sales_transaction_id, transaction_date: sales_transaction_date.slice(0, 10), transaction_time: sales_transaction_date.slice(11, 19).replaceAll('.', ':'), + location: locations.find( + (loc) => + loc.source_id === source.source_id && + loc.location_id === parseInt(source.location_id) + ), location_id: parseInt(source.location_id), total_transaction_amount: payment_total, fiscal_close_date: parseFlatDateString(fiscal_close_date), diff --git a/apps/backend/src/location/entities/location.entity.ts b/apps/backend/src/location/entities/location.entity.ts index e34474b3..a3c2e5b9 100644 --- a/apps/backend/src/location/entities/location.entity.ts +++ b/apps/backend/src/location/entities/location.entity.ts @@ -10,11 +10,13 @@ import { BankLocationEntity, MerchantEntity } from '.'; export class MinistryLocationEntity extends BaseLocationEntity { @OneToMany(() => BankLocationEntity, (bank) => bank.location, { cascade: true, + eager: true, }) banks: Relation; @OneToMany(() => MerchantEntity, (merchant) => merchant.location, { cascade: true, + eager: true, }) merchants: Relation; } diff --git a/apps/backend/src/location/entities/location_base.ts b/apps/backend/src/location/entities/location_base.ts index b20bb28b..3fa157cc 100644 --- a/apps/backend/src/location/entities/location_base.ts +++ b/apps/backend/src/location/entities/location_base.ts @@ -1,6 +1,5 @@ import { Column, PrimaryGeneratedColumn } from 'typeorm'; - export class BaseLocationEntity { @PrimaryGeneratedColumn('uuid') id: string; @@ -34,5 +33,4 @@ export class BaseLocationEntity { @Column('varchar', { length: 7, nullable: false }) project_code: number; - } diff --git a/apps/backend/src/location/entities/master-location-data.entity.ts b/apps/backend/src/location/entities/master-location-data.entity.ts index 75719c65..0cb49009 100644 --- a/apps/backend/src/location/entities/master-location-data.entity.ts +++ b/apps/backend/src/location/entities/master-location-data.entity.ts @@ -2,7 +2,7 @@ import { Column, Entity } from 'typeorm'; import { BaseLocationEntity } from './location_base'; @Entity('master_location_data') -export class LocationEntity extends BaseLocationEntity { +export class MasterLocationEntity extends BaseLocationEntity { @Column('varchar', { length: 15, nullable: false }) method: string; diff --git a/apps/backend/src/location/location.module.ts b/apps/backend/src/location/location.module.ts index 0876fb57..6cc5b6fa 100644 --- a/apps/backend/src/location/location.module.ts +++ b/apps/backend/src/location/location.module.ts @@ -2,7 +2,7 @@ import { Module } from '@nestjs/common'; import { TypeOrmModule } from '@nestjs/typeorm'; import { MinistryLocationEntity, - LocationEntity, + MasterLocationEntity, BankLocationEntity, MerchantEntity, } from './entities'; @@ -14,7 +14,7 @@ import { LoggerModule } from '../logger/logger.module'; LoggerModule, TypeOrmModule.forFeature([ MinistryLocationEntity, - LocationEntity, + MasterLocationEntity, BankLocationEntity, MerchantEntity, ]), diff --git a/apps/backend/src/location/location.service.ts b/apps/backend/src/location/location.service.ts index f547ba2d..c45bfb9f 100644 --- a/apps/backend/src/location/location.service.ts +++ b/apps/backend/src/location/location.service.ts @@ -1,20 +1,19 @@ import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { In, Repository } from 'typeorm'; -import { LocationMethod } from './const'; import { MinistryLocationEntity, BankLocationEntity, - LocationEntity, + MasterLocationEntity, MerchantEntity, } from './entities'; -import { Ministries, BankMerchantId, NormalizedLocation } from '../constants'; +import { BankMerchantId, Ministries } from '../constants'; @Injectable() export class LocationService { constructor( - @InjectRepository(LocationEntity) - private locationRepo: Repository, + @InjectRepository(MasterLocationEntity) + private locationRepo: Repository, @InjectRepository(MinistryLocationEntity) private ministryLocationRepo: Repository, @InjectRepository(BankLocationEntity) @@ -23,19 +22,19 @@ export class LocationService { private merchantLocationRepo: Repository ) {} - public async findAll(): Promise { - return await this.locationRepo.find(); + public async findAll(): Promise { + return this.locationRepo.find(); } public async findBanks(): Promise { - return await this.bankLocationRepo.find(); + return this.bankLocationRepo.find(); } public async findMerchants(): Promise { - return await this.merchantLocationRepo.find(); + return this.merchantLocationRepo.find(); } public async findMinistryLocations( program: Ministries ): Promise { - return await this.ministryLocationRepo.find({ + return this.ministryLocationRepo.find({ where: { source_id: program }, relations: ['banks', 'merchants'], }); @@ -46,13 +45,13 @@ export class LocationService { * @param program */ public async seedMinistryLocations( - locations: LocationEntity[], + locations: MasterLocationEntity[], program: Ministries ) { - const locationEntityList = locations.reduce( + const MasterLocationEntityList = locations.reduce( ( acc: { [key: string]: Partial }, - itm: LocationEntity + itm: MasterLocationEntity ) => { const key = `${itm.location_id}${itm.source_id}`; if (!acc[key]) { @@ -102,56 +101,22 @@ export class LocationService { ); await this.ministryLocationRepo.save( this.ministryLocationRepo.create( - Object.values(locationEntityList).map((itm) => itm) + Object.values(MasterLocationEntityList).map((itm) => itm) ) ); } - /** - * Build a normalized location list from a list of locations in order to match the merchant ids to a single location id - * @param locations - * @returns - */ - public normalizeLocations(locations: LocationEntity[]): NormalizedLocation[] { - const normalizedLocationList = locations.reduce( - (acc: { [key: string]: NormalizedLocation }, itm: LocationEntity) => { - const key = itm.location_id; - if (!acc[key]) { - acc[key] = { - source_id: itm.source_id, - location_id: itm.location_id, - program_code: itm.program_code, - ministry_client: itm.ministry_client, - resp_code: itm.resp_code, - service_line_code: itm.service_line_code, - stob_code: itm.stob_code, - project_code: itm.project_code, - merchant_ids: [], - pt_location_id: 0, - description: '', - }; - } - itm.merchant_id !== BankMerchantId && - acc[key].merchant_ids.push(itm.merchant_id); - if (itm.method === LocationMethod.Bank) { - acc[key].pt_location_id = itm.pt_location_id; - acc[key].description = itm.description; - } - return acc; - }, - {} - ); - return Object.values(normalizedLocationList); - } - public async createLocations(locationsData: LocationEntity[]): Promise { + public async createLocations( + locationsData: MasterLocationEntity[] + ): Promise { await this.locationRepo.save(this.locationRepo.create(locationsData)); } public async getLocationsByID( program: Ministries, location_ids: number[] - ): Promise { - const locations = await this.locationRepo.find({ + ): Promise { + return this.ministryLocationRepo.find({ where: { source_id: program, location_id: In(location_ids), @@ -160,13 +125,12 @@ export class LocationService { location_id: 'ASC', }, }); - return this.normalizeLocations(locations); } public async getLocationsBySource( source: Ministries - ): Promise { - const locations = await this.locationRepo.find({ + ): Promise { + return this.ministryLocationRepo.find({ where: { source_id: source, }, @@ -174,6 +138,5 @@ export class LocationService { location_id: 'ASC', }, }); - return this.normalizeLocations(locations); } } diff --git a/apps/backend/src/parse/parse.module.ts b/apps/backend/src/parse/parse.module.ts index b9248f5d..ad788b9f 100644 --- a/apps/backend/src/parse/parse.module.ts +++ b/apps/backend/src/parse/parse.module.ts @@ -5,6 +5,7 @@ import { ParseController } from './parse.controller'; import { ParseService } from './parse.service'; import { UploadService } from './upload.service'; import { DepositModule } from '../deposits/deposit.module'; +import { LocationModule } from '../location/location.module'; import { LoggerModule } from '../logger/logger.module'; import { NotificationModule } from '../notification/notification.module'; import { S3ManagerModule } from '../s3-manager/s3-manager.module'; @@ -21,6 +22,7 @@ import { TransactionModule } from '../transaction/transaction.module'; LoggerModule, NotificationModule, SnsManagerModule, + LocationModule, TypeOrmModule.forFeature([FileUploadedEntity]), ], controllers: [ParseController], diff --git a/apps/backend/src/parse/parse.service.ts b/apps/backend/src/parse/parse.service.ts index bca33681..fea9cd9c 100644 --- a/apps/backend/src/parse/parse.service.ts +++ b/apps/backend/src/parse/parse.service.ts @@ -31,6 +31,8 @@ import { } from '../lambdas/helpers'; import { parseGarms } from '../lambdas/utils/parseGarms'; import { parseTDI, parseTDIHeader } from '../lambdas/utils/parseTDI'; +import { MinistryLocationEntity } from '../location/entities'; +import { LocationService } from '../location/location.service'; import { AppLogger } from '../logger/logger.service'; import { FileIngestionRulesEntity } from '../notification/entities/file-ingestion-rules.entity'; import { ProgramDailyUploadEntity } from '../notification/entities/program-daily-upload.entity'; @@ -57,6 +59,8 @@ export class ParseService { private readonly transactionService: TransactionService, @Inject(NotificationService) private readonly notificationService: NotificationService, + @Inject(LocationService) + private readonly locationService: LocationService, @InjectRepository(FileUploadedEntity) private uploadedRepo: Repository ) { @@ -108,7 +112,8 @@ export class ParseService { */ async parseGarmsFile( contents: string, - fileName: string + fileName: string, + locations: MinistryLocationEntity[] ): Promise<{ txnFile: TransactionEntity[]; txnFileDate: string }> { const paymentMethods = await this.paymentMethodService.getPaymentMethods(); // validate the filename - this must follow a specific format to be valid @@ -120,6 +125,7 @@ export class ParseService { (await JSON.parse(contents ?? '{}')) as SBCGarmsJson[], fileName, paymentMethods, + locations, fileDate ); @@ -150,11 +156,14 @@ export class ParseService { async parseTDICashFile( fileName: string, program: string, - fileContents: Buffer + fileContents: Buffer, + locations: MinistryLocationEntity[] ): Promise<{ cashDeposits: CashDepositEntity[]; fileDate: string }> { const contents = Buffer.from(fileContents.toString() || '').toString(); const header = parseTDIHeader(FileTypes.TDI17, contents); - + const banks = locations + .filter((loc) => loc.source_id === program) + .flatMap((itm) => itm.banks); const parsed = parseTDI({ type: FileTypes.TDI17, fileName, @@ -164,10 +173,16 @@ export class ParseService { }); const tdi17Details = parsed as TDI17Details[]; - const cashDeposits = tdi17Details.map( + const cashDeposits: CashDepositEntity[] = tdi17Details.map( (details) => new CashDepositEntity(details) ); - const cashDepositsDto = cashDeposits.map((c) => new CashDepositDTO(c)); + const cashDepositsDto = cashDeposits.map( + (c) => + new CashDepositDTO({ + ...c, + bank: banks.find((bank) => bank.bank_id === c.pt_location_id), + }) + ); const list = new CashDepositsListDTO(cashDepositsDto); try { @@ -197,8 +212,12 @@ export class ParseService { async parseTDICardsFile( fileName: string, program: string, - fileContents: Buffer + fileContents: Buffer, + locations: MinistryLocationEntity[] ): Promise<{ posEntities: POSDepositEntity[]; fileDate: string }> { + const merchants = locations + .filter((loc) => loc.source_id === program) + .flatMap((itm) => itm.merchants); const header = parseTDIHeader(FileTypes.TDI34, fileContents.toString()); const parsed = parseTDI({ type: FileTypes.TDI34, @@ -213,7 +232,15 @@ export class ParseService { (details) => new POSDepositEntity(details) ); - const posDepositsDto = posEntities.map((p) => new PosDepositDTO(p)); + const posDepositsDto = posEntities.map( + (p) => + new PosDepositDTO({ + ...p, + merchant: merchants.find( + (merch) => merch.merchant_id === p.merchant_id + ), + }) + ); const list = new PosDepositListDTO(posDepositsDto); try { @@ -522,14 +549,17 @@ export class ParseService { ): Promise { this.appLogger.log(`Parsing ${fileName}`); const contents = buffer.toString(); - + const locations = await this.locationService.findMinistryLocations( + Ministries[program as keyof typeof Ministries] + ); // FileType is based on the filename (from Parser) or from the endpoint body if (fileType === FileTypes.SBC_SALES) { this.appLogger.log('Parse and store SBC Sales in DB...', fileName); const { txnFile, txnFileDate } = await this.parseGarmsFile( contents, - fileName + fileName, + locations ); const fileToSave = await this.saveFileUploaded({ @@ -560,7 +590,8 @@ export class ParseService { const { cashDeposits, fileDate } = await this.parseTDICashFile( fileName, program, - buffer + buffer, + locations ); // validating step @@ -588,7 +619,8 @@ export class ParseService { const { posEntities, fileDate } = await this.parseTDICardsFile( fileName, program, - buffer + buffer, + locations ); const fileToSave = await this.saveFileUploaded({ diff --git a/apps/backend/src/reconciliation/cash-reconciliation.service.ts b/apps/backend/src/reconciliation/cash-reconciliation.service.ts index 81d831fe..fb4675aa 100644 --- a/apps/backend/src/reconciliation/cash-reconciliation.service.ts +++ b/apps/backend/src/reconciliation/cash-reconciliation.service.ts @@ -4,9 +4,10 @@ import Decimal from 'decimal.js'; import { FindOptionsOrderValue } from 'typeorm'; import { ReconciliationType, AggregatedCashPayment } from './types'; import { MatchStatus } from '../common/const'; -import { DateRange, Ministries, NormalizedLocation } from '../constants'; +import { DateRange, Ministries } from '../constants'; import { CashDepositService } from '../deposits/cash-deposit.service'; import { CashDepositEntity } from '../deposits/entities/cash-deposit.entity'; +import { MinistryLocationEntity } from '../location/entities'; import { AppLogger } from '../logger/logger.service'; import { PaymentEntity } from '../transaction/entities/payment.entity'; import { PaymentService } from '../transaction/payment.service'; @@ -28,7 +29,7 @@ export class CashReconciliationService { */ public async setExceptions( - location: NormalizedLocation, + location: MinistryLocationEntity, program: Ministries, exceptionsDate: string, currentDate: Date @@ -43,7 +44,7 @@ export class CashReconciliationService { await this.cashDepositService.findCashDepositExceptions( exceptionsDate, program, - location.pt_location_id + location.banks.map((itm) => itm.bank_id) ); const paymentExceptions: PaymentEntity[] = @@ -72,7 +73,7 @@ export class CashReconciliationService { } public async reconcileCashByLocation( - location: NormalizedLocation, + location: MinistryLocationEntity, program: Ministries, dateRange: DateRange ) { @@ -81,7 +82,7 @@ export class CashReconciliationService { const allCashDepositDatesPerLocation = await this.cashDepositService.findAllCashDepositDatesPerLocation( program, - location.pt_location_id, + location.banks.map((itm) => itm.bank_id), order ); @@ -213,7 +214,7 @@ export class CashReconciliationService { * @returns */ public async reconcileCash( - location: NormalizedLocation, + location: MinistryLocationEntity, program: Ministries, dateRange: DateRange, currentDate: Date @@ -222,7 +223,7 @@ export class CashReconciliationService { await this.cashDepositService.findCashDepositsByDate( program, dateRange.maxDate, - location.pt_location_id, + location.banks.map((itm) => itm.bank_id), [MatchStatus.IN_PROGRESS, MatchStatus.PENDING] ); diff --git a/apps/backend/src/reconciliation/pos-reconciliation.service.ts b/apps/backend/src/reconciliation/pos-reconciliation.service.ts index 0cd6d41a..58b9b924 100644 --- a/apps/backend/src/reconciliation/pos-reconciliation.service.ts +++ b/apps/backend/src/reconciliation/pos-reconciliation.service.ts @@ -14,9 +14,9 @@ import { Heuristics, } from './types'; import { MatchStatus } from '../common/const'; -import { NormalizedLocation } from '../constants'; import { POSDepositEntity } from '../deposits/entities/pos-deposit.entity'; import { PosDepositService } from '../deposits/pos-deposit.service'; +import { MinistryLocationEntity } from '../location/entities'; import { AppLogger } from '../logger/logger.service'; import { PaymentEntity } from '../transaction/entities/payment.entity'; import { PaymentService } from '../transaction/payment.service'; @@ -83,14 +83,14 @@ export class PosReconciliationService { /** * Match POS payments to POS deposits on location, program, date and time based heuristics - * @param {LocationEntity} location + * @param {MasterLocationEntity} location * @param {Ministries} program * @param {Date} date * @returns {Promise} */ public async reconcile( - location: NormalizedLocation + location: MinistryLocationEntity ): Promise { if ( this.pendingPayments?.length === 0 || diff --git a/apps/backend/src/reconciliation/types/interface.ts b/apps/backend/src/reconciliation/types/interface.ts index 5151cc01..70d18285 100644 --- a/apps/backend/src/reconciliation/types/interface.ts +++ b/apps/backend/src/reconciliation/types/interface.ts @@ -4,12 +4,14 @@ import { MatchStatus } from '../../common/const'; import { DateRange, Ministries, - NormalizedLocation, PaymentMethodClassification, } from '../../constants'; import { CashDepositEntity } from '../../deposits/entities/cash-deposit.entity'; import { POSDepositEntity } from '../../deposits/entities/pos-deposit.entity'; -import { LocationEntity } from '../../location/entities'; +import { + MasterLocationEntity, + MinistryLocationEntity, +} from '../../location/entities'; import { PaymentEntity } from '../../transaction/entities'; export interface PosPaymentPosDepositPair { @@ -23,7 +25,7 @@ export interface PosExceptions { } export interface ReconciliationConfig { - location: LocationEntity; + location: MasterLocationEntity; program: Ministries; dateRange?: DateRange; date: string; @@ -66,7 +68,7 @@ export interface PaymentDictionary { } export interface ReconcileEvent { - locations: NormalizedLocation[]; + locations: MinistryLocationEntity[]; reconciliationMaxDate: string; program: Ministries; payments: PaymentEntity[]; diff --git a/apps/backend/src/reporting/cas-report/cas-report.ts b/apps/backend/src/reporting/cas-report/cas-report.ts index 039ea345..cdef3d55 100644 --- a/apps/backend/src/reporting/cas-report/cas-report.ts +++ b/apps/backend/src/reporting/cas-report/cas-report.ts @@ -1,5 +1,5 @@ import { parse } from 'date-fns'; -import { NormalizedLocation } from '../../constants'; +import { MinistryLocationEntity } from '../../location/entities'; export class CasReport { settlement_date: Date; @@ -17,7 +17,7 @@ export class CasReport { payment_method: unknown, settlement_date: string, amount: number, - location: NormalizedLocation + location: MinistryLocationEntity ) { this.card_vendor = payment_method as string; this.settlement_date = parse(settlement_date, 'yyyy-MM-dd', new Date()); diff --git a/apps/backend/src/reporting/detailed-report/cash-details-report.ts b/apps/backend/src/reporting/detailed-report/cash-details-report.ts index 4164ced7..9c4630fd 100644 --- a/apps/backend/src/reporting/detailed-report/cash-details-report.ts +++ b/apps/backend/src/reporting/detailed-report/cash-details-report.ts @@ -1,14 +1,12 @@ import { parse } from 'date-fns'; import Decimal from 'decimal.js'; import { DetailsReport } from './details-report'; -import { - NormalizedLocation, - PaymentMethodClassification, -} from '../../constants'; +import { PaymentMethodClassification } from '../../constants'; import { CashDepositEntity } from '../../deposits/entities/cash-deposit.entity'; +import { MinistryLocationEntity } from '../../location/entities'; export class CashDepositDetailsReport extends DetailsReport { - constructor(location: NormalizedLocation, deposit: CashDepositEntity) { + constructor(location: MinistryLocationEntity, deposit: CashDepositEntity) { super(location); this.source_file = 'Cash/Chq (TDI 17)'; this.reconciliation_status = deposit.status; diff --git a/apps/backend/src/reporting/detailed-report/details-report.ts b/apps/backend/src/reporting/detailed-report/details-report.ts index f50fb927..d4520569 100644 --- a/apps/backend/src/reporting/detailed-report/details-report.ts +++ b/apps/backend/src/reporting/detailed-report/details-report.ts @@ -1,8 +1,6 @@ import { MatchStatus } from '../../common/const'; -import { - NormalizedLocation, - PaymentMethodClassification, -} from '../../constants'; +import { PaymentMethodClassification } from '../../constants'; +import { MinistryLocationEntity } from '../../location/entities'; import { PosHeuristicRound } from '../../reconciliation/types'; /*eslint-disable @typescript-eslint/no-explicit-any*/ @@ -53,7 +51,7 @@ export class DetailsReport { } return null; } - constructor(location: NormalizedLocation) { + constructor(location: MinistryLocationEntity) { this.location = location.description; this.location_id = location.location_id; this.dist_resp_code = location.resp_code; diff --git a/apps/backend/src/reporting/detailed-report/payment-details-report.ts b/apps/backend/src/reporting/detailed-report/payment-details-report.ts index d6cf9a9c..2e3d37d1 100644 --- a/apps/backend/src/reporting/detailed-report/payment-details-report.ts +++ b/apps/backend/src/reporting/detailed-report/payment-details-report.ts @@ -1,13 +1,14 @@ import { parse } from 'date-fns'; import Decimal from 'decimal.js'; import { DetailsReport } from './details-report'; -import { NormalizedLocation } from '../../constants'; + +import { MinistryLocationEntity } from '../../location/entities'; import { PaymentEntity } from '../../transaction/entities/payment.entity'; export class PaymentDetailsReport extends DetailsReport { /*eslint-disable */ - constructor(location: NormalizedLocation, payment: PaymentEntity) { + constructor(location: MinistryLocationEntity, payment: PaymentEntity) { super(location); this.source_file = 'Transaction (LOB)'; this.reconciliation_status = payment.status; diff --git a/apps/backend/src/reporting/detailed-report/pos-details-report.ts b/apps/backend/src/reporting/detailed-report/pos-details-report.ts index 66d7014e..95bfdcd9 100644 --- a/apps/backend/src/reporting/detailed-report/pos-details-report.ts +++ b/apps/backend/src/reporting/detailed-report/pos-details-report.ts @@ -1,14 +1,12 @@ import { parse } from 'date-fns'; import Decimal from 'decimal.js'; import { DetailsReport } from './details-report'; -import { - NormalizedLocation, - PaymentMethodClassification, -} from '../../constants'; +import { PaymentMethodClassification } from '../../constants'; import { POSDepositEntity } from '../../deposits/entities/pos-deposit.entity'; +import { MinistryLocationEntity } from '../../location/entities'; export class POSDepositDetailsReport extends DetailsReport { - constructor(location: NormalizedLocation, deposit: POSDepositEntity) { + constructor(location: MinistryLocationEntity, deposit: POSDepositEntity) { super(location); this.source_file = 'POS (TDI 34)'; this.reconciled_date = deposit.reconciled_on ?? deposit.reconciled_on; diff --git a/apps/backend/src/reporting/reporting.service.ts b/apps/backend/src/reporting/reporting.service.ts index 9f8d514a..9f82f35d 100644 --- a/apps/backend/src/reporting/reporting.service.ts +++ b/apps/backend/src/reporting/reporting.service.ts @@ -21,12 +21,12 @@ import { MatchStatus } from '../common/const'; import { DateRange, Ministries, - NormalizedLocation, PaymentMethodClassification, } from '../constants'; import { CashDepositEntity } from '../deposits/entities/cash-deposit.entity'; import { POSDepositEntity } from '../deposits/entities/pos-deposit.entity'; import { ExcelExportService } from '../excelexport/excelexport.service'; +import { MinistryLocationEntity } from '../location/entities'; import { AppLogger } from '../logger/logger.service'; import { PaymentEntity } from '../transaction/entities'; @@ -49,7 +49,7 @@ export class ReportingService { async generateReport( dateRange: DateRange, program: Ministries, - locations: NormalizedLocation[], + locations: MinistryLocationEntity[], deposits: { posDeposits: POSDepositEntity[]; cashDeposits: CashDepositEntity[]; @@ -113,7 +113,7 @@ export class ReportingService { cashPayments: PaymentEntity[], posDeposits: POSDepositEntity[], cashDeposits: CashDepositEntity[], - locations: NormalizedLocation[] + locations: MinistryLocationEntity[] ): void { this.appLogger.log('Generating Daily Summary WorkSheet'); @@ -160,7 +160,7 @@ export class ReportingService { posPayments: PaymentEntity[], cashDeposits: CashDepositEntity[], cashPayments: PaymentEntity[], - locations: NormalizedLocation[] + locations: MinistryLocationEntity[] ) { this.appLogger.log('Generating Reconciliation Details Worksheet'); @@ -205,7 +205,7 @@ export class ReportingService { generateCasReportWorksheet( dateRange: DateRange, program: Ministries, - locations: NormalizedLocation[], + locations: MinistryLocationEntity[], pageThreeDeposits: { cash: CashDepositEntity[]; pos: POSDepositEntity[] }, pageThreeDepositDates: DateRange ) { @@ -251,7 +251,7 @@ export class ReportingService { public getSummaryData( dateRange: DateRange, program: Ministries, - locations: NormalizedLocation[], + locations: MinistryLocationEntity[], posPayments: PaymentEntity[], cashPayments: PaymentEntity[], posDeposits: POSDepositEntity[], @@ -266,12 +266,16 @@ export class ReportingService { ); const cashDepositsByLocation = cashDeposits.filter( (itm) => - itm.pt_location_id === location.pt_location_id && + location.banks + .map((itm) => itm.bank_id) + .includes(itm.pt_location_id) && [MatchStatus.EXCEPTION, MatchStatus.MATCH].includes(itm.status) ); const posDepositsByLocation = posDeposits.filter( (itm) => - location.merchant_ids.includes(itm.merchant_id) && + location.merchants + .map((itm) => itm.merchant_id) + .includes(itm.merchant_id) && [MatchStatus.EXCEPTION, MatchStatus.MATCH].includes(itm.status) ); const depositsByLocation = [ @@ -368,7 +372,7 @@ export class ReportingService { posPayments: PaymentEntity[], cashDeposits: CashDepositEntity[], cashPayments: PaymentEntity[], - locations: NormalizedLocation[] + locations: MinistryLocationEntity[] ): DetailsReport[] { const paymentsReport = [...posPayments, ...cashPayments].map( (itm) => @@ -383,7 +387,10 @@ export class ReportingService { const cashDepositReport = cashDeposits.map( (itm) => new CashDepositDetailsReport( - locations.find((item) => item.pt_location_id === itm.pt_location_id)!, + locations.find((loc) => + loc.banks.map((itm) => itm.bank_id).includes(itm.pt_location_id) + )!, + itm ) ); @@ -391,7 +398,9 @@ export class ReportingService { (itm) => new POSDepositDetailsReport( locations.find((item) => - item.merchant_ids.includes(itm.merchant_id) + item.merchants + .map((itm) => itm.merchant_id) + .includes(itm.merchant_id) )!, itm ) @@ -416,7 +425,7 @@ export class ReportingService { * @returns */ public getCasReportData( - locations: NormalizedLocation[], + locations: MinistryLocationEntity[], pageThreeDeposits: { cash: CashDepositEntity[]; pos: POSDepositEntity[] } ): CasReport[] { const cashDepositsResults: CashDepositEntity[] = pageThreeDeposits.cash; @@ -431,9 +440,9 @@ export class ReportingService { 'CASH DEPOSIT', itm.deposit_date, itm.deposit_amt_cdn, - locations.find( - (loc) => loc.pt_location_id === itm.pt_location_id - ) as NormalizedLocation + locations.find((loc) => + loc.banks.map((itm) => itm.bank_id).includes(itm.pt_location_id) + ) as MinistryLocationEntity ) ); const posCasDeposits: CasReport[] = posDeposits @@ -447,7 +456,7 @@ export class ReportingService { parseFloat(itm.transaction_amt.toString()), locations.find( (loc) => loc.location_id === itm.merchant_id - ) as NormalizedLocation + ) as MinistryLocationEntity ) ); return [...cashDeposits, ...posCasDeposits]; diff --git a/apps/backend/src/transaction/entities/transaction.entity.ts b/apps/backend/src/transaction/entities/transaction.entity.ts index 8f895604..f796ec42 100644 --- a/apps/backend/src/transaction/entities/transaction.entity.ts +++ b/apps/backend/src/transaction/entities/transaction.entity.ts @@ -10,6 +10,7 @@ import { } from 'typeorm'; import { PaymentEntity } from './payment.entity'; import { Transaction } from '../interface/transaction.interface'; +import { MinistryLocationEntity } from '../../location/entities'; import { FileUploadedEntity } from '../../parse/entities/file-uploaded.entity'; @Entity('transaction') @@ -70,6 +71,10 @@ export class TransactionEntity { @Column({ name: 'file_uploaded', nullable: true }) fileUploadedEntityId?: string; + @ManyToOne(() => MinistryLocationEntity, { nullable: true }) + @JoinColumn({ name: 'location', referencedColumnName: 'id' }) + location: Relation; + constructor(transaction?: Partial) { Object.assign(this, transaction); } diff --git a/apps/backend/src/transaction/transaction.service.ts b/apps/backend/src/transaction/transaction.service.ts index e9b70a0c..97be6c6c 100644 --- a/apps/backend/src/transaction/transaction.service.ts +++ b/apps/backend/src/transaction/transaction.service.ts @@ -38,4 +38,8 @@ export class TransactionService { .distinct() .getRawMany(); } + + async findWithNullLocation() { + return await this.transactionRepo.find({ where: { location: undefined } }); + } } diff --git a/apps/backend/test/e2e/cash-e2e.spec.ts b/apps/backend/test/e2e/db-e2e.spec.ts similarity index 72% rename from apps/backend/test/e2e/cash-e2e.spec.ts rename to apps/backend/test/e2e/db-e2e.spec.ts index 3681cf96..de623073 100644 --- a/apps/backend/test/e2e/cash-e2e.spec.ts +++ b/apps/backend/test/e2e/db-e2e.spec.ts @@ -4,9 +4,11 @@ import * as csv from 'csvtojson'; import { Repository } from 'typeorm'; import fs from 'fs'; import path, { join } from 'path'; +import { locations } from '../mocks/const/locations'; import { validationPipeConfig } from '../../src/app.config'; import { AppModule } from '../../src/app.module'; -import { FileTypes } from '../../src/constants'; +import { FileTypes, Ministries } from '../../src/constants'; +import { DatabaseService } from '../../src/database/database.service'; import { CashDepositService } from '../../src/deposits/cash-deposit.service'; import { CashDepositEntity } from '../../src/deposits/entities/cash-deposit.entity'; import { POSDepositEntity } from '../../src/deposits/entities/pos-deposit.entity'; @@ -16,8 +18,9 @@ import { TDI34Details } from '../../src/flat-files/tdi34/TDI34Details'; import { extractDateFromTXNFileName } from '../../src/lambdas/helpers'; import { parseGarms } from '../../src/lambdas/utils/parseGarms'; import { parseTDI, parseTDIHeader } from '../../src/lambdas/utils/parseTDI'; -import { LocationEntity } from '../../src/location/entities'; +import { MasterLocationEntity } from '../../src/location/entities'; import { ILocation } from '../../src/location/interface/location.interface'; +import { LocationService } from '../../src/location/location.service'; import { TransactionEntity } from '../../src/transaction/entities'; import { PaymentMethodEntity } from '../../src/transaction/entities/payment-method.entity'; import { SBCGarmsJson } from '../../src/transaction/interface'; @@ -25,10 +28,12 @@ import { TransactionService } from '../../src/transaction/transaction.service'; import { TrimPipe } from '../../src/trim.pipe'; //TODO WIP -describe('Reconciliation Service (e2e)', () => { +describe('Tests the database tables and seed data (e2e)', () => { let app: INestApplication; + let databaseService: DatabaseService; + let locationService: LocationService; let paymentMethodRepo: Repository; - let locationRepo: Repository; + let locationRepo: Repository; let posDepositService: PosDepositService; let cashDepositService: CashDepositService; let transService: TransactionService; @@ -43,10 +48,12 @@ describe('Reconciliation Service (e2e)', () => { new ValidationPipe(validationPipeConfig) ); await app.init(); + locationService = module.get(LocationService); cashDepositService = module.get(CashDepositService); posDepositService = module.get(PosDepositService); + databaseService = module.get(DatabaseService); transService = module.get(TransactionService); - locationRepo = module.get('LocationEntityRepository'); + locationRepo = module.get('MasterLocationEntityRepository'); paymentMethodRepo = module.get('PaymentMethodEntityRepository'); }); it('creates location table', async () => { @@ -84,6 +91,33 @@ describe('Reconciliation Service (e2e)', () => { await paymentMethodRepo.save(paymentMethodsEntities); }); + it('create location, merchant and bank tables', async () => { + await databaseService.seedMasterData(); + const sbcLocations = await locationService.findMinistryLocations( + Ministries.SBC + ); + const sbcBanks = locations.flatMap((itm) => itm.banks); + const sbcMerchants = locations.flatMap((itm) => itm.merchants); + + const labourLocations = await locationService.findMinistryLocations( + Ministries.LABOUR + ); + const labourBanks = locations.flatMap((itm) => itm.banks); + const labourMerchants = locations.flatMap((itm) => itm.merchants); + + expect(sbcLocations).toBeDefined(); + expect(sbcLocations.length).toBeGreaterThan(0); + expect(sbcBanks).toBeDefined(); + expect(sbcBanks.length).toBeGreaterThan(0); + expect(sbcMerchants).toBeDefined(); + expect(sbcMerchants.length).toBeGreaterThan(0); + expect(labourLocations).toBeDefined(); + expect(labourLocations.length).toBeGreaterThan(0); + expect(labourBanks).toBeDefined(); + expect(labourBanks.length).toBeGreaterThan(0); + expect(labourMerchants).toBeDefined(); + expect(labourMerchants.length).toBeGreaterThan(0); + }); it('parses and inserts cash deposit data', async () => { const contents = Buffer.from( @@ -128,14 +162,18 @@ describe('Reconciliation Service (e2e)', () => { it('parses and inserts payment data', async () => { const paymentMethods = await paymentMethodRepo.find(); + const locations = await locationService.findMinistryLocations( + Ministries.SBC + ); const contents = fs.readFileSync( join(__dirname, '../fixtures/SBC_SALES_2023_03_08_23_17_53.JSON'), 'utf8' ); - const parsedGarmsFile: TransactionEntity[] = await parseGarms( + const parsedGarmsFile: TransactionEntity[] = parseGarms( (await JSON.parse(contents)) as SBCGarmsJson[], 'sbc/SBC_SALES_2023_03_08_23_17_53.JSON', paymentMethods, + locations, extractDateFromTXNFileName('sbc/SBC_SALES_2023_03_08_23_17_53.JSON') ); await transService.saveTransactions(parsedGarmsFile); diff --git a/apps/backend/test/mocks/classes/cash_deposit_mock.ts b/apps/backend/test/mocks/classes/cash_deposit_mock.ts index cb816a9e..78e63060 100644 --- a/apps/backend/test/mocks/classes/cash_deposit_mock.ts +++ b/apps/backend/test/mocks/classes/cash_deposit_mock.ts @@ -2,14 +2,14 @@ import { faker } from '@faker-js/faker'; import { FileMetadata } from '../../../src/common/columns'; import { MatchStatus, MatchStatusAll } from '../../../src/common/const'; import { DateRange } from '../../../src/constants'; -import { NormalizedLocation } from '../../../src/constants'; import { CashDepositEntity } from '../../../src/deposits/entities/cash-deposit.entity'; +import { MinistryLocationEntity } from '../../../src/location/entities'; /*eslint-disable */ export class CashDepositMock extends CashDepositEntity { constructor( dateRange: DateRange, - location: NormalizedLocation, + location: MinistryLocationEntity, metadata: FileMetadata, amount: number, status?: MatchStatus @@ -19,7 +19,9 @@ export class CashDepositMock extends CashDepositEntity { this.deposit_date = dateRange.maxDate; this.metadata = metadata; this.deposit_amt_cdn = amount; - this.pt_location_id = location.pt_location_id; + this.pt_location_id = location.banks.find( + (bank) => bank.method === 'Bank' + )!.bank_id; this.status = status ?? faker.helpers.arrayElement(MatchStatusAll); } } diff --git a/apps/backend/test/mocks/classes/pos_deposit_mock.ts b/apps/backend/test/mocks/classes/pos_deposit_mock.ts index 319a9fe9..d2eb7a2f 100644 --- a/apps/backend/test/mocks/classes/pos_deposit_mock.ts +++ b/apps/backend/test/mocks/classes/pos_deposit_mock.ts @@ -1,15 +1,14 @@ import { faker } from '@faker-js/faker'; import { PaymentMock } from './payment_mock'; -import { locations } from '../const/locations'; import { FileMetadata } from './../../../src/common/columns/metadata'; import { MatchStatus, MatchStatusAll } from '../../../src/common/const'; -import { NormalizedLocation } from '../../../src/constants'; import { POSDepositEntity } from '../../../src/deposits/entities/pos-deposit.entity'; +import { MinistryLocationEntity } from '../../../src/location/entities'; /*eslint-disable */ export class POSDepositMock extends POSDepositEntity { constructor( - location: NormalizedLocation, + location: MinistryLocationEntity, metadata: FileMetadata, payment: PaymentMock, status?: MatchStatus @@ -18,10 +17,8 @@ export class POSDepositMock extends POSDepositEntity { this.id = faker.string.uuid(); this.metadata = metadata; - this.merchant_id = locations.find( - (l) => l.location_id === location.location_id - )?.merchant_id!; - this.transaction_date = payment.transaction.transaction_date; + (this.merchant_id = location.merchants[0].merchant_id), + (this.transaction_date = payment.transaction.transaction_date); this.transaction_time = payment.transaction.transaction_time; this.transaction_amt = payment.amount; this.payment_method = payment.payment_method; diff --git a/apps/backend/test/mocks/classes/transaction_mock.ts b/apps/backend/test/mocks/classes/transaction_mock.ts index 1f9c02bb..420a813e 100644 --- a/apps/backend/test/mocks/classes/transaction_mock.ts +++ b/apps/backend/test/mocks/classes/transaction_mock.ts @@ -1,8 +1,9 @@ import { faker } from '@faker-js/faker'; import { format } from 'date-fns'; +import { MinistryLocationEntity } from 'src/location/entities'; import { PaymentMock } from './payment_mock'; import { PaymentEntity } from './../../../src/transaction/entities/payment.entity'; -import { Ministries, NormalizedLocation } from '../../../src/constants'; +import { Ministries } from '../../../src/constants'; import { DateRange } from '../../../src/constants'; import { TransactionEntity } from '../../../src/transaction/entities'; @@ -11,7 +12,7 @@ export class TransactionMock extends TransactionEntity { constructor( dateRange: DateRange, program: Ministries, - location: NormalizedLocation, + location: MinistryLocationEntity, payments: PaymentMock[] ) { super(); diff --git a/apps/backend/test/mocks/const/location_mock.ts b/apps/backend/test/mocks/const/location_mock.ts index 636448cb..c521937a 100644 --- a/apps/backend/test/mocks/const/location_mock.ts +++ b/apps/backend/test/mocks/const/location_mock.ts @@ -1,7 +1,7 @@ import { faker } from '@faker-js/faker'; -import { normalizedLocations } from './locations'; -import { NormalizedLocation } from '../../../src/constants'; +import { locations } from './locations'; +import { MinistryLocationEntity } from '../../../src/location/entities'; -export const generateLocation = (): NormalizedLocation => { - return faker.helpers.arrayElement(normalizedLocations); +export const generateLocation = (): MinistryLocationEntity => { + return faker.helpers.arrayElement(locations); }; diff --git a/apps/backend/test/mocks/const/locations.ts b/apps/backend/test/mocks/const/locations.ts index ced75893..c7d7779e 100644 --- a/apps/backend/test/mocks/const/locations.ts +++ b/apps/backend/test/mocks/const/locations.ts @@ -1,13 +1,15 @@ -import { NormalizedLocation } from '../../../src/constants'; -import { LocationEntity } from '../../../src/location/entities/master-location-data.entity'; +import { + BankLocationEntity, + MerchantEntity, + MinistryLocationEntity, +} from '../../../src/location/entities'; -export const locations: LocationEntity[] = [ +export const locations: MinistryLocationEntity[] = [ { id: '50d4b3f7-1bc8-4329-9dfc-18dc77b05a8c', source_id: 'SBC', location_id: 61, - method: 'AX', - pt_location_id: 20861, + banks: [new BankLocationEntity({ id: '20861', method: 'Bank' })], description: '100 MILE HOUSE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -16,14 +18,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591041, + merchants: [new MerchantEntity({ id: '23591041' })], }, { id: '5a71a6cb-8d6f-415c-a87a-ae97f408113c', source_id: 'SBC', location_id: 1, - method: 'AX', - pt_location_id: 20800, + banks: [new BankLocationEntity({ id: '20800', method: 'Bank' })], description: 'HAZELTON AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -32,14 +33,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591645, + merchants: [new MerchantEntity({ id: '23591645' })], }, { id: 'dd5dc8b0-47df-4459-8d6f-7b0e1cb06125', source_id: 'SBC', location_id: 2, - method: 'AX', - pt_location_id: 20801, + banks: [new BankLocationEntity({ id: '20801', method: 'Bank' })], description: 'ASHCROFT AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -48,14 +48,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591066, + merchants: [new MerchantEntity({ id: '23591066' })], }, { id: 'f77871f8-1c18-47c7-9d9e-4e944edfc3c6', source_id: 'SBC', location_id: 3, - method: 'AX', - pt_location_id: 20803, + banks: [new BankLocationEntity({ id: '20803', method: 'Bank' })], description: 'ATLIN AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -64,14 +63,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591074, + merchants: [new MerchantEntity({ id: '23591074' })], }, { id: 'fd0e49ff-b9d3-4c58-b928-53ebaee5e2c5', source_id: 'SBC', location_id: 8, - method: 'AX', - pt_location_id: 20808, + banks: [new BankLocationEntity({ id: '20808', method: 'Bank' })], description: 'BELLA COOLA AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -80,14 +78,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591082, + merchants: [new MerchantEntity({ id: '23591082' })], }, { id: '06ca8316-d844-40ab-933c-9ab6caad0bd2', source_id: 'SBC', location_id: 10, - method: 'AX', - pt_location_id: 20303, + banks: [new BankLocationEntity({ id: '20303', method: 'Bank' })], description: 'BURNABY AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -96,14 +93,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 28624979, + merchants: [new MerchantEntity({ id: '28624979' })], }, { id: '7b581825-12c2-426e-bc11-b1ab47aea029', source_id: 'SBC', location_id: 11, - method: 'AX', - pt_location_id: 20811, + banks: [new BankLocationEntity({ id: '20811', method: 'Bank' })], description: 'BURNS LAKE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -112,14 +108,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591090, + merchants: [new MerchantEntity({ id: '23591090' })], }, { id: '858a3f3d-3d2b-446e-8227-a656fcb124b4', source_id: 'SBC', location_id: 12, - method: 'AX', - pt_location_id: 20812, + banks: [new BankLocationEntity({ id: '20812', method: 'Bank' })], description: 'CAMPBELL RIVER AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -128,14 +123,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591116, + merchants: [new MerchantEntity({ id: '23591116' })], }, { id: '8107c36b-c2b7-42c3-b25e-022d489e6c8b', source_id: 'SBC', location_id: 19, - method: 'AX', - pt_location_id: 20819, + banks: [new BankLocationEntity({ id: '20819', method: 'Bank' })], description: 'CHETWYND AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -144,14 +138,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591124, + merchants: [new MerchantEntity({ id: '23591124' })], }, { id: '8e355776-29d0-49f3-bbd9-f8f4bf1a7e12', source_id: 'SBC', location_id: 14, - method: 'AX', - pt_location_id: 20814, + banks: [new BankLocationEntity({ id: '20814', method: 'Bank' })], description: 'CHILLIWACK AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -160,14 +153,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591132, + merchants: [new MerchantEntity({ id: '23591132' })], }, { id: 'b1cb8e11-1f96-4759-9ded-9db7ebf64185', source_id: 'SBC', location_id: 15, - method: 'AX', - pt_location_id: 20815, + banks: [new BankLocationEntity({ id: '20815', method: 'Bank' })], description: 'CLINTON AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -176,14 +168,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591157, + merchants: [new MerchantEntity({ id: '23591157' })], }, { id: 'a792c6d9-d086-42cb-9bbd-35d4d5e62542', source_id: 'SBC', location_id: 16, - method: 'AX', - pt_location_id: 20816, + banks: [new BankLocationEntity({ id: '20816', method: 'Bank' })], description: 'COURTENAY AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -192,14 +183,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591173, + merchants: [new MerchantEntity({ id: '23591173' })], }, { id: '7dba37c0-0899-450f-94e1-fd55c4c49448', source_id: 'SBC', location_id: 17, - method: 'AX', - pt_location_id: 20817, + banks: [new BankLocationEntity({ id: '20817', method: 'Bank' })], description: 'CRANBROOK AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -208,14 +198,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591199, + merchants: [new MerchantEntity({ id: '23591199' })], }, { id: '017c76f0-e80a-40b9-b455-c3174ca4cece', source_id: 'SBC', location_id: 18, - method: 'AX', - pt_location_id: 20818, + banks: [new BankLocationEntity({ id: '20818', method: 'Bank' })], description: 'CRESTON AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -224,14 +213,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591207, + merchants: [new MerchantEntity({ id: '23591207' })], }, { id: '1d668d37-fb02-4dc2-9062-6373f99b16e4', source_id: 'SBC', location_id: 23, - method: 'AX', - pt_location_id: 20823, + banks: [new BankLocationEntity({ id: '20823', method: 'Bank' })], description: 'DAWSON CREEK AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -240,14 +228,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591363, + merchants: [new MerchantEntity({ id: '23591363' })], }, { id: '57657021-e329-49c7-b853-499b3581a244', source_id: 'SBC', location_id: 13, - method: 'AX', - pt_location_id: 20813, + banks: [new BankLocationEntity({ id: '20813', method: 'Bank' })], description: 'DEASE LAKE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -256,14 +243,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591371, + merchants: [new MerchantEntity({ id: '23591371' })], }, { id: '2412a095-d4ce-45c7-bf6a-9db60bdb3f44', source_id: 'SBC', location_id: 25, - method: 'AX', - pt_location_id: 20825, + banks: [new BankLocationEntity({ id: '20825', method: 'Bank' })], description: 'DUNCAN AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -272,14 +258,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591389, + merchants: [new MerchantEntity({ id: '23591389' })], }, { id: '988b76c4-d9ff-4a45-b608-6b1172702f8a', source_id: 'SBC', location_id: 30, - method: 'AX', - pt_location_id: 20830, + banks: [new BankLocationEntity({ id: '20830', method: 'Bank' })], description: 'FERNIE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -288,14 +273,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591397, + merchants: [new MerchantEntity({ id: '23591397' })], }, { id: 'a64c0d39-e01b-40a1-b794-4d5e3e3d1b7c', source_id: 'SBC', location_id: 32, - method: 'AX', - pt_location_id: 20832, + banks: [new BankLocationEntity({ id: '20832', method: 'Bank' })], description: 'FORT NELSON AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -304,14 +288,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591413, + merchants: [new MerchantEntity({ id: '23591413' })], }, { id: '1a3e6d79-9dfa-4a56-9779-d32b7acb6a02', source_id: 'SBC', location_id: 33, - method: 'AX', - pt_location_id: 20833, + banks: [new BankLocationEntity({ id: '20833', method: 'Bank' })], description: 'FORT ST. JAMES AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -320,14 +303,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591587, + merchants: [new MerchantEntity({ id: '23591587' })], }, { id: '32cd129c-774d-4667-a7ee-215bf651fdad', source_id: 'SBC', location_id: 31, - method: 'AX', - pt_location_id: 20831, + banks: [new BankLocationEntity({ id: '20831', method: 'Bank' })], description: 'FORT ST. JOHN AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -336,14 +318,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591595, + merchants: [new MerchantEntity({ id: '23591595' })], }, { id: 'd05f5322-1b7c-49a1-b351-bb3ce3c6367c', source_id: 'SBC', location_id: 37, - method: 'AX', - pt_location_id: 20837, + banks: [new BankLocationEntity({ id: '20837', method: 'Bank' })], description: 'GANGES AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -352,14 +333,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591603, + merchants: [new MerchantEntity({ id: '23591603' })], }, { id: '145324ad-47c4-4bc5-85cf-1ee81921ce1f', source_id: 'SBC', location_id: 35, - method: 'AX', - pt_location_id: 20835, + banks: [new BankLocationEntity({ id: '20835', method: 'Bank' })], description: 'GOLDEN AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -368,14 +348,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591629, + merchants: [new MerchantEntity({ id: '23591629' })], }, { id: '20b79ad4-8787-4ce6-90c7-886ad7651b31', source_id: 'SBC', location_id: 36, - method: 'AX', - pt_location_id: 20836, + banks: [new BankLocationEntity({ id: '20836', method: 'Bank' })], description: 'GRAND FORKS AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -384,14 +363,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591637, + merchants: [new MerchantEntity({ id: '23591637' })], }, { id: '1f47657b-7046-469a-bdf5-66561847d25d', source_id: 'SBC', location_id: 39, - method: 'AX', - pt_location_id: 20839, + banks: [new BankLocationEntity({ id: '20839', method: 'Bank' })], description: 'HOUSTON AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -400,14 +378,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591660, + merchants: [new MerchantEntity({ id: '23591660' })], }, { id: '87b671ef-8836-45a2-aa7a-cbb63f672f2b', source_id: 'SBC', location_id: 38, - method: 'AX', - pt_location_id: 20838, + banks: [new BankLocationEntity({ id: '20838', method: 'Bank' })], description: 'INVERMERE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -416,14 +393,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23591835, + merchants: [new MerchantEntity({ id: '23591835' })], }, { id: '54b136bc-f113-4c91-8b9c-88b2c96543b2', source_id: 'SBC', location_id: 40, - method: 'AX', - pt_location_id: 20840, + banks: [new BankLocationEntity({ id: '20840', method: 'Bank' })], description: 'KAMLOOPS AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -432,14 +408,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592072, + merchants: [new MerchantEntity({ id: '23592072' })], }, { id: 'd6406b4f-16e5-4b66-9bc5-f591bc5314f5', source_id: 'SBC', location_id: 41, - method: 'AX', - pt_location_id: 20841, + banks: [new BankLocationEntity({ id: '20841', method: 'Bank' })], description: 'KASLO AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -448,14 +423,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592098, + merchants: [new MerchantEntity({ id: '23592098' })], }, { id: 'd4019561-c525-47e2-af06-9112764198f1', source_id: 'SBC', location_id: 42, - method: 'AX', - pt_location_id: 20842, + banks: [new BankLocationEntity({ id: '20842', method: 'Bank' })], description: 'KELOWNA AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -464,14 +438,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592114, + merchants: [new MerchantEntity({ id: '23592114' })], }, { id: 'b8cfd546-84e2-4c1e-8b43-d0151f2ba67c', source_id: 'SBC', location_id: 43, - method: 'AX', - pt_location_id: 20843, + banks: [new BankLocationEntity({ id: '20843', method: 'Bank' })], description: 'KITIMAT AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -480,14 +453,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592122, + merchants: [new MerchantEntity({ id: '23592122' })], }, { id: '19a12f86-5a7f-4345-95a5-2046ed9fd7c7', source_id: 'SBC', location_id: 45, - method: 'AX', - pt_location_id: 20845, + banks: [new BankLocationEntity({ id: '20845', method: 'Bank' })], description: 'LILLOOET AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -496,14 +468,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592155, + merchants: [new MerchantEntity({ id: '23592155' })], }, { id: 'd9bf5d03-fbc9-45aa-b145-04fe23d3927a', source_id: 'SBC', location_id: 47, - method: 'AX', - pt_location_id: 20847, + banks: [new BankLocationEntity({ id: '20847', method: 'Bank' })], description: 'MACKENZIE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -512,14 +483,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592189, + merchants: [new MerchantEntity({ id: '23592189' })], }, { id: '45d54209-b8d4-4d02-97fa-4a2a96615850', source_id: 'SBC', location_id: 46, - method: 'AX', - pt_location_id: 20846, + banks: [new BankLocationEntity({ id: '20846', method: 'Bank' })], description: 'MAPLE RIDGE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -528,14 +498,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592205, + merchants: [new MerchantEntity({ id: '23592205' })], }, { id: '029a5c3f-6183-4773-9c3a-813e44c25401', source_id: 'SBC', location_id: 48, - method: 'AX', - pt_location_id: 20848, + banks: [new BankLocationEntity({ id: '20848', method: 'Bank' })], description: 'MASSET AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -544,14 +513,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592247, + merchants: [new MerchantEntity({ id: '23592247' })], }, { id: '71701891-93ba-4d10-9f5f-d05d123b3cc2', source_id: 'SBC', location_id: 50, - method: 'AX', - pt_location_id: 20850, + banks: [new BankLocationEntity({ id: '20850', method: 'Bank' })], description: 'MERRITT AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -560,14 +528,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592262, + merchants: [new MerchantEntity({ id: '23592262' })], }, { id: '6bcdd9a8-4d2a-4213-944f-60d7387caf38', source_id: 'SBC', location_id: 51, - method: 'AX', - pt_location_id: 20851, + banks: [new BankLocationEntity({ id: '20851', method: 'Bank' })], description: 'NAKUSP AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -576,14 +543,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592270, + merchants: [new MerchantEntity({ id: '23592270' })], }, { id: '7c84de41-d4cc-4349-ac47-f6b2f32e4e17', source_id: 'SBC', location_id: 55, - method: 'AX', - pt_location_id: 20855, + banks: [new BankLocationEntity({ id: '20855', method: 'Bank' })], description: 'NANAIMO AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -592,14 +558,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592288, + merchants: [new MerchantEntity({ id: '23592288' })], }, { id: 'b5422565-6c53-4901-a1ce-97707796bada', source_id: 'SBC', location_id: 56, - method: 'AX', - pt_location_id: 20856, + banks: [new BankLocationEntity({ id: '20856', method: 'Bank' })], description: 'NELSON AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -608,14 +573,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592296, + merchants: [new MerchantEntity({ id: '23592296' })], }, { id: 'b7cff60b-6f33-4a27-aaa2-63d66f0d1910', source_id: 'SBC', location_id: 60, - method: 'AX', - pt_location_id: 20860, + banks: [new BankLocationEntity({ id: '20860', method: 'Bank' })], description: 'OLIVER AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -624,14 +588,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592304, + merchants: [new MerchantEntity({ id: '23592304' })], }, { id: 'eb3c3102-62f1-4c28-b160-4e31e091896f', source_id: 'SBC', location_id: 65, - method: 'AX', - pt_location_id: 20865, + banks: [new BankLocationEntity({ id: '20865', method: 'Bank' })], description: 'PENTICTON AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -640,14 +603,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592312, + merchants: [new MerchantEntity({ id: '23592312' })], }, { id: '4f453779-d958-4ed9-bf23-985c9170cedf', source_id: 'SBC', location_id: 66, - method: 'AX', - pt_location_id: 20866, + banks: [new BankLocationEntity({ id: '20866', method: 'Bank' })], description: 'PORT ALBERNI AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -656,14 +618,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592320, + merchants: [new MerchantEntity({ id: '23592320' })], }, { id: 'aa396585-a4dc-4421-8564-f037826d27f1', source_id: 'SBC', location_id: 64, - method: 'AX', - pt_location_id: 20864, + banks: [new BankLocationEntity({ id: '20864', method: 'Bank' })], description: 'PORT HARDY AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -672,14 +633,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592338, + merchants: [new MerchantEntity({ id: '23592338' })], }, { id: '02e66d7a-6ef5-4ba9-9be6-a6db3b05adab', source_id: 'SBC', location_id: 67, - method: 'AX', - pt_location_id: 20867, + banks: [new BankLocationEntity({ id: '20867', method: 'Bank' })], description: 'POWELL RIVER AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -688,14 +648,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592346, + merchants: [new MerchantEntity({ id: '23592346' })], }, { id: '7aaa9da9-c2ce-4fa3-a117-d955e6f1cc0f', source_id: 'SBC', location_id: 68, - method: 'AX', - pt_location_id: 20868, + banks: [new BankLocationEntity({ id: '20868', method: 'Bank' })], description: 'PRINCE GEORGE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -704,14 +663,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592353, + merchants: [new MerchantEntity({ id: '23592353' })], }, { id: '3b1587e5-b654-4c8a-9dc4-ca6872d57dba', source_id: 'SBC', location_id: 69, - method: 'AX', - pt_location_id: 20869, + banks: [new BankLocationEntity({ id: '20869', method: 'Bank' })], description: 'PRINCE RUPERT AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -720,14 +678,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592361, + merchants: [new MerchantEntity({ id: '23592361' })], }, { id: '6b3fe170-19fd-41aa-89f2-dca3252192b5', source_id: 'SBC', location_id: 70, - method: 'AX', - pt_location_id: 20870, + banks: [new BankLocationEntity({ id: '20870', method: 'Bank' })], description: 'PRINCETON AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -736,14 +693,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592379, + merchants: [new MerchantEntity({ id: '23592379' })], }, { id: 'cafd48ae-b77d-44bb-903c-29cf92fe65de', source_id: 'SBC', location_id: 73, - method: 'AX', - pt_location_id: 20873, + banks: [new BankLocationEntity({ id: '20873', method: 'Bank' })], description: 'QUEEN CHARLOTTE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -752,14 +708,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592387, + merchants: [new MerchantEntity({ id: '23592387' })], }, { id: '737d283f-f135-4c68-af84-c41c8c13de55', source_id: 'SBC', location_id: 75, - method: 'AX', - pt_location_id: 20875, + banks: [new BankLocationEntity({ id: '20875', method: 'Bank' })], description: 'QUESNEL AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -768,14 +723,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592395, + merchants: [new MerchantEntity({ id: '23592395' })], }, { id: '33368d5f-2d7b-437a-a4c2-ec2cb8ca4cb1', source_id: 'SBC', location_id: 80, - method: 'AX', - pt_location_id: 20880, + banks: [new BankLocationEntity({ id: '20880', method: 'Bank' })], description: 'REVELSTOKE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -784,14 +738,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592403, + merchants: [new MerchantEntity({ id: '23592403' })], }, { id: '6c5ce9aa-a068-494d-9ab8-e3ddf3de015a', source_id: 'SBC', location_id: 85, - method: 'AX', - pt_location_id: 20885, + banks: [new BankLocationEntity({ id: '20885', method: 'Bank' })], description: 'SALMON ARM AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -800,14 +753,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592411, + merchants: [new MerchantEntity({ id: '23592411' })], }, { id: '9ca830a1-d2ed-4c81-9ee9-58a85f3fc0d1', source_id: 'SBC', location_id: 82, - method: 'AX', - pt_location_id: 20882, + banks: [new BankLocationEntity({ id: '20882', method: 'Bank' })], description: 'SECHELT AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -816,14 +768,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592429, + merchants: [new MerchantEntity({ id: '23592429' })], }, { id: '91289920-29f5-4f62-9f3e-98773e6915e5', source_id: 'SBC', location_id: 86, - method: 'AX', - pt_location_id: 20886, + banks: [new BankLocationEntity({ id: '20886', method: 'Bank' })], description: 'SMITHERS AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -832,14 +783,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592437, + merchants: [new MerchantEntity({ id: '23592437' })], }, { id: '88a2f02d-5eba-486d-810c-f90816b940ea', source_id: 'SBC', location_id: 83, - method: 'AX', - pt_location_id: 20883, + banks: [new BankLocationEntity({ id: '20883', method: 'Bank' })], description: 'SPARWOOD AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -848,14 +798,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592445, + merchants: [new MerchantEntity({ id: '23592445' })], }, { id: 'c03f9e19-06f8-4178-b32b-3c23b54b4984', source_id: 'SBC', location_id: 84, - method: 'AX', - pt_location_id: 20884, + banks: [new BankLocationEntity({ id: '20884', method: 'Bank' })], description: 'SQUAMISH AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -864,14 +813,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592452, + merchants: [new MerchantEntity({ id: '23592452' })], }, { id: '3f35b4d8-b0fb-44c3-92f3-6b77a33d9f1b', source_id: 'SBC', location_id: 87, - method: 'AX', - pt_location_id: 20887, + banks: [new BankLocationEntity({ id: '20887', method: 'Bank' })], description: 'STEWART AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -880,14 +828,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592460, + merchants: [new MerchantEntity({ id: '23592460' })], }, { id: 'f9eb8500-f60e-4f2d-9c0e-9aa49d733366', source_id: 'SBC', location_id: 88, - method: 'AX', - pt_location_id: 20888, + banks: [new BankLocationEntity({ id: '20888', method: 'Bank' })], description: 'TERRACE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -896,14 +843,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592478, + merchants: [new MerchantEntity({ id: '23592478' })], }, { id: 'f9e3dae1-a6dd-45a7-8ab1-1d8f1ff9c506', source_id: 'SBC', location_id: 81, - method: 'AX', - pt_location_id: 20881, + banks: [new BankLocationEntity({ id: '20881', method: 'Bank' })], description: 'TRAIL AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -912,14 +858,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592486, + merchants: [new MerchantEntity({ id: '23592486' })], }, { id: 'ceeb142d-ba59-4dba-9794-fefbcc4209ca', source_id: 'SBC', location_id: 89, - method: 'AX', - pt_location_id: 20889, + banks: [new BankLocationEntity({ id: '20889', method: 'Bank' })], description: 'UCLUELET AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -928,14 +873,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592494, + merchants: [new MerchantEntity({ id: '23592494' })], }, { id: '9a5ad29b-2897-4334-86aa-5d2353973478', source_id: 'SBC', location_id: 91, - method: 'AX', - pt_location_id: 20891, + banks: [new BankLocationEntity({ id: '20891', method: 'Bank' })], description: 'VALEMOUNT AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -944,14 +888,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592502, + merchants: [new MerchantEntity({ id: '23592502' })], }, { id: 'dc051660-0d19-4181-b7d5-6e8feb116fdc', source_id: 'SBC', location_id: 92, - method: 'AX', - pt_location_id: 20892, + banks: [new BankLocationEntity({ id: '20892', method: 'Bank' })], description: 'VANDERHOOF AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -960,14 +903,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592510, + merchants: [new MerchantEntity({ id: '23592510' })], }, { id: '2404a9c1-898c-4a5d-b250-337f643e7d53', source_id: 'SBC', location_id: 93, - method: 'AX', - pt_location_id: 20893, + banks: [new BankLocationEntity({ id: '20893', method: 'Bank' })], description: 'VERNON AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -976,14 +918,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592528, + merchants: [new MerchantEntity({ id: '23592528' })], }, { id: '351192e3-f1e0-4fb0-a7ff-65c1c7d6a03d', source_id: 'SBC', location_id: 94, - method: 'AX', - pt_location_id: 20898, + banks: [new BankLocationEntity({ id: '20898', method: 'Bank' })], description: 'VICTORIA AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -992,14 +933,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23759473, + merchants: [new MerchantEntity({ id: '23759473' })], }, { id: '10e3a9c2-4530-49fc-9412-3725fa722243', source_id: 'SBC', location_id: 97, - method: 'AX', - pt_location_id: 20897, + banks: [new BankLocationEntity({ id: '20897', method: 'Bank' })], description: 'WILLIAMS LAKE AMEX POS', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -1008,14 +948,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23592536, + merchants: [new MerchantEntity({ id: '23592536' })], }, { id: '44fc16b3-a8b0-4e8e-a646-39d6b408ecd3', source_id: 'SBC', location_id: 52, - method: 'AX', - pt_location_id: 90523, + banks: [new BankLocationEntity({ id: '90523', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS AMEX', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -1024,14 +963,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 93683283, + merchants: [new MerchantEntity({ id: '93683283' })], }, { id: '5e0c190d-128b-43b4-a545-523ad7f76d29', source_id: 'SBC', location_id: 62, - method: 'AX', - pt_location_id: 90539, + banks: [new BankLocationEntity({ id: '90539', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS AMEX', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -1040,14 +978,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 93683143, + merchants: [new MerchantEntity({ id: '93683143' })], }, { id: 'bdd22234-0b70-495c-9e21-22360c70a469', source_id: 'SBC', location_id: 53, - method: 'AX', - pt_location_id: 90527, + banks: [new BankLocationEntity({ id: '90527', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS AMEX', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -1056,14 +993,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 93683267, + merchants: [new MerchantEntity({ id: '93683267' })], }, { id: '33e58c1e-a7c4-48e2-90cc-8fe4b1de06b1', source_id: 'SBC', location_id: 59, - method: 'AX', - pt_location_id: 90543, + banks: [new BankLocationEntity({ id: '90543', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS AMEX', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -1072,14 +1008,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 93683176, + merchants: [new MerchantEntity({ id: '93683176' })], }, { id: 'c81ff0dd-9a30-4491-b799-443de67ca404', source_id: 'SBC', location_id: 57, - method: 'AX', - pt_location_id: 90535, + banks: [new BankLocationEntity({ id: '90535', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS AMEX', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -1088,14 +1023,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 93683275, + merchants: [new MerchantEntity({ id: '93683275' })], }, { id: 'cfa18149-e9fe-4e10-bee0-00642c6ef325', source_id: 'SBC', location_id: 54, - method: 'AX', - pt_location_id: 90531, + banks: [new BankLocationEntity({ id: '90531', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS AMEX', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -1104,14 +1038,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 93683184, + merchants: [new MerchantEntity({ id: '93683184' })], }, { id: 'abcb0312-6f81-43ee-8bf5-1c0f64caac7d', source_id: 'SBC', location_id: 96, - method: 'AX', - pt_location_id: 90519, + banks: [new BankLocationEntity({ id: '90519', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS AMEX', program_code: 0, program_desc: 'SERVICE BC AMEX POS', @@ -1120,14 +1053,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 93683226, + merchants: [new MerchantEntity({ id: '93683226' })], }, { id: '9c1d3c4b-f100-49af-86ea-91ca11327738', source_id: 'LABOUR', location_id: 44015, - method: 'AX', - pt_location_id: 44015, + banks: [new BankLocationEntity({ id: '44015', method: 'Bank' })], description: 'EMPLOYMENT STDS BR VICTORIA-AMEX POS', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS BRANCH AMEX POS', @@ -1136,14 +1068,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 25276773, + merchants: [new MerchantEntity({ id: '25276773' })], }, { id: '17bc592e-a08a-4460-a61a-ad7d0e351aa3', source_id: 'LABOUR', location_id: 44022, - method: 'AX', - pt_location_id: 44022, + banks: [new BankLocationEntity({ id: '44022', method: 'Bank' })], description: 'TALENT AGENCY LICENCING INTERNET AMEX', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS BR INTERNET AMEX', @@ -1152,14 +1083,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 29266051, + merchants: [new MerchantEntity({ id: '29266051' })], }, { id: '4ee4bc8b-3798-4a2a-88c3-cf1b7d51f2be', source_id: 'LABOUR', location_id: 44601, - method: 'AX', - pt_location_id: 44601, + banks: [new BankLocationEntity({ id: '44601', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS ICEPAY AMEX', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS ICEPAY AMEX', @@ -1168,14 +1098,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 91226713, + merchants: [new MerchantEntity({ id: '91226713' })], }, { id: '9c1c45a2-0eeb-458e-a355-9cbfd3e16214', source_id: 'LABOUR', location_id: 44606, - method: 'AX', - pt_location_id: 44606, + banks: [new BankLocationEntity({ id: '44606', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS TRUST ICEPAY AMEX', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS ICEPAY AMEX', @@ -1184,14 +1113,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 91226721, + merchants: [new MerchantEntity({ id: '91226721' })], }, { id: '7a9cd8b4-e1f4-4087-b197-d7845dea7d9a', source_id: 'SBC', location_id: 61, - method: 'Bank', - pt_location_id: 20061, + banks: [new BankLocationEntity({ id: '20061', method: 'Bank' })], description: '100 MILE HOUSE', program_code: 0, program_desc: 'SERVICE BC', @@ -1200,14 +1128,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '1f032089-aa04-4c3f-a361-7ebe7270eeae', source_id: 'SBC', location_id: 1, - method: 'Bank', - pt_location_id: 20100, + banks: [new BankLocationEntity({ id: '20100', method: 'Bank' })], description: 'HAZELTON', program_code: 0, program_desc: 'SERVICE BC', @@ -1216,14 +1143,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'f8730291-e471-4d9b-b36a-7e09492d2135', source_id: 'SBC', location_id: 2, - method: 'Bank', - pt_location_id: 20002, + banks: [new BankLocationEntity({ id: '20002', method: 'Bank' })], description: 'ASHCROFT', program_code: 0, program_desc: 'SERVICE BC', @@ -1232,14 +1158,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '866e0a69-3925-459b-83bc-1993646e4a23', source_id: 'SBC', location_id: 3, - method: 'Bank', - pt_location_id: 20003, + banks: [new BankLocationEntity({ id: '20003', method: 'Bank' })], description: 'ATLIN', program_code: 0, program_desc: 'SERVICE BC', @@ -1248,14 +1173,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '1f8f2b24-bf9b-46e4-8f7f-67d63e37c776', source_id: 'SBC', location_id: 8, - method: 'Bank', - pt_location_id: 20008, + banks: [new BankLocationEntity({ id: '20008', method: 'Bank' })], description: 'BELLA COOLA', program_code: 0, program_desc: 'SERVICE BC', @@ -1264,14 +1188,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'ed758c83-4078-4253-9a12-b8eefa464e6a', source_id: 'SBC', location_id: 10, - method: 'Bank', - pt_location_id: 22613, + banks: [new BankLocationEntity({ id: '22613', method: 'Bank' })], description: 'BURNABY', program_code: 0, program_desc: 'SERVICE BC - GVA AGENCY REVENUE', @@ -1280,14 +1203,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '0e7c0f0d-745a-4d91-80f0-a4316b36ed76', source_id: 'SBC', location_id: 11, - method: 'Bank', - pt_location_id: 20011, + banks: [new BankLocationEntity({ id: '20011', method: 'Bank' })], description: 'BURNS LAKE', program_code: 0, program_desc: 'SERVICE BC', @@ -1296,14 +1218,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '542213c1-17b0-46e7-8616-060c7f604ed7', source_id: 'SBC', location_id: 12, - method: 'Bank', - pt_location_id: 20012, + banks: [new BankLocationEntity({ id: '20012', method: 'Bank' })], description: 'CAMPBELL RIVER', program_code: 0, program_desc: 'SERVICE BC', @@ -1312,14 +1233,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'c446b111-7124-4318-9881-cc48a0cfd03e', source_id: 'SBC', location_id: 19, - method: 'Bank', - pt_location_id: 20009, + banks: [new BankLocationEntity({ id: '20009', method: 'Bank' })], description: 'CHETWYND', program_code: 0, program_desc: 'SERVICE BC', @@ -1328,14 +1248,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'd1e920a3-6b4a-4870-8b1c-f6a3fcedb156', source_id: 'SBC', location_id: 14, - method: 'Bank', - pt_location_id: 20014, + banks: [new BankLocationEntity({ id: '20014', method: 'Bank' })], description: 'CHILLIWACK', program_code: 0, program_desc: 'SERVICE BC', @@ -1344,14 +1263,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'a82cce81-ec49-472a-b644-264b0c0f1d12', source_id: 'SBC', location_id: 15, - method: 'Bank', - pt_location_id: 20015, + banks: [new BankLocationEntity({ id: '20015', method: 'Bank' })], description: 'CLINTON', program_code: 0, program_desc: 'SERVICE BC', @@ -1360,14 +1278,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'ca8b7182-70ed-45f1-8a3d-2e7b80e7222e', source_id: 'SBC', location_id: 16, - method: 'Bank', - pt_location_id: 20016, + banks: [new BankLocationEntity({ id: '20016', method: 'Bank' })], description: 'COURTENAY', program_code: 0, program_desc: 'SERVICE BC', @@ -1376,14 +1293,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'f2f25d8f-9266-4ea9-bad8-7ab40db376f0', source_id: 'SBC', location_id: 17, - method: 'Bank', - pt_location_id: 20017, + banks: [new BankLocationEntity({ id: '20017', method: 'Bank' })], description: 'CRANBROOK', program_code: 0, program_desc: 'SERVICE BC', @@ -1392,14 +1308,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'cfade807-c255-42a3-bb0b-48a69c68baae', source_id: 'SBC', location_id: 18, - method: 'Bank', - pt_location_id: 20018, + banks: [new BankLocationEntity({ id: '20018', method: 'Bank' })], description: 'CRESTON', program_code: 0, program_desc: 'SERVICE BC', @@ -1408,14 +1323,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'd9e58dd7-98ca-4172-ba70-86c62b6ead6c', source_id: 'SBC', location_id: 23, - method: 'Bank', - pt_location_id: 20023, + banks: [new BankLocationEntity({ id: '20023', method: 'Bank' })], description: 'DAWSON CREEK', program_code: 0, program_desc: 'SERVICE BC', @@ -1424,14 +1338,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '11a1eeb1-1cc7-4a91-bead-a01d05617252', source_id: 'SBC', location_id: 13, - method: 'Bank', - pt_location_id: 20013, + banks: [new BankLocationEntity({ id: '20013', method: 'Bank' })], description: 'DEASE LAKE', program_code: 0, program_desc: 'SERVICE BC', @@ -1440,14 +1353,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'b7535615-9b12-4ac6-9772-14a3b68391a1', source_id: 'SBC', location_id: 25, - method: 'Bank', - pt_location_id: 20025, + banks: [new BankLocationEntity({ id: '20025', method: 'Bank' })], description: 'DUNCAN', program_code: 0, program_desc: 'SERVICE BC', @@ -1456,14 +1368,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '85da9e62-674e-4bec-8874-4eeaf1461628', source_id: 'SBC', location_id: 30, - method: 'Bank', - pt_location_id: 20030, + banks: [new BankLocationEntity({ id: '20030', method: 'Bank' })], description: 'FERNIE', program_code: 0, program_desc: 'SERVICE BC', @@ -1472,14 +1383,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '00881110-042e-4bd3-bf72-0ca445e5e18e', source_id: 'SBC', location_id: 32, - method: 'Bank', - pt_location_id: 20032, + banks: [new BankLocationEntity({ id: '20032', method: 'Bank' })], description: 'FORT NELSON', program_code: 0, program_desc: 'SERVICE BC', @@ -1488,14 +1398,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '2d002b79-8e48-4028-b5e9-7aab10a0a2c9', source_id: 'SBC', location_id: 33, - method: 'Bank', - pt_location_id: 20033, + banks: [new BankLocationEntity({ id: '20033', method: 'Bank' })], description: 'FORT ST. JAMES', program_code: 0, program_desc: 'SERVICE BC', @@ -1504,14 +1413,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '9fb4356d-6258-48a3-be19-786fbc3a13f4', source_id: 'SBC', location_id: 31, - method: 'Bank', - pt_location_id: 20031, + banks: [new BankLocationEntity({ id: '20031', method: 'Bank' })], description: 'FORT ST. JOHN', program_code: 0, program_desc: 'SERVICE BC', @@ -1520,14 +1428,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'cd354f69-9599-4d40-9f8d-59ef2bdd2496', source_id: 'SBC', location_id: 37, - method: 'Bank', - pt_location_id: 20037, + banks: [new BankLocationEntity({ id: '20037', method: 'Bank' })], description: 'GANGES', program_code: 0, program_desc: 'SERVICE BC', @@ -1536,14 +1443,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '5ef04c5f-8e3c-4a36-a355-6b5b825893ca', source_id: 'SBC', location_id: 35, - method: 'Bank', - pt_location_id: 20035, + banks: [new BankLocationEntity({ id: '20035', method: 'Bank' })], description: 'GOLDEN', program_code: 0, program_desc: 'SERVICE BC', @@ -1552,14 +1458,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '7e913300-c9f1-4314-a8f7-8c8754ec8f29', source_id: 'SBC', location_id: 36, - method: 'Bank', - pt_location_id: 20036, + banks: [new BankLocationEntity({ id: '20036', method: 'Bank' })], description: 'GRAND FORKS', program_code: 0, program_desc: 'SERVICE BC', @@ -1568,14 +1473,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'aae9e22c-8f87-49f7-844d-c803ac966ab2', source_id: 'SBC', location_id: 39, - method: 'Bank', - pt_location_id: 20039, + banks: [new BankLocationEntity({ id: '20039', method: 'Bank' })], description: 'HOUSTON', program_code: 0, program_desc: 'SERVICE BC', @@ -1584,14 +1488,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'f08be8a0-8c31-4b59-a855-9298ef8e013b', source_id: 'SBC', location_id: 38, - method: 'Bank', - pt_location_id: 20038, + banks: [new BankLocationEntity({ id: '20038', method: 'Bank' })], description: 'INVERMERE', program_code: 0, program_desc: 'SERVICE BC', @@ -1600,14 +1503,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '81f6a8c3-8513-48a2-a3aa-905c1cbf7a4f', source_id: 'SBC', location_id: 40, - method: 'Bank', - pt_location_id: 20040, + banks: [new BankLocationEntity({ id: '20040', method: 'Bank' })], description: 'KAMLOOPS', program_code: 0, program_desc: 'SERVICE BC', @@ -1616,14 +1518,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'd87af0de-fa9d-447a-ad4a-3694e09d54bd', source_id: 'SBC', location_id: 41, - method: 'Bank', - pt_location_id: 20041, + banks: [new BankLocationEntity({ id: '20041', method: 'Bank' })], description: 'KASLO', program_code: 0, program_desc: 'SERVICE BC', @@ -1632,14 +1533,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '9a35756b-5b51-4606-94cd-60cb22091ccf', source_id: 'SBC', location_id: 42, - method: 'Bank', - pt_location_id: 20042, + banks: [new BankLocationEntity({ id: '20042', method: 'Bank' })], description: 'KELOWNA', program_code: 0, program_desc: 'SERVICE BC', @@ -1648,14 +1548,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '27f9c020-063e-47c5-9f85-13ce7fe15672', source_id: 'SBC', location_id: 43, - method: 'Bank', - pt_location_id: 20043, + banks: [new BankLocationEntity({ id: '20043', method: 'Bank' })], description: 'KITIMAT', program_code: 0, program_desc: 'SERVICE BC', @@ -1664,14 +1563,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'b2f38042-c413-428b-b465-6bac2d4f3cc7', source_id: 'SBC', location_id: 45, - method: 'Bank', - pt_location_id: 20045, + banks: [new BankLocationEntity({ id: '20045', method: 'Bank' })], description: 'LILLOOET', program_code: 0, program_desc: 'SERVICE BC', @@ -1680,14 +1578,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'b7f9d55d-6a5e-4dc2-8a1f-245de3e5429a', source_id: 'SBC', location_id: 47, - method: 'Bank', - pt_location_id: 20047, + banks: [new BankLocationEntity({ id: '20047', method: 'Bank' })], description: 'MACKENZIE', program_code: 0, program_desc: 'SERVICE BC', @@ -1696,14 +1593,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '8f2c3e46-fba9-4644-8c98-0fc79104e1c1', source_id: 'SBC', location_id: 46, - method: 'Bank', - pt_location_id: 20046, + banks: [new BankLocationEntity({ id: '20046', method: 'Bank' })], description: 'MAPLE RIDGE', program_code: 0, program_desc: 'SERVICE BC', @@ -1712,14 +1608,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'f614f8d9-c23f-46ea-8280-3198ac9f77e7', source_id: 'SBC', location_id: 48, - method: 'Bank', - pt_location_id: 20048, + banks: [new BankLocationEntity({ id: '20048', method: 'Bank' })], description: 'MASSET', program_code: 0, program_desc: 'SERVICE BC', @@ -1728,14 +1623,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'bb9253ea-1e32-44a1-ab91-1c26618e1c08', source_id: 'SBC', location_id: 50, - method: 'Bank', - pt_location_id: 20050, + banks: [new BankLocationEntity({ id: '20050', method: 'Bank' })], description: 'MERRITT', program_code: 0, program_desc: 'SERVICE BC', @@ -1744,14 +1638,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'd77d18c0-9877-4e61-b2e8-b5800b17d755', source_id: 'SBC', location_id: 51, - method: 'Bank', - pt_location_id: 20051, + banks: [new BankLocationEntity({ id: '20051', method: 'Bank' })], description: 'NAKUSP', program_code: 0, program_desc: 'SERVICE BC', @@ -1760,14 +1653,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'a505ff3c-e917-4ffa-9a84-3c73bcbb35f6', source_id: 'SBC', location_id: 55, - method: 'Bank', - pt_location_id: 20055, + banks: [new BankLocationEntity({ id: '20055', method: 'Bank' })], description: 'NANAIMO', program_code: 0, program_desc: 'SERVICE BC', @@ -1776,14 +1668,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '8539e463-ba17-45f0-850d-80ce057dcc73', source_id: 'SBC', location_id: 56, - method: 'Bank', - pt_location_id: 20056, + banks: [new BankLocationEntity({ id: '20056', method: 'Bank' })], description: 'NELSON', program_code: 0, program_desc: 'SERVICE BC', @@ -1792,14 +1683,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '4926e099-5cc3-467d-bd77-36e4240a6635', source_id: 'SBC', location_id: 60, - method: 'Bank', - pt_location_id: 20060, + banks: [new BankLocationEntity({ id: '20060', method: 'Bank' })], description: 'OLIVER', program_code: 0, program_desc: 'SERVICE BC', @@ -1808,14 +1698,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'b677895e-e5f9-411d-b8e5-beda41dfd844', source_id: 'SBC', location_id: 65, - method: 'Bank', - pt_location_id: 20065, + banks: [new BankLocationEntity({ id: '20065', method: 'Bank' })], description: 'PENTICTON', program_code: 0, program_desc: 'SERVICE BC', @@ -1824,14 +1713,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'b0eb0ce3-573b-4ab8-bf2e-3cd8a5c44b61', source_id: 'SBC', location_id: 66, - method: 'Bank', - pt_location_id: 20010, + banks: [new BankLocationEntity({ id: '20010', method: 'Bank' })], description: 'PORT ALBERNI', program_code: 0, program_desc: 'SERVICE BC', @@ -1840,14 +1728,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '1f6bf42d-05b3-45cd-b3e0-417714a227bd', source_id: 'SBC', location_id: 64, - method: 'Bank', - pt_location_id: 20064, + banks: [new BankLocationEntity({ id: '20064', method: 'Bank' })], description: 'PORT HARDY', program_code: 0, program_desc: 'SERVICE BC', @@ -1856,14 +1743,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '6a1236c1-aa13-4d51-a4ee-b50c5267a347', source_id: 'SBC', location_id: 67, - method: 'Bank', - pt_location_id: 20067, + banks: [new BankLocationEntity({ id: '20067', method: 'Bank' })], description: 'POWELL RIVER', program_code: 0, program_desc: 'SERVICE BC', @@ -1872,14 +1758,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '67c96c21-a14b-4e13-92e5-ca38f3307d10', source_id: 'SBC', location_id: 68, - method: 'Bank', - pt_location_id: 20068, + banks: [new BankLocationEntity({ id: '20068', method: 'Bank' })], description: 'PRINCE GEORGE', program_code: 0, program_desc: 'SERVICE BC', @@ -1888,14 +1773,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '2b51a65f-63cd-4178-bca6-46dff33027fb', source_id: 'SBC', location_id: 69, - method: 'Bank', - pt_location_id: 20069, + banks: [new BankLocationEntity({ id: '20069', method: 'Bank' })], description: 'PRINCE RUPERT', program_code: 0, program_desc: 'SERVICE BC', @@ -1904,14 +1788,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'eda780a0-929e-42ee-9931-cef7ad0a12ec', source_id: 'SBC', location_id: 70, - method: 'Bank', - pt_location_id: 20070, + banks: [new BankLocationEntity({ id: '20070', method: 'Bank' })], description: 'PRINCETON', program_code: 0, program_desc: 'SERVICE BC', @@ -1920,14 +1803,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'f1d8379d-effd-4126-adcd-27144d1082f2', source_id: 'SBC', location_id: 73, - method: 'Bank', - pt_location_id: 20073, + banks: [new BankLocationEntity({ id: '20073', method: 'Bank' })], description: 'QUEEN CHARLOTTE', program_code: 0, program_desc: 'SERVICE BC', @@ -1936,14 +1818,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '3c2a41d9-3b0b-4054-8649-a298acc8878c', source_id: 'SBC', location_id: 75, - method: 'Bank', - pt_location_id: 20075, + banks: [new BankLocationEntity({ id: '20075', method: 'Bank' })], description: 'QUESNEL', program_code: 0, program_desc: 'SERVICE BC', @@ -1952,14 +1833,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '23516d9c-7dce-451b-a275-ac528880ecd4', source_id: 'SBC', location_id: 80, - method: 'Bank', - pt_location_id: 20080, + banks: [new BankLocationEntity({ id: '20080', method: 'Bank' })], description: 'REVELSTOKE', program_code: 0, program_desc: 'SERVICE BC', @@ -1968,14 +1848,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'eba2f927-33a7-4a79-a27c-6384a41dc9c7', source_id: 'SBC', location_id: 85, - method: 'Bank', - pt_location_id: 20085, + banks: [new BankLocationEntity({ id: '20085', method: 'Bank' })], description: 'SALMON ARM', program_code: 0, program_desc: 'SERVICE BC', @@ -1984,14 +1863,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '61b0fbe4-0bb7-4d98-838c-8e12636eb3f8', source_id: 'SBC', location_id: 82, - method: 'Bank', - pt_location_id: 20101, + banks: [new BankLocationEntity({ id: '20101', method: 'Bank' })], description: 'SECHELT', program_code: 0, program_desc: 'SERVICE BC', @@ -2000,14 +1878,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '2f6a0845-d035-49d1-8cf6-bd8fe84b8260', source_id: 'SBC', location_id: 86, - method: 'Bank', - pt_location_id: 20086, + banks: [new BankLocationEntity({ id: '20086', method: 'Bank' })], description: 'SMITHERS', program_code: 0, program_desc: 'SERVICE BC', @@ -2016,14 +1893,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'dcd5a422-d93e-4d93-99bb-7d14d43a7fb1', source_id: 'SBC', location_id: 83, - method: 'Bank', - pt_location_id: 20083, + banks: [new BankLocationEntity({ id: '20083', method: 'Bank' })], description: 'SPARWOOD', program_code: 0, program_desc: 'SERVICE BC', @@ -2032,14 +1908,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'c168afa9-d95f-4876-8799-26e6f362e314', source_id: 'SBC', location_id: 84, - method: 'Bank', - pt_location_id: 20084, + banks: [new BankLocationEntity({ id: '20084', method: 'Bank' })], description: 'SQUAMISH', program_code: 0, program_desc: 'SERVICE BC', @@ -2048,14 +1923,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '7c1b48c1-9149-4cbe-a87e-5e5786dad030', source_id: 'SBC', location_id: 87, - method: 'Bank', - pt_location_id: 20087, + banks: [new BankLocationEntity({ id: '20087', method: 'Bank' })], description: 'STEWART', program_code: 0, program_desc: 'SERVICE BC', @@ -2064,14 +1938,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'd199dafa-06b5-44de-a01c-fe6bc0ac9a7c', source_id: 'SBC', location_id: 88, - method: 'Bank', - pt_location_id: 20088, + banks: [new BankLocationEntity({ id: '20088', method: 'Bank' })], description: 'TERRACE', program_code: 0, program_desc: 'SERVICE BC', @@ -2080,14 +1953,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '922627b9-ad0d-4aee-b785-a718ca9abdef', source_id: 'SBC', location_id: 81, - method: 'Bank', - pt_location_id: 20081, + banks: [new BankLocationEntity({ id: '20081', method: 'Bank' })], description: 'TRAIL', program_code: 0, program_desc: 'SERVICE BC', @@ -2096,14 +1968,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '1840efb7-a69e-410a-a5d5-beac8de1a40e', source_id: 'SBC', location_id: 89, - method: 'Bank', - pt_location_id: 20089, + banks: [new BankLocationEntity({ id: '20089', method: 'Bank' })], description: 'UCLUELET', program_code: 0, program_desc: 'SERVICE BC', @@ -2112,14 +1983,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'e8ba5408-7748-4f03-8aeb-47cd7452a034', source_id: 'SBC', location_id: 91, - method: 'Bank', - pt_location_id: 20091, + banks: [new BankLocationEntity({ id: '20091', method: 'Bank' })], description: 'VALEMOUNT', program_code: 0, program_desc: 'SERVICE BC', @@ -2128,14 +1998,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '567291bd-0bef-4c5e-bc7d-9160ffe42468', source_id: 'SBC', location_id: 92, - method: 'Bank', - pt_location_id: 20092, + banks: [new BankLocationEntity({ id: '20092', method: 'Bank' })], description: 'VANDERHOOF', program_code: 0, program_desc: 'SERVICE BC', @@ -2144,14 +2013,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '7fb587bf-eee8-4760-9403-5ade64f1ea58', source_id: 'SBC', location_id: 93, - method: 'Bank', - pt_location_id: 20093, + banks: [new BankLocationEntity({ id: '20093', method: 'Bank' })], description: 'VERNON', program_code: 0, program_desc: 'SERVICE BC', @@ -2160,14 +2028,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '83208abb-7410-4b55-9541-e82026df2abe', source_id: 'SBC', location_id: 94, - method: 'Bank', - pt_location_id: 20094, + banks: [new BankLocationEntity({ id: '20094', method: 'Bank' })], description: 'VICTORIA', program_code: 0, program_desc: 'SERVICE BC', @@ -2176,14 +2043,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '9ea05fc0-c381-4a68-be0c-c1db5dc88760', source_id: 'SBC', location_id: 97, - method: 'Bank', - pt_location_id: 20097, + banks: [new BankLocationEntity({ id: '20097', method: 'Bank' })], description: 'WILLIAMS LAKE', program_code: 0, program_desc: 'SERVICE BC', @@ -2192,14 +2058,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '9d762741-a053-42be-8940-34d0b3729cd1', source_id: 'SBC', location_id: 52, - method: 'Bank', - pt_location_id: 90510, + banks: [new BankLocationEntity({ id: '90510', method: 'Bank' })], description: 'MOBILE OUTREACH CHILLIWACK', program_code: 0, program_desc: 'SERVICE BC', @@ -2208,14 +2073,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '4d0e01d1-a2cd-4af1-bc13-99f408ddd65d', source_id: 'SBC', location_id: 62, - method: 'Bank', - pt_location_id: 90514, + banks: [new BankLocationEntity({ id: '90514', method: 'Bank' })], description: 'MOBILE OUTREACH SURREY', program_code: 0, program_desc: 'SERVICE BC', @@ -2224,14 +2088,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '237986c7-cb0c-4fda-961d-fecb674a4d6f', source_id: 'SBC', location_id: 53, - method: 'Bank', - pt_location_id: 90511, + banks: [new BankLocationEntity({ id: '90511', method: 'Bank' })], description: 'MOBILE OUTREACH CRANBROOK', program_code: 0, program_desc: 'SERVICE BC', @@ -2240,14 +2103,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '5272bbde-433e-4349-b4b1-9ded8d057391', source_id: 'SBC', location_id: 59, - method: 'Bank', - pt_location_id: 90515, + banks: [new BankLocationEntity({ id: '90515', method: 'Bank' })], description: 'MOBILE OUTREACH VANDERHOOF', program_code: 0, program_desc: 'SERVICE BC', @@ -2256,14 +2118,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '7dfd3da4-bb2d-48ca-a103-88142e106dc4', source_id: 'SBC', location_id: 57, - method: 'Bank', - pt_location_id: 90513, + banks: [new BankLocationEntity({ id: '90513', method: 'Bank' })], description: 'MOBILE OUTREACH KAMLOOPS', program_code: 0, program_desc: 'SERVICE BC', @@ -2272,14 +2133,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '8106d0d3-270d-4f64-8b9c-c033fad4e1ef', source_id: 'SBC', location_id: 54, - method: 'Bank', - pt_location_id: 90512, + banks: [new BankLocationEntity({ id: '90512', method: 'Bank' })], description: 'MOBILE OUTREACH DUNCAN', program_code: 0, program_desc: 'SERVICE BC', @@ -2288,14 +2148,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'ff2d0ee9-66da-4a35-b126-ecc75b39513c', source_id: 'SBC', location_id: 96, - method: 'Bank', - pt_location_id: 90509, + banks: [new BankLocationEntity({ id: '90509', method: 'Bank' })], description: 'MOBILE OUTREACH WEST KELOWNA', program_code: 0, program_desc: 'SERVICE BC', @@ -2304,14 +2163,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'ec4cda72-f2a9-40ac-8d42-c8aa5674c7a5', source_id: 'LABOUR', location_id: 62719, - method: 'Bank', - pt_location_id: 62719, + banks: [new BankLocationEntity({ id: '62719', method: 'Bank' })], description: 'REVENUE-VICTORIA', program_code: 0, program_desc: 'LABOUR GENERAL', @@ -2320,14 +2178,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: 'a0f6fc0f-e5de-4bea-8b95-e76bb45e8ffb', source_id: 'LABOUR', location_id: 44005, - method: 'Bank', - pt_location_id: 44005, + banks: [new BankLocationEntity({ id: '44005', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS - VICTORIA', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS', @@ -2336,14 +2193,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 999999999, + merchants: [new MerchantEntity({ id: '999999999' })], }, { id: '0346cb85-576d-4237-9715-1afe687b7a90', source_id: 'SBC', location_id: 61, - method: 'P', - pt_location_id: 20261, + banks: [new BankLocationEntity({ id: '20261', method: 'Bank' })], description: '100 MILE HOUSE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2352,14 +2208,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054353, + merchants: [new MerchantEntity({ id: '22054353' })], }, { id: '1a94ece5-fad0-422f-b79b-30faf593a3df', source_id: 'SBC', location_id: 1, - method: 'P', - pt_location_id: 20300, + banks: [new BankLocationEntity({ id: '20300', method: 'Bank' })], description: 'HAZELTON DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2368,14 +2223,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043448, + merchants: [new MerchantEntity({ id: '22043448' })], }, { id: '81140b2c-8ec8-4e38-b711-e14ebdd330e2', source_id: 'SBC', location_id: 2, - method: 'P', - pt_location_id: 20202, + banks: [new BankLocationEntity({ id: '20202', method: 'Bank' })], description: 'ASHCROFT DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2384,14 +2238,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054387, + merchants: [new MerchantEntity({ id: '22054387' })], }, { id: '97572915-ebea-4d22-b4ac-733678630f86', source_id: 'SBC', location_id: 3, - method: 'P', - pt_location_id: 20203, + banks: [new BankLocationEntity({ id: '20203', method: 'Bank' })], description: 'ATLIN-DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2400,14 +2253,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054486, + merchants: [new MerchantEntity({ id: '22054486' })], }, { id: '1c872a34-eb28-4ba9-a272-23859eda0247', source_id: 'SBC', location_id: 8, - method: 'P', - pt_location_id: 20208, + banks: [new BankLocationEntity({ id: '20208', method: 'Bank' })], description: 'BELLA COOLA DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2416,14 +2268,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054577, + merchants: [new MerchantEntity({ id: '22054577' })], }, { id: '09a59218-bd24-4f55-a6b8-27afee039b7f', source_id: 'SBC', location_id: 10, - method: 'P', - pt_location_id: 20304, + banks: [new BankLocationEntity({ id: '20304', method: 'Bank' })], description: 'BURNABY DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2432,14 +2283,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23684779, + merchants: [new MerchantEntity({ id: '23684779' })], }, { id: '07a3aaad-1a42-479a-b71e-8907dbbb24b4', source_id: 'SBC', location_id: 11, - method: 'P', - pt_location_id: 20211, + banks: [new BankLocationEntity({ id: '20211', method: 'Bank' })], description: 'BURNS LAKE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2448,14 +2298,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042705, + merchants: [new MerchantEntity({ id: '22042705' })], }, { id: 'dfdefda8-6f47-48f5-81bb-1961edffd9e9', source_id: 'SBC', location_id: 12, - method: 'P', - pt_location_id: 20212, + banks: [new BankLocationEntity({ id: '20212', method: 'Bank' })], description: 'CAMPBELL RIVER-DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2464,14 +2313,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042747, + merchants: [new MerchantEntity({ id: '22042747' })], }, { id: '373026cf-0e8e-40a7-95e0-5d82fc7763b8', source_id: 'SBC', location_id: 19, - method: 'P', - pt_location_id: 20219, + banks: [new BankLocationEntity({ id: '20219', method: 'Bank' })], description: 'CHETWYND DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2480,14 +2328,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042754, + merchants: [new MerchantEntity({ id: '22042754' })], }, { id: '2d5f8763-5227-4cd1-85b1-1cb2fcec4c7a', source_id: 'SBC', location_id: 14, - method: 'P', - pt_location_id: 20214, + banks: [new BankLocationEntity({ id: '20214', method: 'Bank' })], description: 'CHILLIWACK DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2496,14 +2343,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042796, + merchants: [new MerchantEntity({ id: '22042796' })], }, { id: 'f55462fe-ecfc-4978-bdd2-03890b0cd48d', source_id: 'SBC', location_id: 15, - method: 'P', - pt_location_id: 20215, + banks: [new BankLocationEntity({ id: '20215', method: 'Bank' })], description: 'CLINTON DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2512,14 +2358,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042820, + merchants: [new MerchantEntity({ id: '22042820' })], }, { id: '27a1f0d3-6413-44c6-b993-665690ae0a26', source_id: 'SBC', location_id: 16, - method: 'P', - pt_location_id: 20216, + banks: [new BankLocationEntity({ id: '20216', method: 'Bank' })], description: 'COURTENAY DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2528,14 +2373,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042838, + merchants: [new MerchantEntity({ id: '22042838' })], }, { id: 'e210d15a-321e-4039-9ed6-8396bb3a3cea', source_id: 'SBC', location_id: 17, - method: 'P', - pt_location_id: 20217, + banks: [new BankLocationEntity({ id: '20217', method: 'Bank' })], description: 'CRANBROOK DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2544,14 +2388,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042887, + merchants: [new MerchantEntity({ id: '22042887' })], }, { id: '8285cccd-6264-47c5-bdc1-566fb2a5ae8d', source_id: 'SBC', location_id: 18, - method: 'P', - pt_location_id: 20218, + banks: [new BankLocationEntity({ id: '20218', method: 'Bank' })], description: 'CRESTON DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2560,14 +2403,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043067, + merchants: [new MerchantEntity({ id: '22043067' })], }, { id: '219fc28c-b341-4eba-a2f2-7e2e2a57658c', source_id: 'SBC', location_id: 23, - method: 'P', - pt_location_id: 20223, + banks: [new BankLocationEntity({ id: '20223', method: 'Bank' })], description: 'DAWSON CREEK DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2576,14 +2418,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043083, + merchants: [new MerchantEntity({ id: '22043083' })], }, { id: '60f5d0db-e830-4645-9e46-b681f244ea4c', source_id: 'SBC', location_id: 13, - method: 'P', - pt_location_id: 20213, + banks: [new BankLocationEntity({ id: '20213', method: 'Bank' })], description: 'DEASE LAKE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2592,14 +2433,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043141, + merchants: [new MerchantEntity({ id: '22043141' })], }, { id: 'de01ba80-d9e7-429f-9edf-624b22ff4d1e', source_id: 'SBC', location_id: 25, - method: 'P', - pt_location_id: 20225, + banks: [new BankLocationEntity({ id: '20225', method: 'Bank' })], description: 'DUNCAN DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2608,14 +2448,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043182, + merchants: [new MerchantEntity({ id: '22043182' })], }, { id: '3ff68b8c-390a-4642-837d-bf4fa3e64496', source_id: 'SBC', location_id: 30, - method: 'P', - pt_location_id: 20230, + banks: [new BankLocationEntity({ id: '20230', method: 'Bank' })], description: 'FERNIE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2624,14 +2463,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043208, + merchants: [new MerchantEntity({ id: '22043208' })], }, { id: '254ec724-53c7-459e-a2e2-8153d30eb4ae', source_id: 'SBC', location_id: 32, - method: 'P', - pt_location_id: 20232, + banks: [new BankLocationEntity({ id: '20232', method: 'Bank' })], description: 'FORT NELSON DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2640,14 +2478,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043281, + merchants: [new MerchantEntity({ id: '22043281' })], }, { id: '5dfb2bf3-1867-4985-9b34-1e3bffc66cda', source_id: 'SBC', location_id: 33, - method: 'P', - pt_location_id: 20233, + banks: [new BankLocationEntity({ id: '20233', method: 'Bank' })], description: 'FORT ST. JAMES DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2656,14 +2493,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043315, + merchants: [new MerchantEntity({ id: '22043315' })], }, { id: 'a1f6ea8e-546a-4b66-b99b-43f3e4675397', source_id: 'SBC', location_id: 31, - method: 'P', - pt_location_id: 20231, + banks: [new BankLocationEntity({ id: '20231', method: 'Bank' })], description: 'FORT ST. JOHN DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2672,14 +2508,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043372, + merchants: [new MerchantEntity({ id: '22043372' })], }, { id: '629a7435-9c02-4de7-9148-1af82bf9b5c4', source_id: 'SBC', location_id: 37, - method: 'P', - pt_location_id: 20237, + banks: [new BankLocationEntity({ id: '20237', method: 'Bank' })], description: 'GANGES DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2688,14 +2523,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043380, + merchants: [new MerchantEntity({ id: '22043380' })], }, { id: 'f2dfd6cc-7d06-434b-b9e6-47627ed98916', source_id: 'SBC', location_id: 35, - method: 'P', - pt_location_id: 20235, + banks: [new BankLocationEntity({ id: '20235', method: 'Bank' })], description: 'GOLDEN DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2704,14 +2538,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043406, + merchants: [new MerchantEntity({ id: '22043406' })], }, { id: '80a0f048-00ba-4a8d-9696-ddb73d036598', source_id: 'SBC', location_id: 36, - method: 'P', - pt_location_id: 20236, + banks: [new BankLocationEntity({ id: '20236', method: 'Bank' })], description: 'GRAND FORKS DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2720,14 +2553,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043430, + merchants: [new MerchantEntity({ id: '22043430' })], }, { id: '0ecdfa0f-662d-4f71-a145-8f4a2b8e589d', source_id: 'SBC', location_id: 39, - method: 'P', - pt_location_id: 20239, + banks: [new BankLocationEntity({ id: '20239', method: 'Bank' })], description: 'HOUSTON DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2736,14 +2568,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043463, + merchants: [new MerchantEntity({ id: '22043463' })], }, { id: '99462db6-9dc3-45ab-b5b2-8dfc9ded83a0', source_id: 'SBC', location_id: 38, - method: 'P', - pt_location_id: 20238, + banks: [new BankLocationEntity({ id: '20238', method: 'Bank' })], description: 'INVERMERE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2752,14 +2583,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043505, + merchants: [new MerchantEntity({ id: '22043505' })], }, { id: '8c9e78fc-d408-4280-8287-1b4ed89e7ada', source_id: 'SBC', location_id: 40, - method: 'P', - pt_location_id: 20240, + banks: [new BankLocationEntity({ id: '20240', method: 'Bank' })], description: 'KAMLOOPS DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2768,14 +2598,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043539, + merchants: [new MerchantEntity({ id: '22043539' })], }, { id: 'b41c01e7-f20b-4a4d-8927-788c538bd3e6', source_id: 'SBC', location_id: 41, - method: 'P', - pt_location_id: 20241, + banks: [new BankLocationEntity({ id: '20241', method: 'Bank' })], description: 'KASLO DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2784,14 +2613,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043547, + merchants: [new MerchantEntity({ id: '22043547' })], }, { id: '8dfb94d4-7bb3-4a90-9c1b-c3b1a8f48244', source_id: 'SBC', location_id: 42, - method: 'P', - pt_location_id: 20242, + banks: [new BankLocationEntity({ id: '20242', method: 'Bank' })], description: 'KELOWNA DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2800,14 +2628,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22455675, + merchants: [new MerchantEntity({ id: '22455675' })], }, { id: '8bbb93eb-92e3-43db-aa2d-a9804ec99a67', source_id: 'SBC', location_id: 43, - method: 'P', - pt_location_id: 20243, + banks: [new BankLocationEntity({ id: '20243', method: 'Bank' })], description: 'KITIMAT DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2816,14 +2643,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043562, + merchants: [new MerchantEntity({ id: '22043562' })], }, { id: '5c44eefb-4e10-4774-9075-f44435f35267', source_id: 'SBC', location_id: 45, - method: 'P', - pt_location_id: 20245, + banks: [new BankLocationEntity({ id: '20245', method: 'Bank' })], description: 'LILLOOET DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2832,14 +2658,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043596, + merchants: [new MerchantEntity({ id: '22043596' })], }, { id: '4b721820-35e2-4ab8-bca7-42e890de3a1d', source_id: 'SBC', location_id: 47, - method: 'P', - pt_location_id: 20247, + banks: [new BankLocationEntity({ id: '20247', method: 'Bank' })], description: 'MACKENZIE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2848,14 +2673,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043604, + merchants: [new MerchantEntity({ id: '22043604' })], }, { id: '46714ce7-93e5-415b-a4b9-17a2580d26ee', source_id: 'SBC', location_id: 46, - method: 'P', - pt_location_id: 20246, + banks: [new BankLocationEntity({ id: '20246', method: 'Bank' })], description: 'MAPLE RIDGE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2864,14 +2688,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043620, + merchants: [new MerchantEntity({ id: '22043620' })], }, { id: '6a1f5263-f032-4890-80c8-9406e2a3c753', source_id: 'SBC', location_id: 48, - method: 'P', - pt_location_id: 20248, + banks: [new BankLocationEntity({ id: '20248', method: 'Bank' })], description: 'MASSET DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2880,14 +2703,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 20803999, + merchants: [new MerchantEntity({ id: '20803999' })], }, { id: '107140fa-1ea3-4098-a4a3-f3734c8428af', source_id: 'SBC', location_id: 50, - method: 'P', - pt_location_id: 20250, + banks: [new BankLocationEntity({ id: '20250', method: 'Bank' })], description: 'MERRITT DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2896,14 +2718,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043646, + merchants: [new MerchantEntity({ id: '22043646' })], }, { id: '75340602-a111-41fb-b301-873b37e703f3', source_id: 'SBC', location_id: 51, - method: 'P', - pt_location_id: 20251, + banks: [new BankLocationEntity({ id: '20251', method: 'Bank' })], description: 'NAKUSP DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2912,14 +2733,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043653, + merchants: [new MerchantEntity({ id: '22043653' })], }, { id: '262806ea-bcf0-4502-aff7-8de28233add1', source_id: 'SBC', location_id: 55, - method: 'P', - pt_location_id: 20255, + banks: [new BankLocationEntity({ id: '20255', method: 'Bank' })], description: 'NANAIMO DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2928,14 +2748,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043661, + merchants: [new MerchantEntity({ id: '22043661' })], }, { id: '8ec8d6ff-75e5-4d5e-89b2-ec2fb814ad41', source_id: 'SBC', location_id: 56, - method: 'P', - pt_location_id: 20256, + banks: [new BankLocationEntity({ id: '20256', method: 'Bank' })], description: 'NELSON DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2944,14 +2763,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043679, + merchants: [new MerchantEntity({ id: '22043679' })], }, { id: 'f9c14e76-c28d-44e0-b97c-fe69543e36e1', source_id: 'SBC', location_id: 60, - method: 'P', - pt_location_id: 20260, + banks: [new BankLocationEntity({ id: '20260', method: 'Bank' })], description: 'OLIVER DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2960,14 +2778,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043703, + merchants: [new MerchantEntity({ id: '22043703' })], }, { id: 'b332795d-afc0-4dff-8511-a5d9e4bda161', source_id: 'SBC', location_id: 65, - method: 'P', - pt_location_id: 20265, + banks: [new BankLocationEntity({ id: '20265', method: 'Bank' })], description: 'PENTICTON DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2976,14 +2793,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043745, + merchants: [new MerchantEntity({ id: '22043745' })], }, { id: '73a7a6da-7b35-4e8c-974b-6b00f5b440e9', source_id: 'SBC', location_id: 66, - method: 'P', - pt_location_id: 20266, + banks: [new BankLocationEntity({ id: '20266', method: 'Bank' })], description: 'PORT ALBERNI DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -2992,14 +2808,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043810, + merchants: [new MerchantEntity({ id: '22043810' })], }, { id: '62f65935-1460-4a4c-b404-56c263f592a5', source_id: 'SBC', location_id: 64, - method: 'P', - pt_location_id: 20264, + banks: [new BankLocationEntity({ id: '20264', method: 'Bank' })], description: 'PORT HARDY DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3008,14 +2823,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043828, + merchants: [new MerchantEntity({ id: '22043828' })], }, { id: 'fcd62d3a-b411-4a18-8ceb-68ce9a19d548', source_id: 'SBC', location_id: 67, - method: 'P', - pt_location_id: 20267, + banks: [new BankLocationEntity({ id: '20267', method: 'Bank' })], description: 'POWELL RIVER DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3024,14 +2838,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043836, + merchants: [new MerchantEntity({ id: '22043836' })], }, { id: 'f7c8fef4-69f9-4028-8faa-9e13933ba78c', source_id: 'SBC', location_id: 68, - method: 'P', - pt_location_id: 20268, + banks: [new BankLocationEntity({ id: '20268', method: 'Bank' })], description: 'PRINCE GEORGE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3040,14 +2853,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043893, + merchants: [new MerchantEntity({ id: '22043893' })], }, { id: '640e24f6-0dcc-4a2f-a163-6f27d280906f', source_id: 'SBC', location_id: 69, - method: 'P', - pt_location_id: 20269, + banks: [new BankLocationEntity({ id: '20269', method: 'Bank' })], description: 'PRINCE RUPERT DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3056,14 +2868,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043919, + merchants: [new MerchantEntity({ id: '22043919' })], }, { id: 'fbb07d90-7a38-4570-b955-f48236aa4fca', source_id: 'SBC', location_id: 70, - method: 'P', - pt_location_id: 20270, + banks: [new BankLocationEntity({ id: '20270', method: 'Bank' })], description: 'PRINCETON DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3072,14 +2883,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043984, + merchants: [new MerchantEntity({ id: '22043984' })], }, { id: '17b68976-bf22-47b7-bc98-dfced6e5cf34', source_id: 'SBC', location_id: 73, - method: 'P', - pt_location_id: 20273, + banks: [new BankLocationEntity({ id: '20273', method: 'Bank' })], description: 'QUEEN CHARLOTTE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3088,14 +2898,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044008, + merchants: [new MerchantEntity({ id: '22044008' })], }, { id: '3723c1ee-62a4-4375-a050-7697136a8e81', source_id: 'SBC', location_id: 75, - method: 'P', - pt_location_id: 20275, + banks: [new BankLocationEntity({ id: '20275', method: 'Bank' })], description: 'QUESNEL DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3104,14 +2913,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044164, + merchants: [new MerchantEntity({ id: '22044164' })], }, { id: '7a0b161a-21f1-441a-9774-a795de1b8941', source_id: 'SBC', location_id: 80, - method: 'P', - pt_location_id: 20280, + banks: [new BankLocationEntity({ id: '20280', method: 'Bank' })], description: 'REVELSTOKE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3120,14 +2928,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044230, + merchants: [new MerchantEntity({ id: '22044230' })], }, { id: 'f7345ce2-d6f4-4a5b-ac8c-fa5d3f7c370d', source_id: 'SBC', location_id: 85, - method: 'P', - pt_location_id: 20285, + banks: [new BankLocationEntity({ id: '20285', method: 'Bank' })], description: 'SALMON ARM DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3136,14 +2943,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044255, + merchants: [new MerchantEntity({ id: '22044255' })], }, { id: 'e51a6e75-633e-4899-b63e-974a4d307ebf', source_id: 'SBC', location_id: 82, - method: 'P', - pt_location_id: 20282, + banks: [new BankLocationEntity({ id: '20282', method: 'Bank' })], description: 'SECHELT DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3152,14 +2958,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044297, + merchants: [new MerchantEntity({ id: '22044297' })], }, { id: '2c4daa6d-8bf9-4878-8a83-e3afadf458eb', source_id: 'SBC', location_id: 86, - method: 'P', - pt_location_id: 20286, + banks: [new BankLocationEntity({ id: '20286', method: 'Bank' })], description: 'SMITHERS DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3168,14 +2973,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044305, + merchants: [new MerchantEntity({ id: '22044305' })], }, { id: 'a94e2394-bc6b-46ac-85ab-db00b91f6e58', source_id: 'SBC', location_id: 83, - method: 'P', - pt_location_id: 20283, + banks: [new BankLocationEntity({ id: '20283', method: 'Bank' })], description: 'SPARWOOD DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3184,14 +2988,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044313, + merchants: [new MerchantEntity({ id: '22044313' })], }, { id: '4531674a-5886-4cd5-84a5-e5462408cbbe', source_id: 'SBC', location_id: 84, - method: 'P', - pt_location_id: 20284, + banks: [new BankLocationEntity({ id: '20284', method: 'Bank' })], description: 'SQUAMISH DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3200,14 +3003,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044362, + merchants: [new MerchantEntity({ id: '22044362' })], }, { id: '20784c9c-9ee1-4526-8f5d-6153c95bdf13', source_id: 'SBC', location_id: 87, - method: 'P', - pt_location_id: 20287, + banks: [new BankLocationEntity({ id: '20287', method: 'Bank' })], description: 'STEWART DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3216,14 +3018,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044412, + merchants: [new MerchantEntity({ id: '22044412' })], }, { id: 'ccb6316e-e9a7-41e9-a0bc-637dc793cc02', source_id: 'SBC', location_id: 88, - method: 'P', - pt_location_id: 20288, + banks: [new BankLocationEntity({ id: '20288', method: 'Bank' })], description: 'TERRACE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3232,14 +3033,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044438, + merchants: [new MerchantEntity({ id: '22044438' })], }, { id: '71d926d9-fcb0-4c92-9470-3bb302a33947', source_id: 'SBC', location_id: 81, - method: 'P', - pt_location_id: 20281, + banks: [new BankLocationEntity({ id: '20281', method: 'Bank' })], description: 'TRAIL DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3248,14 +3048,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044545, + merchants: [new MerchantEntity({ id: '22044545' })], }, { id: '1e18eb67-765a-4776-ba12-51b49f7b613c', source_id: 'SBC', location_id: 89, - method: 'P', - pt_location_id: 20289, + banks: [new BankLocationEntity({ id: '20289', method: 'Bank' })], description: 'UCLUELET DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3264,14 +3063,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044628, + merchants: [new MerchantEntity({ id: '22044628' })], }, { id: '4315ccfd-058d-4cf2-9eb8-6118b9344e7f', source_id: 'SBC', location_id: 91, - method: 'P', - pt_location_id: 20291, + banks: [new BankLocationEntity({ id: '20291', method: 'Bank' })], description: 'VALEMOUNT DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3280,14 +3078,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044701, + merchants: [new MerchantEntity({ id: '22044701' })], }, { id: '8e513882-a003-4078-86b5-a62fa9b26c23', source_id: 'SBC', location_id: 92, - method: 'P', - pt_location_id: 20292, + banks: [new BankLocationEntity({ id: '20292', method: 'Bank' })], description: 'VANDERHOOF DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3296,14 +3093,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044750, + merchants: [new MerchantEntity({ id: '22044750' })], }, { id: '0ac01838-b122-45a3-9610-d935d6980e5b', source_id: 'SBC', location_id: 93, - method: 'P', - pt_location_id: 20293, + banks: [new BankLocationEntity({ id: '20293', method: 'Bank' })], description: 'VERNON DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3312,14 +3108,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044859, + merchants: [new MerchantEntity({ id: '22044859' })], }, { id: '7353793c-f1a0-4b54-9b4f-3c5bff77bbaa', source_id: 'SBC', location_id: 94, - method: 'P', - pt_location_id: 20298, + banks: [new BankLocationEntity({ id: '20298', method: 'Bank' })], description: 'VICTORIA DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3328,14 +3123,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 20777441, + merchants: [new MerchantEntity({ id: '20777441' })], }, { id: 'c1ffb7f8-f6ec-4db7-a168-2c50caa876d9', source_id: 'SBC', location_id: 97, - method: 'P', - pt_location_id: 20297, + banks: [new BankLocationEntity({ id: '20297', method: 'Bank' })], description: 'WILLIAMS LAKE DEBIT POS', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3344,14 +3138,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044933, + merchants: [new MerchantEntity({ id: '22044933' })], }, { id: '1dbbbb6b-52a3-4c1e-9afb-4d0d3b12d816', source_id: 'SBC', location_id: 52, - method: 'P', - pt_location_id: 90522, + banks: [new BankLocationEntity({ id: '90522', method: 'Bank' })], description: 'SBC MOBILE OUTREACH DEBIT', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3360,14 +3153,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103846, + merchants: [new MerchantEntity({ id: '24103846' })], }, { id: '2359c225-a609-44ba-8682-f73d26965f2e', source_id: 'SBC', location_id: 62, - method: 'P', - pt_location_id: 90538, + banks: [new BankLocationEntity({ id: '90538', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS DEBIT', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3376,14 +3168,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103838, + merchants: [new MerchantEntity({ id: '24103838' })], }, { id: '695c8c0a-cbc3-4749-8880-8cb4a1ab51a6', source_id: 'SBC', location_id: 53, - method: 'P', - pt_location_id: 90526, + banks: [new BankLocationEntity({ id: '90526', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS DEBIT', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3392,14 +3183,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103895, + merchants: [new MerchantEntity({ id: '24103895' })], }, { id: 'aada838d-4941-4c00-b065-7a1cea35676d', source_id: 'SBC', location_id: 59, - method: 'P', - pt_location_id: 90542, + banks: [new BankLocationEntity({ id: '90542', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS DEBIT', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3408,14 +3198,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103879, + merchants: [new MerchantEntity({ id: '24103879' })], }, { id: 'eda7e785-b232-43f8-922f-c691861fe64d', source_id: 'SBC', location_id: 57, - method: 'P', - pt_location_id: 90534, + banks: [new BankLocationEntity({ id: '90534', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS DEBIT', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3424,14 +3213,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103861, + merchants: [new MerchantEntity({ id: '24103861' })], }, { id: '45f81c60-4eb9-46a2-9ce0-1fd1c98c6536', source_id: 'SBC', location_id: 54, - method: 'P', - pt_location_id: 90530, + banks: [new BankLocationEntity({ id: '90530', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS DEBIT', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3440,14 +3228,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103853, + merchants: [new MerchantEntity({ id: '24103853' })], }, { id: 'dd5e070d-9135-449b-981a-ee86f9a05eee', source_id: 'SBC', location_id: 96, - method: 'P', - pt_location_id: 90518, + banks: [new BankLocationEntity({ id: '90518', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS DEBIT', program_code: 0, program_desc: 'SERVICE BC DEBIT POS', @@ -3456,14 +3243,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103887, + merchants: [new MerchantEntity({ id: '24103887' })], }, { id: 'db14d002-efe0-43cc-844f-5e5ab31294ac', source_id: 'SBC', location_id: 61, - method: 'M', - pt_location_id: 20461, + banks: [new BankLocationEntity({ id: '20461', method: 'Bank' })], description: '100 MILE HOUSE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3472,14 +3258,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054353, + merchants: [new MerchantEntity({ id: '22054353' })], }, { id: 'd61b5b6d-1039-4ef5-862c-85e3215e54dd', source_id: 'SBC', location_id: 1, - method: 'M', - pt_location_id: 20500, + banks: [new BankLocationEntity({ id: '20500', method: 'Bank' })], description: 'HAZELTON MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3488,14 +3273,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043448, + merchants: [new MerchantEntity({ id: '22043448' })], }, { id: '8999be85-11d3-49ff-925d-dd0811ba69e0', source_id: 'SBC', location_id: 2, - method: 'M', - pt_location_id: 20201, + banks: [new BankLocationEntity({ id: '20201', method: 'Bank' })], description: 'ASHCROFT MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3504,14 +3288,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054387, + merchants: [new MerchantEntity({ id: '22054387' })], }, { id: '3a3e8a8a-5b3e-4d7b-bbb9-7767919527a8', source_id: 'SBC', location_id: 3, - method: 'M', - pt_location_id: 20403, + banks: [new BankLocationEntity({ id: '20403', method: 'Bank' })], description: 'ATLIN MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3520,14 +3303,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054486, + merchants: [new MerchantEntity({ id: '22054486' })], }, { id: 'f7422d70-2d66-4e66-8c4f-81e51d5a4c3b', source_id: 'SBC', location_id: 8, - method: 'M', - pt_location_id: 20408, + banks: [new BankLocationEntity({ id: '20408', method: 'Bank' })], description: 'BELLA COOLA MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3536,14 +3318,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054577, + merchants: [new MerchantEntity({ id: '22054577' })], }, { id: 'be011a81-0f1a-4d4a-964e-bc0eb9e74f67', source_id: 'SBC', location_id: 10, - method: 'M', - pt_location_id: 20302, + banks: [new BankLocationEntity({ id: '20302', method: 'Bank' })], description: 'BURNABY MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3552,14 +3333,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23684779, + merchants: [new MerchantEntity({ id: '23684779' })], }, { id: '8eb5bc42-12da-423e-bfaa-813868b7b931', source_id: 'SBC', location_id: 11, - method: 'M', - pt_location_id: 20411, + banks: [new BankLocationEntity({ id: '20411', method: 'Bank' })], description: 'BURNS LAKE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3568,14 +3348,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042705, + merchants: [new MerchantEntity({ id: '22042705' })], }, { id: '84ddab7d-8567-41c8-944f-288e11105744', source_id: 'SBC', location_id: 12, - method: 'M', - pt_location_id: 20412, + banks: [new BankLocationEntity({ id: '20412', method: 'Bank' })], description: 'CAMPBELL RIVER MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3584,14 +3363,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042747, + merchants: [new MerchantEntity({ id: '22042747' })], }, { id: '91b04da3-9f2c-415e-b54e-a8fd3c0efc94', source_id: 'SBC', location_id: 19, - method: 'M', - pt_location_id: 20419, + banks: [new BankLocationEntity({ id: '20419', method: 'Bank' })], description: 'CHETWYND MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3600,14 +3378,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042754, + merchants: [new MerchantEntity({ id: '22042754' })], }, { id: '40644485-b633-4fb4-8a41-52a7301ec199', source_id: 'SBC', location_id: 14, - method: 'M', - pt_location_id: 20414, + banks: [new BankLocationEntity({ id: '20414', method: 'Bank' })], description: 'CHILLIWACK MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3616,14 +3393,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042796, + merchants: [new MerchantEntity({ id: '22042796' })], }, { id: '14d9cb02-6a5a-470f-8a79-4104290d4345', source_id: 'SBC', location_id: 15, - method: 'M', - pt_location_id: 20415, + banks: [new BankLocationEntity({ id: '20415', method: 'Bank' })], description: 'CLINTON MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3632,14 +3408,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042820, + merchants: [new MerchantEntity({ id: '22042820' })], }, { id: 'fbd385d9-b61c-4daf-8973-a9f4f28051f7', source_id: 'SBC', location_id: 16, - method: 'M', - pt_location_id: 20416, + banks: [new BankLocationEntity({ id: '20416', method: 'Bank' })], description: 'COURTENAY MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3648,14 +3423,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042838, + merchants: [new MerchantEntity({ id: '22042838' })], }, { id: '237c4124-356a-48bd-8d4b-2faa2d5958ba', source_id: 'SBC', location_id: 17, - method: 'M', - pt_location_id: 20417, + banks: [new BankLocationEntity({ id: '20417', method: 'Bank' })], description: 'CRANBROOK MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3664,14 +3438,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042887, + merchants: [new MerchantEntity({ id: '22042887' })], }, { id: '5a8e6538-1343-4ca2-a36f-cf12a95c4afe', source_id: 'SBC', location_id: 18, - method: 'M', - pt_location_id: 20418, + banks: [new BankLocationEntity({ id: '20418', method: 'Bank' })], description: 'CRESTON MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3680,14 +3453,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043067, + merchants: [new MerchantEntity({ id: '22043067' })], }, { id: '4c57ad1a-c490-4951-9885-4be3a30dfc0e', source_id: 'SBC', location_id: 23, - method: 'M', - pt_location_id: 20423, + banks: [new BankLocationEntity({ id: '20423', method: 'Bank' })], description: 'DAWSON CREEK MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3696,14 +3468,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043083, + merchants: [new MerchantEntity({ id: '22043083' })], }, { id: '873ff904-f407-4be8-8a64-daec2d079a81', source_id: 'SBC', location_id: 13, - method: 'M', - pt_location_id: 20413, + banks: [new BankLocationEntity({ id: '20413', method: 'Bank' })], description: 'DEASE LAKE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3712,14 +3483,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043141, + merchants: [new MerchantEntity({ id: '22043141' })], }, { id: '84c3184b-abcd-4a12-be84-e62d7373e5f2', source_id: 'SBC', location_id: 25, - method: 'M', - pt_location_id: 20425, + banks: [new BankLocationEntity({ id: '20425', method: 'Bank' })], description: 'DUNCAN MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3728,14 +3498,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043182, + merchants: [new MerchantEntity({ id: '22043182' })], }, { id: '807dc335-8376-4fad-a42e-0b5903598ae1', source_id: 'SBC', location_id: 30, - method: 'M', - pt_location_id: 20430, + banks: [new BankLocationEntity({ id: '20430', method: 'Bank' })], description: 'FERNIE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3744,14 +3513,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043208, + merchants: [new MerchantEntity({ id: '22043208' })], }, { id: '0a853ff8-d865-4ef8-9be0-ae60a1a63778', source_id: 'SBC', location_id: 32, - method: 'M', - pt_location_id: 20432, + banks: [new BankLocationEntity({ id: '20432', method: 'Bank' })], description: 'FORT NELSON MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3760,14 +3528,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043281, + merchants: [new MerchantEntity({ id: '22043281' })], }, { id: 'aca14140-7776-4eab-910f-93fc0e3ec4ab', source_id: 'SBC', location_id: 33, - method: 'M', - pt_location_id: 20433, + banks: [new BankLocationEntity({ id: '20433', method: 'Bank' })], description: 'FORT ST. JAMES MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3776,14 +3543,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043315, + merchants: [new MerchantEntity({ id: '22043315' })], }, { id: '1d9a6358-a5e1-48b5-a0a5-0b2b7cb5bf03', source_id: 'SBC', location_id: 31, - method: 'M', - pt_location_id: 20431, + banks: [new BankLocationEntity({ id: '20431', method: 'Bank' })], description: 'FORT ST. JOHN MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3792,14 +3558,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043372, + merchants: [new MerchantEntity({ id: '22043372' })], }, { id: 'd2e787cc-97da-46cf-9bd5-d60440917413', source_id: 'SBC', location_id: 37, - method: 'M', - pt_location_id: 20437, + banks: [new BankLocationEntity({ id: '20437', method: 'Bank' })], description: 'GANGES MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3808,14 +3573,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043380, + merchants: [new MerchantEntity({ id: '22043380' })], }, { id: '1f6c0cd6-8dc1-45ed-9dc4-aba9301d7cfe', source_id: 'SBC', location_id: 35, - method: 'M', - pt_location_id: 20435, + banks: [new BankLocationEntity({ id: '20435', method: 'Bank' })], description: 'GOLDEN MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3824,14 +3588,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043406, + merchants: [new MerchantEntity({ id: '22043406' })], }, { id: '0040982a-a72d-4474-903f-677e4c6c7d45', source_id: 'SBC', location_id: 36, - method: 'M', - pt_location_id: 20436, + banks: [new BankLocationEntity({ id: '20436', method: 'Bank' })], description: 'GRAND FORKS MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3840,14 +3603,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043430, + merchants: [new MerchantEntity({ id: '22043430' })], }, { id: '4a5643be-6753-4cf0-951d-f4723f2228f3', source_id: 'SBC', location_id: 39, - method: 'M', - pt_location_id: 20439, + banks: [new BankLocationEntity({ id: '20439', method: 'Bank' })], description: 'HOUSTON MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3856,14 +3618,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043463, + merchants: [new MerchantEntity({ id: '22043463' })], }, { id: '10d42ab7-ce61-4ae8-8ca9-a89f4ccb663e', source_id: 'SBC', location_id: 38, - method: 'M', - pt_location_id: 20438, + banks: [new BankLocationEntity({ id: '20438', method: 'Bank' })], description: 'INVERMERE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3872,14 +3633,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043505, + merchants: [new MerchantEntity({ id: '22043505' })], }, { id: '1533ac17-dc2f-407a-af1d-4e14fe4ab95e', source_id: 'SBC', location_id: 40, - method: 'M', - pt_location_id: 20440, + banks: [new BankLocationEntity({ id: '20440', method: 'Bank' })], description: 'KAMLOOPS MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3888,14 +3648,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043539, + merchants: [new MerchantEntity({ id: '22043539' })], }, { id: '28ee68da-682b-4e36-ae22-3d6b2c38c304', source_id: 'SBC', location_id: 41, - method: 'M', - pt_location_id: 20441, + banks: [new BankLocationEntity({ id: '20441', method: 'Bank' })], description: 'KASLO MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3904,14 +3663,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043547, + merchants: [new MerchantEntity({ id: '22043547' })], }, { id: 'dc7ecd16-a57c-49cc-975d-cb8c3155ca97', source_id: 'SBC', location_id: 42, - method: 'M', - pt_location_id: 20442, + banks: [new BankLocationEntity({ id: '20442', method: 'Bank' })], description: 'KELOWNA M/C POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3920,14 +3678,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22455675, + merchants: [new MerchantEntity({ id: '22455675' })], }, { id: '74f09e85-d00f-458d-bffe-587e3b267c8f', source_id: 'SBC', location_id: 43, - method: 'M', - pt_location_id: 20443, + banks: [new BankLocationEntity({ id: '20443', method: 'Bank' })], description: 'KITIMAT MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3936,14 +3693,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043562, + merchants: [new MerchantEntity({ id: '22043562' })], }, { id: 'c4d21a9e-70df-4671-ba5f-7c17446fd354', source_id: 'SBC', location_id: 45, - method: 'M', - pt_location_id: 20445, + banks: [new BankLocationEntity({ id: '20445', method: 'Bank' })], description: 'LILLOOET MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3952,14 +3708,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043596, + merchants: [new MerchantEntity({ id: '22043596' })], }, { id: '59cfe960-d833-49a0-be23-67f7c72c7fb5', source_id: 'SBC', location_id: 47, - method: 'M', - pt_location_id: 20447, + banks: [new BankLocationEntity({ id: '20447', method: 'Bank' })], description: 'MACKENZIE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3968,14 +3723,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043604, + merchants: [new MerchantEntity({ id: '22043604' })], }, { id: 'a1caa98b-b049-426b-a432-517d2e9f7305', source_id: 'SBC', location_id: 46, - method: 'M', - pt_location_id: 20446, + banks: [new BankLocationEntity({ id: '20446', method: 'Bank' })], description: 'MAPLE RIDGE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -3984,14 +3738,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043620, + merchants: [new MerchantEntity({ id: '22043620' })], }, { id: 'f0fb0e47-a52b-4aec-9cda-8ad6382e1cdd', source_id: 'SBC', location_id: 48, - method: 'M', - pt_location_id: 20448, + banks: [new BankLocationEntity({ id: '20448', method: 'Bank' })], description: 'MASSET MSTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4000,14 +3753,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 20803999, + merchants: [new MerchantEntity({ id: '20803999' })], }, { id: '425db771-b1cd-49d6-9d14-61e133d8a1d0', source_id: 'SBC', location_id: 50, - method: 'M', - pt_location_id: 20450, + banks: [new BankLocationEntity({ id: '20450', method: 'Bank' })], description: 'MERRITT MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4016,14 +3768,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043646, + merchants: [new MerchantEntity({ id: '22043646' })], }, { id: '531ac121-c298-490f-a198-623d01984b5b', source_id: 'SBC', location_id: 51, - method: 'M', - pt_location_id: 20451, + banks: [new BankLocationEntity({ id: '20451', method: 'Bank' })], description: 'NAKUSP MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4032,14 +3783,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043653, + merchants: [new MerchantEntity({ id: '22043653' })], }, { id: 'a5c35fe6-85e0-4e34-be89-49c2043df548', source_id: 'SBC', location_id: 55, - method: 'M', - pt_location_id: 20455, + banks: [new BankLocationEntity({ id: '20455', method: 'Bank' })], description: 'NANAIMO MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4048,14 +3798,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043661, + merchants: [new MerchantEntity({ id: '22043661' })], }, { id: '8dfe5274-e9fc-4252-9dbe-9e8c520ee952', source_id: 'SBC', location_id: 56, - method: 'M', - pt_location_id: 20456, + banks: [new BankLocationEntity({ id: '20456', method: 'Bank' })], description: 'NELSON MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4064,14 +3813,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043679, + merchants: [new MerchantEntity({ id: '22043679' })], }, { id: '07c47ba0-414c-4b34-884f-2a5f6371bde5', source_id: 'SBC', location_id: 60, - method: 'M', - pt_location_id: 20460, + banks: [new BankLocationEntity({ id: '20460', method: 'Bank' })], description: 'OLIVER MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4080,14 +3828,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043703, + merchants: [new MerchantEntity({ id: '22043703' })], }, { id: 'efd32b25-fae6-4feb-8624-73eef578fa2e', source_id: 'SBC', location_id: 65, - method: 'M', - pt_location_id: 20465, + banks: [new BankLocationEntity({ id: '20465', method: 'Bank' })], description: 'PENTICTON MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4096,14 +3843,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043745, + merchants: [new MerchantEntity({ id: '22043745' })], }, { id: '7528fffc-9ebf-487d-a36b-77b1e0536f98', source_id: 'SBC', location_id: 66, - method: 'M', - pt_location_id: 20466, + banks: [new BankLocationEntity({ id: '20466', method: 'Bank' })], description: 'PORT ALBERNI MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4112,14 +3858,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043810, + merchants: [new MerchantEntity({ id: '22043810' })], }, { id: '43c79d1f-07ef-479c-92d4-37a047b4be2b', source_id: 'SBC', location_id: 64, - method: 'M', - pt_location_id: 20464, + banks: [new BankLocationEntity({ id: '20464', method: 'Bank' })], description: 'PORT HARDY MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4128,14 +3873,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043828, + merchants: [new MerchantEntity({ id: '22043828' })], }, { id: '694c35ee-9c25-4269-ad1c-55953574707f', source_id: 'SBC', location_id: 67, - method: 'M', - pt_location_id: 20467, + banks: [new BankLocationEntity({ id: '20467', method: 'Bank' })], description: 'POWELL RIVER MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4144,14 +3888,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043836, + merchants: [new MerchantEntity({ id: '22043836' })], }, { id: 'eda35e58-68da-4d78-aeb1-f5b8b9d90ad1', source_id: 'SBC', location_id: 68, - method: 'M', - pt_location_id: 20468, + banks: [new BankLocationEntity({ id: '20468', method: 'Bank' })], description: 'PRINCE GEORGE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4160,14 +3903,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043893, + merchants: [new MerchantEntity({ id: '22043893' })], }, { id: '6044ea55-bdb1-4d74-bfbd-431ecfe4aeac', source_id: 'SBC', location_id: 69, - method: 'M', - pt_location_id: 20469, + banks: [new BankLocationEntity({ id: '20469', method: 'Bank' })], description: 'PRINCE RUPERT MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4176,14 +3918,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043919, + merchants: [new MerchantEntity({ id: '22043919' })], }, { id: '804da3b1-50fa-4f74-9540-6d33dfa15680', source_id: 'SBC', location_id: 70, - method: 'M', - pt_location_id: 20470, + banks: [new BankLocationEntity({ id: '20470', method: 'Bank' })], description: 'PRINCETON MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4192,14 +3933,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043984, + merchants: [new MerchantEntity({ id: '22043984' })], }, { id: 'de3951d4-d710-41f4-8eb8-b6825db8d52b', source_id: 'SBC', location_id: 73, - method: 'M', - pt_location_id: 20473, + banks: [new BankLocationEntity({ id: '20473', method: 'Bank' })], description: 'QUEEN CHARLOTTE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4208,14 +3948,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044008, + merchants: [new MerchantEntity({ id: '22044008' })], }, { id: 'be1232e1-9cd2-4525-b58f-a3cc8e96862d', source_id: 'SBC', location_id: 75, - method: 'M', - pt_location_id: 20475, + banks: [new BankLocationEntity({ id: '20475', method: 'Bank' })], description: 'QUESNEL MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4224,14 +3963,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044164, + merchants: [new MerchantEntity({ id: '22044164' })], }, { id: 'b5ab69ad-19b5-482b-8bb9-e16e3c4d4c5f', source_id: 'SBC', location_id: 80, - method: 'M', - pt_location_id: 20480, + banks: [new BankLocationEntity({ id: '20480', method: 'Bank' })], description: 'REVELSTOKE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4240,14 +3978,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044230, + merchants: [new MerchantEntity({ id: '22044230' })], }, { id: 'db958b93-73fb-4f18-93e4-0318cda188ae', source_id: 'SBC', location_id: 85, - method: 'M', - pt_location_id: 20485, + banks: [new BankLocationEntity({ id: '20485', method: 'Bank' })], description: 'SALMON ARM MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4256,14 +3993,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044255, + merchants: [new MerchantEntity({ id: '22044255' })], }, { id: '2829c62c-4671-44ab-a0e5-d42d8a735dec', source_id: 'SBC', location_id: 82, - method: 'M', - pt_location_id: 20482, + banks: [new BankLocationEntity({ id: '20482', method: 'Bank' })], description: 'SECHELT MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4272,14 +4008,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044297, + merchants: [new MerchantEntity({ id: '22044297' })], }, { id: 'c1741b43-d4d6-4ebd-9234-83b67192fc43', source_id: 'SBC', location_id: 86, - method: 'M', - pt_location_id: 20486, + banks: [new BankLocationEntity({ id: '20486', method: 'Bank' })], description: 'SMITHERS MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4288,14 +4023,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044305, + merchants: [new MerchantEntity({ id: '22044305' })], }, { id: '42f4ae60-a372-4427-8094-7c2cfad59df7', source_id: 'SBC', location_id: 83, - method: 'M', - pt_location_id: 20483, + banks: [new BankLocationEntity({ id: '20483', method: 'Bank' })], description: 'SPARWOOD MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4304,14 +4038,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044313, + merchants: [new MerchantEntity({ id: '22044313' })], }, { id: 'f5851797-45ca-4b61-9fa9-9a41b455a236', source_id: 'SBC', location_id: 84, - method: 'M', - pt_location_id: 20484, + banks: [new BankLocationEntity({ id: '20484', method: 'Bank' })], description: 'SQUAMISH MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4320,14 +4053,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044362, + merchants: [new MerchantEntity({ id: '22044362' })], }, { id: '147b7d97-4b37-4090-8949-c8b450bf0e7d', source_id: 'SBC', location_id: 87, - method: 'M', - pt_location_id: 20487, + banks: [new BankLocationEntity({ id: '20487', method: 'Bank' })], description: 'STEWART MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4336,14 +4068,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044412, + merchants: [new MerchantEntity({ id: '22044412' })], }, { id: '344dcf1e-eb8f-4b8d-aaf9-415d56307db1', source_id: 'SBC', location_id: 88, - method: 'M', - pt_location_id: 20488, + banks: [new BankLocationEntity({ id: '20488', method: 'Bank' })], description: 'TERRACE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4352,14 +4083,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044438, + merchants: [new MerchantEntity({ id: '22044438' })], }, { id: '31dcfba6-c8f9-4a72-b56e-0cf9853e105a', source_id: 'SBC', location_id: 81, - method: 'M', - pt_location_id: 20481, + banks: [new BankLocationEntity({ id: '20481', method: 'Bank' })], description: 'TRAIL MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4368,14 +4098,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044545, + merchants: [new MerchantEntity({ id: '22044545' })], }, { id: 'b5d1fd20-29c8-47c0-877b-3a8aa0eedf8b', source_id: 'SBC', location_id: 89, - method: 'M', - pt_location_id: 20489, + banks: [new BankLocationEntity({ id: '20489', method: 'Bank' })], description: 'UCLUELET MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4384,14 +4113,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044628, + merchants: [new MerchantEntity({ id: '22044628' })], }, { id: 'c129897e-f29f-4e92-9ae1-5cca28b41829', source_id: 'SBC', location_id: 91, - method: 'M', - pt_location_id: 20491, + banks: [new BankLocationEntity({ id: '20491', method: 'Bank' })], description: 'VALEMOUNT MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4400,14 +4128,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044701, + merchants: [new MerchantEntity({ id: '22044701' })], }, { id: '47361bf3-9ff5-48c2-9d13-9b8e983f18a8', source_id: 'SBC', location_id: 92, - method: 'M', - pt_location_id: 20492, + banks: [new BankLocationEntity({ id: '20492', method: 'Bank' })], description: 'VANDERHOOF MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4416,14 +4143,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044750, + merchants: [new MerchantEntity({ id: '22044750' })], }, { id: '60f03709-b10b-4281-8528-a827149d1f93', source_id: 'SBC', location_id: 93, - method: 'M', - pt_location_id: 20493, + banks: [new BankLocationEntity({ id: '20493', method: 'Bank' })], description: 'VERNON MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4432,14 +4158,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044859, + merchants: [new MerchantEntity({ id: '22044859' })], }, { id: '04f61927-973c-41d0-b2ef-4bcdec16fc91', source_id: 'SBC', location_id: 94, - method: 'M', - pt_location_id: 20498, + banks: [new BankLocationEntity({ id: '20498', method: 'Bank' })], description: 'VICTORIA MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4448,14 +4173,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 20777441, + merchants: [new MerchantEntity({ id: '20777441' })], }, { id: '25d13d14-e6f6-4818-9bb8-0f1aa2d94748', source_id: 'SBC', location_id: 97, - method: 'M', - pt_location_id: 20497, + banks: [new BankLocationEntity({ id: '20497', method: 'Bank' })], description: 'WILLIAMS LAKE MASTERCARD POS', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4464,14 +4188,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044933, + merchants: [new MerchantEntity({ id: '22044933' })], }, { id: '881da99b-0f83-43d3-9a3a-7375c4e3b1c2', source_id: 'SBC', location_id: 52, - method: 'M', - pt_location_id: 90521, + banks: [new BankLocationEntity({ id: '90521', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS M/C', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4480,14 +4203,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103846, + merchants: [new MerchantEntity({ id: '24103846' })], }, { id: '814064be-d686-4ca3-b8b7-318d8d061e89', source_id: 'SBC', location_id: 62, - method: 'M', - pt_location_id: 90537, + banks: [new BankLocationEntity({ id: '90537', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS M/C', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4496,14 +4218,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103838, + merchants: [new MerchantEntity({ id: '24103838' })], }, { id: '0852ed2b-6065-4d14-9615-d76728b803b7', source_id: 'SBC', location_id: 53, - method: 'M', - pt_location_id: 90525, + banks: [new BankLocationEntity({ id: '90525', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS M/C', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4512,14 +4233,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103895, + merchants: [new MerchantEntity({ id: '24103895' })], }, { id: 'b9e007a8-efd7-4bfc-9ae1-a38e185dd12e', source_id: 'SBC', location_id: 59, - method: 'M', - pt_location_id: 90541, + banks: [new BankLocationEntity({ id: '90541', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS M/C', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4528,14 +4248,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103879, + merchants: [new MerchantEntity({ id: '24103879' })], }, { id: '6789c802-4cf8-46fd-a881-84ceb49df338', source_id: 'SBC', location_id: 54, - method: 'M', - pt_location_id: 90529, + banks: [new BankLocationEntity({ id: '90529', method: 'Bank' })], description: 'SBC MOBILE OUREACH POS M/C', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4544,14 +4263,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103853, + merchants: [new MerchantEntity({ id: '24103853' })], }, { id: 'a6f15b26-c4e0-4716-98c3-6cbe26f10a7b', source_id: 'SBC', location_id: 96, - method: 'M', - pt_location_id: 90517, + banks: [new BankLocationEntity({ id: '90517', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS M/C', program_code: 0, program_desc: 'SERVICE BC M/C POS', @@ -4560,14 +4278,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103887, + merchants: [new MerchantEntity({ id: '24103887' })], }, { id: '430e6ab3-777e-4c79-93b6-3edbf6cdce50', source_id: 'LABOUR', location_id: 44016, - method: 'M', - pt_location_id: 44016, + banks: [new BankLocationEntity({ id: '44016', method: 'Bank' })], description: 'EMPLOYMENT STDS BR VICTORIA-MC POS', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS BRANCH MC POS', @@ -4576,14 +4293,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23302208, + merchants: [new MerchantEntity({ id: '23302208' })], }, { id: '17ec0df8-e8aa-4c35-b15a-642b5aa50e2a', source_id: 'LABOUR', location_id: 44020, - method: 'M', - pt_location_id: 44020, + banks: [new BankLocationEntity({ id: '44020', method: 'Bank' })], description: 'TALENT AGENCY LICENCING INTERNET M/C', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS BR INTERNET M/C', @@ -4592,14 +4308,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23700609, + merchants: [new MerchantEntity({ id: '23700609' })], }, { id: '365e1813-5033-4d1e-b645-2c8b3b54a9e5', source_id: 'LABOUR', location_id: 44599, - method: 'M', - pt_location_id: 44599, + banks: [new BankLocationEntity({ id: '44599', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS ICEPAY M/C', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS ICEPAY M/C', @@ -4608,14 +4323,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23956607, + merchants: [new MerchantEntity({ id: '23956607' })], }, { id: '4823154d-50c5-4776-9320-3e7449b86dad', source_id: 'LABOUR', location_id: 44604, - method: 'M', - pt_location_id: 44604, + banks: [new BankLocationEntity({ id: '44604', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS TRUST ICEPAY M/C', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS ICEPAY M/C', @@ -4624,14 +4338,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23956599, + merchants: [new MerchantEntity({ id: '23956599' })], }, { id: '57cf126f-0d7d-4b18-b16c-526cc94d2e3e', source_id: 'LABOUR', location_id: 44021, - method: 'PM', - pt_location_id: 44021, + banks: [new BankLocationEntity({ id: '44021', method: 'Bank' })], description: 'TALENT AGENCY LICENCING INT DEBIT M/C', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS BR INT DEBIT M/C', @@ -4640,14 +4353,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23700609, + merchants: [new MerchantEntity({ id: '23700609' })], }, { id: '3d02b0c7-3d84-4cca-9215-35ae050ddfaf', source_id: 'LABOUR', location_id: 44600, - method: 'PM', - pt_location_id: 44600, + banks: [new BankLocationEntity({ id: '44600', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS ICEPAY DEBIT M/C', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS ICEPAY DEBIT M/C', @@ -4656,14 +4368,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23956607, + merchants: [new MerchantEntity({ id: '23956607' })], }, { id: '88e2c800-b474-46d8-ace2-b8aa80fe6dcb', source_id: 'LABOUR', location_id: 44605, - method: 'PM', - pt_location_id: 44605, + banks: [new BankLocationEntity({ id: '44605', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS TRUST ICEPAY DBT MC', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS ICEPAY DEBIT M/C', @@ -4672,14 +4383,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23956599, + merchants: [new MerchantEntity({ id: '23956599' })], }, { id: '483422db-fc92-4a84-a4bd-4a4860029cf0', source_id: 'SBC', location_id: 61, - method: 'V', - pt_location_id: 20661, + banks: [new BankLocationEntity({ id: '20661', method: 'Bank' })], description: '100 MILE HOUSE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4688,14 +4398,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054353, + merchants: [new MerchantEntity({ id: '22054353' })], }, { id: '15ad15a2-a054-492e-8057-f3099c43a383', source_id: 'SBC', location_id: 1, - method: 'V', - pt_location_id: 20700, + banks: [new BankLocationEntity({ id: '20700', method: 'Bank' })], description: 'HAZELTON-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4704,14 +4413,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043448, + merchants: [new MerchantEntity({ id: '22043448' })], }, { id: '3bce4b50-ab36-42dc-8df3-f11400925d66', source_id: 'SBC', location_id: 2, - method: 'V', - pt_location_id: 20602, + banks: [new BankLocationEntity({ id: '20602', method: 'Bank' })], description: 'ASHCROFT-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4720,14 +4428,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054387, + merchants: [new MerchantEntity({ id: '22054387' })], }, { id: '8168626c-781a-4cd9-ac62-5e5061184396', source_id: 'SBC', location_id: 3, - method: 'V', - pt_location_id: 20603, + banks: [new BankLocationEntity({ id: '20603', method: 'Bank' })], description: 'ATLIN-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4736,14 +4443,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054486, + merchants: [new MerchantEntity({ id: '22054486' })], }, { id: '4fd330af-ae70-4777-9bec-253b39cb3b2a', source_id: 'SBC', location_id: 8, - method: 'V', - pt_location_id: 20608, + banks: [new BankLocationEntity({ id: '20608', method: 'Bank' })], description: 'BELLA COOLA-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4752,14 +4458,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22054577, + merchants: [new MerchantEntity({ id: '22054577' })], }, { id: '2007a202-791d-4a0a-9f8f-669c94d23d11', source_id: 'SBC', location_id: 10, - method: 'V', - pt_location_id: 20301, + banks: [new BankLocationEntity({ id: '20301', method: 'Bank' })], description: 'BURNABY-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4768,14 +4473,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23684779, + merchants: [new MerchantEntity({ id: '23684779' })], }, { id: 'e0aebfd5-99fc-4744-8244-1ec60a4cfc13', source_id: 'SBC', location_id: 11, - method: 'V', - pt_location_id: 20611, + banks: [new BankLocationEntity({ id: '20611', method: 'Bank' })], description: 'BURNS LAKE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4784,14 +4488,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042705, + merchants: [new MerchantEntity({ id: '22042705' })], }, { id: 'bed331ff-2d7b-4a12-8e3d-933c4f795c70', source_id: 'SBC', location_id: 12, - method: 'V', - pt_location_id: 20612, + banks: [new BankLocationEntity({ id: '20612', method: 'Bank' })], description: 'CAMPBELL RIVER-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4800,14 +4503,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042747, + merchants: [new MerchantEntity({ id: '22042747' })], }, { id: 'e35b059b-8832-4d0e-bd03-1cdccf3652c7', source_id: 'SBC', location_id: 19, - method: 'V', - pt_location_id: 20619, + banks: [new BankLocationEntity({ id: '20619', method: 'Bank' })], description: 'CHETWTND-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4816,14 +4518,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042754, + merchants: [new MerchantEntity({ id: '22042754' })], }, { id: '15ecd79c-4fad-4e78-8e2d-c872340c71f7', source_id: 'SBC', location_id: 14, - method: 'V', - pt_location_id: 20614, + banks: [new BankLocationEntity({ id: '20614', method: 'Bank' })], description: 'CHILLIWACK-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4832,14 +4533,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042796, + merchants: [new MerchantEntity({ id: '22042796' })], }, { id: '4a47916b-9317-4692-a4ed-77253219bc00', source_id: 'SBC', location_id: 15, - method: 'V', - pt_location_id: 20615, + banks: [new BankLocationEntity({ id: '20615', method: 'Bank' })], description: 'CLINTON-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4848,14 +4548,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042820, + merchants: [new MerchantEntity({ id: '22042820' })], }, { id: '84955e6b-8a4a-42eb-8ce2-b5ca234e4935', source_id: 'SBC', location_id: 16, - method: 'V', - pt_location_id: 20616, + banks: [new BankLocationEntity({ id: '20616', method: 'Bank' })], description: 'COURTENAY-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4864,14 +4563,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042838, + merchants: [new MerchantEntity({ id: '22042838' })], }, { id: 'a0e90dd4-4016-4449-bcdb-af50e78e0567', source_id: 'SBC', location_id: 17, - method: 'V', - pt_location_id: 20617, + banks: [new BankLocationEntity({ id: '20617', method: 'Bank' })], description: 'CRANBROOK-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4880,14 +4578,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22042887, + merchants: [new MerchantEntity({ id: '22042887' })], }, { id: '332e8a0b-bf66-4f54-b3ec-43de4ab131fa', source_id: 'SBC', location_id: 18, - method: 'V', - pt_location_id: 20618, + banks: [new BankLocationEntity({ id: '20618', method: 'Bank' })], description: 'CRESTON-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4896,14 +4593,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043067, + merchants: [new MerchantEntity({ id: '22043067' })], }, { id: 'c9757a4e-cafb-43ec-8a77-a99e28e3a29b', source_id: 'SBC', location_id: 23, - method: 'V', - pt_location_id: 20623, + banks: [new BankLocationEntity({ id: '20623', method: 'Bank' })], description: 'DAWSON CREEK-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4912,14 +4608,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043083, + merchants: [new MerchantEntity({ id: '22043083' })], }, { id: '8b1eabb4-7a22-458b-a850-c7f119657945', source_id: 'SBC', location_id: 13, - method: 'V', - pt_location_id: 20613, + banks: [new BankLocationEntity({ id: '20613', method: 'Bank' })], description: 'DEASE LAKE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4928,14 +4623,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043141, + merchants: [new MerchantEntity({ id: '22043141' })], }, { id: '846b4d4f-6351-4fa8-bd23-26eb613420ff', source_id: 'SBC', location_id: 25, - method: 'V', - pt_location_id: 20625, + banks: [new BankLocationEntity({ id: '20625', method: 'Bank' })], description: 'DUNCAN-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4944,14 +4638,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043182, + merchants: [new MerchantEntity({ id: '22043182' })], }, { id: 'e405e771-fc03-42f1-bf18-0d40d25ccff8', source_id: 'SBC', location_id: 30, - method: 'V', - pt_location_id: 20630, + banks: [new BankLocationEntity({ id: '20630', method: 'Bank' })], description: 'FERNIE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4960,14 +4653,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043208, + merchants: [new MerchantEntity({ id: '22043208' })], }, { id: '80b23867-20db-4bab-86ff-c04cc6ffff1d', source_id: 'SBC', location_id: 32, - method: 'V', - pt_location_id: 20632, + banks: [new BankLocationEntity({ id: '20632', method: 'Bank' })], description: 'FORT NELSON-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4976,14 +4668,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043281, + merchants: [new MerchantEntity({ id: '22043281' })], }, { id: '58804dcf-2ec3-410d-a714-9b103099155b', source_id: 'SBC', location_id: 33, - method: 'V', - pt_location_id: 20633, + banks: [new BankLocationEntity({ id: '20633', method: 'Bank' })], description: 'FORT ST. JAMES-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -4992,14 +4683,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043315, + merchants: [new MerchantEntity({ id: '22043315' })], }, { id: '0dbbc7cf-86f9-414b-a051-c336806e4b75', source_id: 'SBC', location_id: 31, - method: 'V', - pt_location_id: 20631, + banks: [new BankLocationEntity({ id: '20631', method: 'Bank' })], description: 'FORT ST. JOHN-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5008,14 +4698,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043372, + merchants: [new MerchantEntity({ id: '22043372' })], }, { id: 'f0521e1b-237f-4988-a1c0-008381d0a32d', source_id: 'SBC', location_id: 37, - method: 'V', - pt_location_id: 20637, + banks: [new BankLocationEntity({ id: '20637', method: 'Bank' })], description: 'GANGES-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5024,14 +4713,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043380, + merchants: [new MerchantEntity({ id: '22043380' })], }, { id: '625629ab-380e-48c1-9452-69e9395466b7', source_id: 'SBC', location_id: 35, - method: 'V', - pt_location_id: 20635, + banks: [new BankLocationEntity({ id: '20635', method: 'Bank' })], description: 'GOLDEN-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5040,14 +4728,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043406, + merchants: [new MerchantEntity({ id: '22043406' })], }, { id: '7e18f686-9c24-48c6-8bf6-becb1e343a72', source_id: 'SBC', location_id: 36, - method: 'V', - pt_location_id: 20636, + banks: [new BankLocationEntity({ id: '20636', method: 'Bank' })], description: 'GRAND FORKS-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5056,14 +4743,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043430, + merchants: [new MerchantEntity({ id: '22043430' })], }, { id: 'cb0803ab-04e7-45ca-8b30-6a5537d8a353', source_id: 'SBC', location_id: 39, - method: 'V', - pt_location_id: 20639, + banks: [new BankLocationEntity({ id: '20639', method: 'Bank' })], description: 'HOUSTON-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5072,14 +4758,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043463, + merchants: [new MerchantEntity({ id: '22043463' })], }, { id: '01da5f35-338a-4475-9cde-44cd10177185', source_id: 'SBC', location_id: 38, - method: 'V', - pt_location_id: 20638, + banks: [new BankLocationEntity({ id: '20638', method: 'Bank' })], description: 'INVERMERE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5088,14 +4773,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043505, + merchants: [new MerchantEntity({ id: '22043505' })], }, { id: '160b753c-54e7-4715-a0c1-87479368f141', source_id: 'SBC', location_id: 40, - method: 'V', - pt_location_id: 20640, + banks: [new BankLocationEntity({ id: '20640', method: 'Bank' })], description: 'KAMLOOPS-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5104,14 +4788,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043539, + merchants: [new MerchantEntity({ id: '22043539' })], }, { id: '7ab0df7c-1a90-475a-ab13-fd4572aa99c8', source_id: 'SBC', location_id: 41, - method: 'V', - pt_location_id: 20641, + banks: [new BankLocationEntity({ id: '20641', method: 'Bank' })], description: 'KASLO-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5120,14 +4803,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043547, + merchants: [new MerchantEntity({ id: '22043547' })], }, { id: 'd13c77a1-91cc-40c8-b999-05e02eb36058', source_id: 'SBC', location_id: 42, - method: 'V', - pt_location_id: 20642, + banks: [new BankLocationEntity({ id: '20642', method: 'Bank' })], description: 'KELOWNA VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5136,14 +4818,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22455675, + merchants: [new MerchantEntity({ id: '22455675' })], }, { id: '7eea7759-735c-4cd3-9aa8-2bf69979fddc', source_id: 'SBC', location_id: 43, - method: 'V', - pt_location_id: 20643, + banks: [new BankLocationEntity({ id: '20643', method: 'Bank' })], description: 'KITIMAT-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5152,14 +4833,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043562, + merchants: [new MerchantEntity({ id: '22043562' })], }, { id: 'fb3ab726-5ebf-466d-ad6d-470ffc290da5', source_id: 'SBC', location_id: 45, - method: 'V', - pt_location_id: 20645, + banks: [new BankLocationEntity({ id: '20645', method: 'Bank' })], description: 'LILLOOET-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5168,14 +4848,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043596, + merchants: [new MerchantEntity({ id: '22043596' })], }, { id: '9eaa610c-1011-4136-a2bf-ea47662da6db', source_id: 'SBC', location_id: 47, - method: 'V', - pt_location_id: 20647, + banks: [new BankLocationEntity({ id: '20647', method: 'Bank' })], description: 'MACKENZIE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5184,14 +4863,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043604, + merchants: [new MerchantEntity({ id: '22043604' })], }, { id: 'b573f556-437e-430f-b2e8-9e9394a8789a', source_id: 'SBC', location_id: 46, - method: 'V', - pt_location_id: 20646, + banks: [new BankLocationEntity({ id: '20646', method: 'Bank' })], description: 'MAPLE RIDGE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5200,14 +4878,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043620, + merchants: [new MerchantEntity({ id: '22043620' })], }, { id: 'df4b68e0-485f-44bf-9974-f6bbfdfdd8b1', source_id: 'SBC', location_id: 48, - method: 'V', - pt_location_id: 20648, + banks: [new BankLocationEntity({ id: '20648', method: 'Bank' })], description: 'MASSET VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5216,14 +4893,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 20803999, + merchants: [new MerchantEntity({ id: '20803999' })], }, { id: '85cd8047-9768-43f8-b180-6fa9cd114bf8', source_id: 'SBC', location_id: 50, - method: 'V', - pt_location_id: 20650, + banks: [new BankLocationEntity({ id: '20650', method: 'Bank' })], description: 'MERRITT-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5232,14 +4908,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043646, + merchants: [new MerchantEntity({ id: '22043646' })], }, { id: '9a1f3d74-9820-4fb1-adf3-a7a978524fc5', source_id: 'SBC', location_id: 51, - method: 'V', - pt_location_id: 20651, + banks: [new BankLocationEntity({ id: '20651', method: 'Bank' })], description: 'NAKUSP-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5248,14 +4923,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043653, + merchants: [new MerchantEntity({ id: '22043653' })], }, { id: 'f1441a38-05ca-4d88-887c-6fe4eb6bbee2', source_id: 'SBC', location_id: 55, - method: 'V', - pt_location_id: 20655, + banks: [new BankLocationEntity({ id: '20655', method: 'Bank' })], description: 'NANAIMO-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5264,14 +4938,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043661, + merchants: [new MerchantEntity({ id: '22043661' })], }, { id: '10c3f7a2-6897-4554-9fe1-1ac10c68080e', source_id: 'SBC', location_id: 56, - method: 'V', - pt_location_id: 20656, + banks: [new BankLocationEntity({ id: '20656', method: 'Bank' })], description: 'NELSON-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5280,14 +4953,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043679, + merchants: [new MerchantEntity({ id: '22043679' })], }, { id: 'c9efad1b-6461-4483-b2ab-de6c7e866fba', source_id: 'SBC', location_id: 60, - method: 'V', - pt_location_id: 20660, + banks: [new BankLocationEntity({ id: '20660', method: 'Bank' })], description: 'OLIVER-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5296,14 +4968,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043703, + merchants: [new MerchantEntity({ id: '22043703' })], }, { id: 'f6efa109-c840-4b9f-afc9-6b4e4c68cd7e', source_id: 'SBC', location_id: 65, - method: 'V', - pt_location_id: 20665, + banks: [new BankLocationEntity({ id: '20665', method: 'Bank' })], description: 'PENTICTON-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5312,14 +4983,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043745, + merchants: [new MerchantEntity({ id: '22043745' })], }, { id: '42349f57-c3d5-4769-954d-2e5553110024', source_id: 'SBC', location_id: 66, - method: 'V', - pt_location_id: 20666, + banks: [new BankLocationEntity({ id: '20666', method: 'Bank' })], description: 'PORT ALBERNI-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5328,14 +4998,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043810, + merchants: [new MerchantEntity({ id: '22043810' })], }, { id: '7dc4eb4a-fb9a-4c41-b494-c6f5869e7810', source_id: 'SBC', location_id: 64, - method: 'V', - pt_location_id: 20664, + banks: [new BankLocationEntity({ id: '20664', method: 'Bank' })], description: 'PORT HARDY-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5344,14 +5013,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043828, + merchants: [new MerchantEntity({ id: '22043828' })], }, { id: '4deb7c85-4151-43de-9433-4f577053eead', source_id: 'SBC', location_id: 67, - method: 'V', - pt_location_id: 20667, + banks: [new BankLocationEntity({ id: '20667', method: 'Bank' })], description: 'POWELL RIVER-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5360,14 +5028,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043836, + merchants: [new MerchantEntity({ id: '22043836' })], }, { id: '7e41cd2e-48b8-4589-b4b8-c37e7c65afdb', source_id: 'SBC', location_id: 68, - method: 'V', - pt_location_id: 20668, + banks: [new BankLocationEntity({ id: '20668', method: 'Bank' })], description: 'PRINCE GEORGE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5376,14 +5043,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043893, + merchants: [new MerchantEntity({ id: '22043893' })], }, { id: 'da49539f-7ac9-4ab0-adfc-e906203ded8c', source_id: 'SBC', location_id: 69, - method: 'V', - pt_location_id: 20669, + banks: [new BankLocationEntity({ id: '20669', method: 'Bank' })], description: 'PRINCE RUPERT-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5392,14 +5058,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043919, + merchants: [new MerchantEntity({ id: '22043919' })], }, { id: '6ab79027-ccce-44da-a385-e4f2051b42fb', source_id: 'SBC', location_id: 70, - method: 'V', - pt_location_id: 20670, + banks: [new BankLocationEntity({ id: '20670', method: 'Bank' })], description: 'PRINCETON-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5408,14 +5073,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22043984, + merchants: [new MerchantEntity({ id: '22043984' })], }, { id: 'bfbe1cb0-61f0-4b55-9006-696f3ccb2adb', source_id: 'SBC', location_id: 73, - method: 'V', - pt_location_id: 20673, + banks: [new BankLocationEntity({ id: '20673', method: 'Bank' })], description: 'QUEEN CHARLOTTE CITY-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5424,14 +5088,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044008, + merchants: [new MerchantEntity({ id: '22044008' })], }, { id: 'ca0daad2-00fb-4e84-ac45-dd9808e93f24', source_id: 'SBC', location_id: 75, - method: 'V', - pt_location_id: 20675, + banks: [new BankLocationEntity({ id: '20675', method: 'Bank' })], description: 'QUESNEL-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5440,14 +5103,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044164, + merchants: [new MerchantEntity({ id: '22044164' })], }, { id: 'e19cc1a1-69dd-46c8-a6de-14806fdd8260', source_id: 'SBC', location_id: 80, - method: 'V', - pt_location_id: 20680, + banks: [new BankLocationEntity({ id: '20680', method: 'Bank' })], description: 'REVELSTOKE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5456,14 +5118,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044230, + merchants: [new MerchantEntity({ id: '22044230' })], }, { id: 'fc0bd184-ba0d-4105-97e2-8bb515061463', source_id: 'SBC', location_id: 85, - method: 'V', - pt_location_id: 20685, + banks: [new BankLocationEntity({ id: '20685', method: 'Bank' })], description: 'SALMON ARM-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5472,14 +5133,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044255, + merchants: [new MerchantEntity({ id: '22044255' })], }, { id: '73a39996-287d-4e30-8780-091945e020f0', source_id: 'SBC', location_id: 82, - method: 'V', - pt_location_id: 20682, + banks: [new BankLocationEntity({ id: '20682', method: 'Bank' })], description: 'SECHELT-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5488,14 +5148,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044297, + merchants: [new MerchantEntity({ id: '22044297' })], }, { id: 'b3290ce8-15db-41a0-bfa1-6e3cb93b6135', source_id: 'SBC', location_id: 86, - method: 'V', - pt_location_id: 20686, + banks: [new BankLocationEntity({ id: '20686', method: 'Bank' })], description: 'SMITHERS-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5504,14 +5163,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044305, + merchants: [new MerchantEntity({ id: '22044305' })], }, { id: 'e8674944-34d3-40db-8333-8533c21feed4', source_id: 'SBC', location_id: 83, - method: 'V', - pt_location_id: 20683, + banks: [new BankLocationEntity({ id: '20683', method: 'Bank' })], description: 'SPARWOOD-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5520,14 +5178,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044313, + merchants: [new MerchantEntity({ id: '22044313' })], }, { id: '95406746-40f6-4a5a-b65d-008f614138d5', source_id: 'SBC', location_id: 84, - method: 'V', - pt_location_id: 20684, + banks: [new BankLocationEntity({ id: '20684', method: 'Bank' })], description: 'SQUAMISH-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5536,14 +5193,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044362, + merchants: [new MerchantEntity({ id: '22044362' })], }, { id: '76bf1899-025b-4516-8f8c-c9be20206fb4', source_id: 'SBC', location_id: 87, - method: 'V', - pt_location_id: 20687, + banks: [new BankLocationEntity({ id: '20687', method: 'Bank' })], description: 'STEWART-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5552,14 +5208,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044412, + merchants: [new MerchantEntity({ id: '22044412' })], }, { id: '24139a4a-d926-40dc-aa45-0105489f020c', source_id: 'SBC', location_id: 88, - method: 'V', - pt_location_id: 20688, + banks: [new BankLocationEntity({ id: '20688', method: 'Bank' })], description: 'TERRACE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5568,14 +5223,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044438, + merchants: [new MerchantEntity({ id: '22044438' })], }, { id: 'd911f19a-91ab-40e8-9124-e6cbae6cc62c', source_id: 'SBC', location_id: 81, - method: 'V', - pt_location_id: 20681, + banks: [new BankLocationEntity({ id: '20681', method: 'Bank' })], description: 'TRAIL-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5584,14 +5238,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044545, + merchants: [new MerchantEntity({ id: '22044545' })], }, { id: '83606b55-0f8b-4477-a5fb-8fb4f138cfe3', source_id: 'SBC', location_id: 89, - method: 'V', - pt_location_id: 20689, + banks: [new BankLocationEntity({ id: '20689', method: 'Bank' })], description: 'UCLUELET-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5600,14 +5253,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044628, + merchants: [new MerchantEntity({ id: '22044628' })], }, { id: '390ec068-0e22-431f-8e97-e5c499fe2cd4', source_id: 'SBC', location_id: 91, - method: 'V', - pt_location_id: 20691, + banks: [new BankLocationEntity({ id: '20691', method: 'Bank' })], description: 'VALEMOUNT-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5616,14 +5268,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044701, + merchants: [new MerchantEntity({ id: '22044701' })], }, { id: 'ae9c766a-5b84-4d62-8c70-b628bf2f3f2a', source_id: 'SBC', location_id: 92, - method: 'V', - pt_location_id: 20692, + banks: [new BankLocationEntity({ id: '20692', method: 'Bank' })], description: 'VANDERHOOF-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5632,14 +5283,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044750, + merchants: [new MerchantEntity({ id: '22044750' })], }, { id: '264d4e6c-d92a-45ec-9bbb-94e35782282d', source_id: 'SBC', location_id: 93, - method: 'V', - pt_location_id: 20693, + banks: [new BankLocationEntity({ id: '20693', method: 'Bank' })], description: 'VERNON-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5648,14 +5298,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044859, + merchants: [new MerchantEntity({ id: '22044859' })], }, { id: '17d9e554-a74d-4e2c-bedc-ac6c9ba7828e', source_id: 'SBC', location_id: 94, - method: 'V', - pt_location_id: 20698, + banks: [new BankLocationEntity({ id: '20698', method: 'Bank' })], description: 'VICTORIA VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5664,14 +5313,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 20777441, + merchants: [new MerchantEntity({ id: '20777441' })], }, { id: '03e62f42-926d-4205-800a-4179bbcc0603', source_id: 'SBC', location_id: 97, - method: 'V', - pt_location_id: 20697, + banks: [new BankLocationEntity({ id: '20697', method: 'Bank' })], description: 'WILLIAMS LAKE-VISA POS', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5680,14 +5328,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 22044933, + merchants: [new MerchantEntity({ id: '22044933' })], }, { id: '8a530af3-419f-41da-b9cf-48e788e538b1', source_id: 'SBC', location_id: 52, - method: 'V', - pt_location_id: 90520, + banks: [new BankLocationEntity({ id: '90520', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS VISA', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5696,14 +5343,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103846, + merchants: [new MerchantEntity({ id: '24103846' })], }, { id: 'c3b89b80-04a3-4f6a-bc2c-e5de445185d8', source_id: 'SBC', location_id: 62, - method: 'V', - pt_location_id: 90536, + banks: [new BankLocationEntity({ id: '90536', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS VISA', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5712,14 +5358,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103838, + merchants: [new MerchantEntity({ id: '24103838' })], }, { id: '477ab12c-ab10-41d7-ae27-e48dc8978581', source_id: 'SBC', location_id: 53, - method: 'V', - pt_location_id: 90524, + banks: [new BankLocationEntity({ id: '90524', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS VISA', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5728,14 +5373,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103895, + merchants: [new MerchantEntity({ id: '24103895' })], }, { id: '21153def-3d08-45a3-9f02-081ece350dd1', source_id: 'SBC', location_id: 59, - method: 'V', - pt_location_id: 90540, + banks: [new BankLocationEntity({ id: '90540', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS VISA', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5744,14 +5388,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103879, + merchants: [new MerchantEntity({ id: '24103879' })], }, { id: 'dee7c22a-d21e-4586-8bcf-75325821bae7', source_id: 'SBC', location_id: 57, - method: 'V', - pt_location_id: 90532, + banks: [new BankLocationEntity({ id: '90532', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS VISA', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5760,14 +5403,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103861, + merchants: [new MerchantEntity({ id: '24103861' })], }, { id: '6b25fbe2-7360-4317-96f2-8cdf97ce7d2c', source_id: 'SBC', location_id: 57, - method: 'V', - pt_location_id: 90533, + banks: [new BankLocationEntity({ id: '90533', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS VISA', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5776,14 +5418,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103861, + merchants: [new MerchantEntity({ id: '24103861' })], }, { id: 'c1966864-603b-43dc-a72a-d89903e618a2', source_id: 'SBC', location_id: 54, - method: 'V', - pt_location_id: 90528, + banks: [new BankLocationEntity({ id: '90528', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS VISA', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5792,14 +5433,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103853, + merchants: [new MerchantEntity({ id: '24103853' })], }, { id: '50831447-0695-4aac-82d7-bf1ee27995fd', source_id: 'SBC', location_id: 96, - method: 'V', - pt_location_id: 90516, + banks: [new BankLocationEntity({ id: '90516', method: 'Bank' })], description: 'SBC MOBILE OUTREACH POS VISA', program_code: 0, program_desc: 'SERVICE BC VISA POS', @@ -5808,14 +5448,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 24103887, + merchants: [new MerchantEntity({ id: '24103887' })], }, { id: 'bf72302d-cf2d-4883-a636-5647b13b77d3', source_id: 'LABOUR', location_id: 44018, - method: 'V', - pt_location_id: 44018, + banks: [new BankLocationEntity({ id: '44018', method: 'Bank' })], description: 'TALENT AGENCY LICENCING INTERNET VISA', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS BR INTERNET VISA', @@ -5824,14 +5463,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23700609, + merchants: [new MerchantEntity({ id: '23700609' })], }, { id: '7e0ac6ea-39c9-4a68-ba1e-f023a4bda86b', source_id: 'LABOUR', location_id: 44597, - method: 'V', - pt_location_id: 44597, + banks: [new BankLocationEntity({ id: '44597', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS ICEPAY VISA', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS ICEPAY VISA', @@ -5840,14 +5478,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23956607, + merchants: [new MerchantEntity({ id: '23956607' })], }, { id: 'e35eb1cd-ee90-4d30-875d-da211bb6b685', source_id: 'LABOUR', location_id: 44602, - method: 'V', - pt_location_id: 44602, + banks: [new BankLocationEntity({ id: '44602', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS TRUST ICEPAY VISA', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS ICEPAY VISA', @@ -5856,14 +5493,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23956599, + merchants: [new MerchantEntity({ id: '23956599' })], }, { id: '590437cf-e41d-4e44-abf3-d109d4813d61', source_id: 'LABOUR', location_id: 44017, - method: 'PV', - pt_location_id: 44017, + banks: [new BankLocationEntity({ id: '44017', method: 'Bank' })], description: 'EMPLOYMENT STDS BR VICTORIA-VSA/DBT POS', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS BR VISA\\DEBIT POS', @@ -5872,14 +5508,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23302208, + merchants: [new MerchantEntity({ id: '23302208' })], }, { id: 'f5f78b55-b937-4dd7-a139-574ac62db6d6', source_id: 'LABOUR', location_id: 44019, - method: 'PV', - pt_location_id: 44019, + banks: [new BankLocationEntity({ id: '44019', method: 'Bank' })], description: 'TALENT AGENCY LICENCING INT VISA DEBIT', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS BR INT VISA DEBIT', @@ -5888,14 +5523,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23700609, + merchants: [new MerchantEntity({ id: '23700609' })], }, { id: 'c659672e-bffe-49a8-8875-27acf2023f37', source_id: 'LABOUR', location_id: 44598, - method: 'PV', - pt_location_id: 44598, + banks: [new BankLocationEntity({ id: '44598', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS ICEPAY VISA DEBIT', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS ICEPAY VISADEBIT', @@ -5904,14 +5538,13 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23956607, + merchants: [new MerchantEntity({ id: '23956607' })], }, { id: '48fa6dcd-8af4-438b-ac48-97028e6d1300', source_id: 'LABOUR', location_id: 44603, - method: 'PV', - pt_location_id: 44603, + banks: [new BankLocationEntity({ id: '44603', method: 'Bank' })], description: 'EMPLOYMENT STANDARDS TRUST ICEPAY VSADBT', program_code: 0, program_desc: 'EMPLOYMENT STANDARDS ICEPAY VISADEBIT', @@ -5920,39 +5553,6 @@ export const locations: LocationEntity[] = [ service_line_code: 0, stob_code: 0, project_code: 0, - merchant_id: 23956599, + merchants: [new MerchantEntity({ id: '23956599' })], }, ]; - -/*eslint-disable */ -export const newLocationList = locations - .filter((itm) => itm.source_id !== 'LABOUR') - .reduce((acc: any, itm: any) => { - const key = itm.location_id; - if (!acc[key]) { - acc[key] = { - ...itm, - source_id: itm.source_id, - location_id: itm.location_id, - description: - locations.find( - (loc) => - loc.location_id === itm.location_id && - loc.method === 'Bank' && - loc.description - )?.description ?? '', - merchant_ids: [], - pt_location_id: locations.find( - (loc) => loc.location_id === itm.location_id && loc.method === 'Bank' - )?.pt_location_id, - }; - } - itm.merchant_id !== 999999999 && - acc[key].merchant_ids.push(itm.merchant_id); - - return acc; - }); - -export const normalizedLocations: NormalizedLocation[] = Array.from( - new Set(Object.values(newLocationList)) -); diff --git a/apps/backend/test/mocks/mocks.ts b/apps/backend/test/mocks/mocks.ts index acdf0d28..95ebe303 100644 --- a/apps/backend/test/mocks/mocks.ts +++ b/apps/backend/test/mocks/mocks.ts @@ -1,3 +1,4 @@ +import { MinistryLocationEntity } from 'src/location/entities'; import { CashDepositMock } from './classes/cash_deposit_mock'; import { PaymentMock } from './classes/payment_mock'; import { POSDepositMock } from './classes/pos_deposit_mock'; @@ -7,18 +8,13 @@ import { generateMetadataMock } from './const/file_metadata_mock'; import { generateLocation } from './const/location_mock'; import { aggregatePayments } from '../unit/reconciliation/helpers'; import { MatchStatus } from '../../src/common/const'; -import { - DateRange, - FileTypes, - Ministries, - NormalizedLocation, -} from '../../src/constants'; +import { DateRange, FileTypes, Ministries } from '../../src/constants'; import { PaymentMethodClassification } from '../../src/constants'; import { AggregatedCashPayment } from '../../src/reconciliation/types'; import { PaymentEntity } from '../../src/transaction/entities'; export class MockData { - public location: NormalizedLocation; + public location: MinistryLocationEntity; public dateRange: DateRange; public program: Ministries; public paymentsMock: PaymentMock[]; diff --git a/apps/backend/test/unit/deposits/cash-deposit.service.spec.ts b/apps/backend/test/unit/deposits/cash-deposit.service.spec.ts index 9080d0e7..f56094ab 100644 --- a/apps/backend/test/unit/deposits/cash-deposit.service.spec.ts +++ b/apps/backend/test/unit/deposits/cash-deposit.service.spec.ts @@ -99,14 +99,14 @@ describe('CashDepositService', () => { await service.findCashDepositsByDate( program, depositDate.maxDate, - location.pt_location_id, + location.banks.map((itm) => itm.bank_id), status ); expect(repository.find).toHaveBeenCalledTimes(1); expect(repository.find).toHaveBeenCalledWith({ where: { - pt_location_id: location.pt_location_id, + pt_location_id: In(location.banks.map((itm) => itm.bank_id)), metadata: { program }, deposit_date: depositDate.maxDate, status: In(status), @@ -121,11 +121,11 @@ describe('CashDepositService', () => { const location = generateLocation(); jest.spyOn(repository, 'find'); - + const banks = location.banks.map((itm) => itm.bank_id); const functionParams = { program, depositDate, - location, + banks, }; const innerFunctionExpectedStatusParams = In(MatchStatusAll); @@ -133,13 +133,13 @@ describe('CashDepositService', () => { await service.findCashDepositsByDate( functionParams.program, functionParams.depositDate, - functionParams.location.pt_location_id + functionParams.banks ); expect(repository.find).toHaveBeenCalledTimes(1); expect(repository.find).toHaveBeenCalledWith({ where: { - pt_location_id: location.pt_location_id, + pt_location_id: In(banks), metadata: { program }, deposit_date: depositDate, status: innerFunctionExpectedStatusParams, @@ -186,14 +186,14 @@ describe('CashDepositService', () => { await service.findCashDepositExceptions( dates.minDate, program, - location.pt_location_id + location.banks.map((itm) => itm.bank_id) ); expect(repository.find).toHaveBeenCalledTimes(1); expect(repository.find).toHaveBeenCalledWith({ where: { - pt_location_id: location.pt_location_id, + pt_location_id: In(location.banks.map((itm) => itm.bank_id)), metadata: { program: program }, deposit_date: LessThanOrEqual(dates.minDate), status: MatchStatus.IN_PROGRESS, diff --git a/apps/backend/test/unit/location/location.service.spec.ts b/apps/backend/test/unit/location/location.service.spec.ts deleted file mode 100644 index ac86834a..00000000 --- a/apps/backend/test/unit/location/location.service.spec.ts +++ /dev/null @@ -1,100 +0,0 @@ -import { Test, TestingModule } from '@nestjs/testing'; -import { getRepositoryToken } from '@nestjs/typeorm'; -import { Repository } from 'typeorm'; -import { locations } from './../../mocks/const/locations'; -import { Ministries } from '../../../src/constants'; -import { - MinistryLocationEntity, - LocationEntity, - BankLocationEntity, - MerchantEntity, -} from '../../../src/location/entities'; -import { LocationService } from '../../../src/location/location.service'; -import { LoggerModule } from '../../../src/logger/logger.module'; - -describe('LocationService', () => { - let service: LocationService; - let ministryLocation: Repository; - - beforeEach(async () => { - const module: TestingModule = await Test.createTestingModule({ - imports: [LoggerModule], - providers: [ - LocationService, - { - provide: getRepositoryToken(MinistryLocationEntity), - useValue: { - find: jest.fn(), - }, - }, - { - provide: getRepositoryToken(LocationEntity), - useValue: { - find: jest.fn(), - }, - }, - { - provide: getRepositoryToken(MerchantEntity), - useValue: { - find: jest.fn(), - }, - }, - { - provide: getRepositoryToken(BankLocationEntity), - useValue: { - find: jest.fn(), - }, - }, - ], - }).compile(); - - service = module.get(LocationService); - ministryLocation = module.get>( - getRepositoryToken(LocationEntity) - ); - }); - - it('should be defined', () => { - expect(service).toBeDefined(); - }); - - it('get merchants by location_id', async () => { - // TODO: fix this test - // const location_ids = [1]; - - const locationSpy = jest - .spyOn(ministryLocation, 'find') - .mockResolvedValue(locations.filter((itm) => itm.location_id === 1)); - - await service.getLocationsBySource(Ministries.SBC); - - expect(locationSpy).toBeCalledWith({ - where: { - source_id: Ministries.SBC, - }, - order: { - location_id: 'ASC', - }, - }); - }); - it('should get locations by source', async () => { - const source = Ministries.SBC; - const expectedResultFromRepo = locations.filter( - (location) => location.source_id === source - ); - - const ministryLocationSpy = jest - .spyOn(ministryLocation, 'find') - .mockResolvedValue(expectedResultFromRepo); - - await service.getLocationsBySource(Ministries.SBC); - expect(ministryLocationSpy).toBeCalledWith({ - where: { - source_id: Ministries.SBC, - }, - order: { - location_id: 'ASC', - }, - }); - }); -}); diff --git a/apps/backend/test/unit/parsing/parse-service.spec.ts b/apps/backend/test/unit/parsing/parse-service.spec.ts index 3ebc2446..c3a63ada 100644 --- a/apps/backend/test/unit/parsing/parse-service.spec.ts +++ b/apps/backend/test/unit/parsing/parse-service.spec.ts @@ -9,6 +9,7 @@ import { FileTypes } from '../../../src/constants'; import { CashDepositService } from '../../../src/deposits/cash-deposit.service'; import { PosDepositService } from '../../../src/deposits/pos-deposit.service'; +import { LocationService } from '../../../src/location/location.service'; import { LoggerModule } from '../../../src/logger/logger.module'; import { FileIngestionRulesEntity } from '../../../src/notification/entities/file-ingestion-rules.entity'; import { ProgramDailyUploadEntity } from '../../../src/notification/entities/program-daily-upload.entity'; @@ -24,6 +25,7 @@ import { PaymentService } from '../../../src/transaction/payment.service'; import { TransactionService } from '../../../src/transaction/transaction.service'; import { FileIngestionRulesMock } from '../../mocks/classes/file_ingestion_rules_mock'; import { FileUploadedMock } from '../../mocks/classes/file_upload_mock'; +import { locations } from '../../mocks/const/locations'; describe('ParseService', () => { let service: ParseService; @@ -67,6 +69,10 @@ describe('ParseService', () => { provide: MailService, useValue: createMock(), }, + { + provide: LocationService, + useValue: createMock(), + }, { provide: PaymentMethodService, useValue: createMock(), @@ -176,7 +182,8 @@ describe('ParseService', () => { ( await service.parseGarmsFile( transactionFile.toString(), - 'sbc/SBC_SALES_2023_03_08_23_17_53.JSON' + 'sbc/SBC_SALES_2023_03_08_23_17_53.JSON', + locations ) ).txnFile[0].total_transaction_amount ).toEqual(100); @@ -189,7 +196,8 @@ describe('ParseService', () => { expect( service.parseGarmsFile( transactionFile.toString(), - 'sbc/SBC_SALES_2023_03_08_23_17_53.JSON' + 'sbc/SBC_SALES_2023_03_08_23_17_53.JSON', + locations ) ).rejects.toThrow(); }); @@ -203,7 +211,8 @@ describe('ParseService', () => { await service.parseTDICashFile( 'bcm/PROD_SBC_F08TDI17_20230309.DAT', 'SBC', - tdi17File + tdi17File, + locations ) ).cashDeposits[0].deposit_amt_curr ).toEqual(558.31); @@ -217,7 +226,8 @@ describe('ParseService', () => { service.parseTDICashFile( 'bcm/PROD_SBC_F08TDI17_20230309.DAT', 'SBC', - tdi17File + tdi17File, + locations ) ).rejects.toThrow(); }); @@ -241,7 +251,8 @@ describe('ParseService', () => { service.parseTDICashFile( 'bcm/PROD_SBC_F08TDI17_20230309.DAT', 'SBC', - Buffer.from(lines.join('\n')) + Buffer.from(lines.join('\n')), + locations ) ).rejects.toThrow(); @@ -255,7 +266,8 @@ describe('ParseService', () => { service.parseTDICashFile( 'bcm/PROD_SBC_F08TDI17_20230309.DAT', 'SBC', - Buffer.from(lines.join('\n')) + Buffer.from(lines.join('\n')), + locations ) ).rejects.toThrow(); }); @@ -269,7 +281,8 @@ describe('ParseService', () => { await service.parseTDICardsFile( 'bcm/PROD_SBC_F08TDI34_20230309.DAT', 'SBC', - tdi34File + tdi34File, + locations ) ).posEntities[0].transaction_amt ).toEqual(17); @@ -283,7 +296,8 @@ describe('ParseService', () => { service.parseTDICardsFile( 'bcm/PROD_SBC_F08TDI34_20230309.DAT', 'SBC', - tdi34File + tdi34File, + locations ) ).rejects.toThrow(); }); @@ -307,7 +321,8 @@ describe('ParseService', () => { service.parseTDICashFile( 'bcm/PROD_SBC_F08TD17_20230309.DAT', 'SBC', - Buffer.from(lines.join('\n')) + Buffer.from(lines.join('\n')), + locations ) ).rejects.toThrow(); @@ -321,7 +336,8 @@ describe('ParseService', () => { service.parseTDICashFile( 'bcm/PROD_SBC_F08TD17_20230309.DAT', 'SBC', - Buffer.from(lines.join('\n')) + Buffer.from(lines.join('\n')), + locations ) ).rejects.toThrow(); }); diff --git a/apps/backend/test/unit/reporting/reporting.service.spec.ts b/apps/backend/test/unit/reporting/reporting.service.spec.ts index f54e673f..1d544b43 100644 --- a/apps/backend/test/unit/reporting/reporting.service.spec.ts +++ b/apps/backend/test/unit/reporting/reporting.service.spec.ts @@ -5,7 +5,7 @@ import { CashDepositService } from './../../../src/deposits/cash-deposit.service import { POSDepositEntity } from './../../../src/deposits/entities/pos-deposit.entity'; import { PosDepositService } from './../../../src/deposits/pos-deposit.service'; import { ExcelExportService } from './../../../src/excelexport/excelexport.service'; -import { LocationEntity } from './../../../src/location/entities/master-location-data.entity'; +import { MasterLocationEntity } from './../../../src/location/entities/master-location-data.entity'; import { LocationService } from './../../../src/location/location.service'; import { S3ManagerService } from './../../../src/s3-manager/s3-manager.service'; import { PaymentEntity } from './../../../src/transaction/entities/payment.entity'; @@ -66,7 +66,7 @@ describe('ReportingService', () => { useValue: mockedRepo, }, { - provide: getRepositoryToken(LocationEntity), + provide: getRepositoryToken(MasterLocationEntity), useValue: mockedRepo, }, { diff --git a/apps/backend/test/unit/transaction/payment.entity.spec.ts b/apps/backend/test/unit/transaction/payment.entity.spec.ts deleted file mode 100644 index 69d23900..00000000 --- a/apps/backend/test/unit/transaction/payment.entity.spec.ts +++ /dev/null @@ -1,75 +0,0 @@ -import { PaymentEntity } from './../../../src/transaction/entities/payment.entity'; - -import { MatchStatus } from '../../../src/common/const'; -import { FileTypes, PaymentMethodClassification } from '../../../src/constants'; - -test('Payment Entity Instance', () => { - const payment: PaymentEntity = new PaymentEntity({ - id: '979532dd-29d9-4a07-81da-291f074b35e4', - amount: 5.25, - foreign_currency_amount: undefined, - currency: 'CAD', - exchange_rate: 0.0, - channel: undefined, - status: MatchStatus.MATCH, - card_no: undefined, - merchant_id: undefined, - device_id: undefined, - invoice_no: undefined, - tran_id: undefined, - order_no: undefined, - approval_code: undefined, - payment_method: { - method: 'P', - classification: PaymentMethodClassification.POS, - description: 'Debit', - sbc_code: 17, - }, - transaction: { - payments: [], - created_at: new Date('2023-01-10T18:45:04.000Z'), - transaction_id: '20230109-00001-1000005', - transaction_date: '2023-01-09', - transaction_time: '18:53:55Z', - fiscal_close_date: '2023-01-09', - parsed_on: '2023-01-09', - total_transaction_amount: 161.81, - void_indicator: false, - source_id: 'SBC', - location_id: 1, - migrated: true, - source_file_name: 'sbc/SBC_SALES_2023_01_10_18_45_04.JSON', - }, - cash_deposit_match: undefined, - pos_deposit_match: { - timestamp: new Date('2023-04-03T22:47:00Z'), - id: '540d73d8-5d81-4108-9862-4559f8ad926b', - status: MatchStatus.MATCH, - source_file_type: FileTypes.TDI34, - merchant_id: 22044859, - card_id: '***************5751', - transaction_amt: 17.0, - transaction_date: '2023-04-03', - transaction_time: '22:47:00Z', - terminal_no: 'GA2204485903', - settlement_date: '2023-04-03', - transaction_code: 10, - - payment_method: { - method: 'P', - classification: PaymentMethodClassification.POS, - description: 'Debit', - sbc_code: 17, - }, - metadata: { - created_at: new Date('2023-04-28T07:35:13.155Z'), - program: 'SBC', - source_file_name: 'bcm/PROD_SBC_F08TDI34_20230404.DAT', - source_file_line: 1550, - source_file_length: 2116, - parsed_on: '2023-01-09', - }, - }, - }); - expect(payment).toBeInstanceOf(PaymentEntity); -}); diff --git a/docs/reconciliation.md b/docs/reconciliation.md index d1b80731..faec4a69 100644 --- a/docs/reconciliation.md +++ b/docs/reconciliation.md @@ -35,14 +35,14 @@ To perform reconciliation, you can call the `reconcile` method. This method matc ```typescript async reconcile( - location: NormalizedLocation, + location: MinistryLocationEntity, pendingPayments: PaymentEntity[], pendingDeposits: POSDepositEntity[], currentDate: Date ): Promise; ``` -- `location`: The location for which reconciliation is being performed, represented as a `NormalizedLocation` object. +- `location`: The location for which reconciliation is being performed, represented as a `MinistryLocationEntity` object. - `pendingPayments`: An array of pending payment entities (e.g., `PaymentEntity[]`) that need to be matched with deposits. @@ -184,7 +184,7 @@ Payments and deposits match many -> 1 and so the corresponding payments are foun - Payment entry from the payments array of a transaction - payment table - aggregate of payment rows match to one cash_deposit row -- LocationEntity +- MasterLocationEntity - Lookup table to find corresponding location - master_location_data table - cash_deposit pt_location_id will match to a corresponding location_id in this table