Skip to content

Commit

Permalink
converted references over to RA.
Browse files Browse the repository at this point in the history
  • Loading branch information
Morgul committed May 21, 2024
1 parent fe6672e commit 0b56d7a
Show file tree
Hide file tree
Showing 8 changed files with 93 additions and 127 deletions.
22 changes: 0 additions & 22 deletions src/server/decoders/reference.ts

This file was deleted.

21 changes: 21 additions & 0 deletions src/server/managers/reference.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
//----------------------------------------------------------------------------------------------------------------------
// ReferenceManager
//----------------------------------------------------------------------------------------------------------------------

// Models
import { Reference } from '../../common/interfaces/models/reference';

// Resource Access
import * as referenceRA from '../resource-access/reference';

// Utilities
import { FilterToken } from '../routes/utils';

//----------------------------------------------------------------------------------------------------------------------

export async function list(filters : Record<string, FilterToken>, tableName : string) : Promise<Reference[]>
{
return referenceRA.list(filters, tableName);
}

//----------------------------------------------------------------------------------------------------------------------
38 changes: 0 additions & 38 deletions src/server/managers/references.ts

This file was deleted.

63 changes: 0 additions & 63 deletions src/server/models/reference.ts

This file was deleted.

33 changes: 33 additions & 0 deletions src/server/resource-access/reference.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//----------------------------------------------------------------------------------------------------------------------
// Reference Resource Access
//----------------------------------------------------------------------------------------------------------------------

// Models
import { Reference } from '../../common/interfaces/models/reference';

// Transforms
import * as ReferenceTrans from './transforms/reference';

// Utils
import { isEmpty } from '../utils/misc';
import { getDB } from '../utils/database';
import { applyFilters } from '../knex/utils';
import { FilterToken } from '../routes/utils';

//----------------------------------------------------------------------------------------------------------------------

export async function list(filters : Record<string, FilterToken>, tableName : string) : Promise<Reference[]>
{
const db = await getDB();
let query = db(tableName)
.select(`${ tableName }.name`, `${ tableName }.abbr`, `${ tableName }.product_code as productCode`);

if(filters && !isEmpty(filters))
{
query = applyFilters(query, filters);
}

return (await query).map(ReferenceTrans.fromDB);
}

//----------------------------------------------------------------------------------------------------------------------
35 changes: 35 additions & 0 deletions src/server/resource-access/transforms/reference.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
// ---------------------------------------------------------------------------------------------------------------------
// Reference Database Transform
// ---------------------------------------------------------------------------------------------------------------------

import { Reference } from '../../../common/interfaces/models/reference';

// ---------------------------------------------------------------------------------------------------------------------

export interface ReferenceDBSchema {
abbr : string;
name : string;
productCode : string;
}

// ---------------------------------------------------------------------------------------------------------------------

export function toDB(reference : Reference) : ReferenceDBSchema
{
return {
abbr: reference.abbr,
name: reference.name,
productCode: reference.productCode
};
}

export function fromDB(reference : ReferenceDBSchema) : Reference
{
return {
abbr: reference.abbr,
name: reference.name,
productCode: reference.productCode
};
}

// ---------------------------------------------------------------------------------------------------------------------
4 changes: 2 additions & 2 deletions src/server/routes/systems/eote.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import express from 'express';

// Managers
import refMan from '../../managers/references';
import * as refMan from '../../managers/reference';

// Utils
import { buildSupplementRoute } from './utils/supplement';
Expand Down Expand Up @@ -34,7 +34,7 @@ router.get('/references', async(req, resp) =>
{
const query = convertQueryToRecord(req);
const filters = parseQuery(query);
resp.json(await refMan.getFiltered(filters, 'eote_reference'));
resp.json(await refMan.list(filters, 'eote_reference'));
});

//----------------------------------------------------------------------------------------------------------------------
Expand Down
4 changes: 2 additions & 2 deletions src/server/routes/systems/genesys.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import express from 'express';

// Managers
import refMan from '../../managers/references';
import * as refMan from '../../managers/reference';

// Utils
import { buildSupplementRoute } from './utils/supplement';
Expand Down Expand Up @@ -34,7 +34,7 @@ router.get('/references', async(req, resp) =>
{
const query = convertQueryToRecord(req);
const filters = parseQuery(query);
resp.json(await refMan.getFiltered(filters, 'genesys_reference'));
resp.json(await refMan.list(filters, 'genesys_reference'));
});

//----------------------------------------------------------------------------------------------------------------------
Expand Down

0 comments on commit 0b56d7a

Please sign in to comment.