Skip to content

Commit

Permalink
Merge pull request #399 from sanger/x1043_add_address_and_region_to_h…
Browse files Browse the repository at this point in the history
…istory_entry

add slot destination address and region to history entry
  • Loading branch information
sabrine33 authored Sep 12, 2023
2 parents 3513afc + 6c86a4b commit 47f5508
Show file tree
Hide file tree
Showing 5 changed files with 2,262 additions and 2,282 deletions.
2 changes: 2 additions & 0 deletions src/graphql/fragments/HistoryEntryFields.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,6 @@ fragment HistoryEntryFields on HistoryEntry {
username
type
workNumber
address
region
}
3 changes: 0 additions & 3 deletions src/graphql/fragments/HistoryFields.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,4 @@ fragment HistoryFields on History {
entries {
...HistoryEntryFields
}
samplePositionResults {
...SamplePositionFields
}
}
21 changes: 3 additions & 18 deletions src/lib/services/historyService.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
import { stanCore } from '../sdk';
import { HistoryTableEntry } from '../../types/stan';
import {
HistoryFieldsFragment,
LabwareFieldsFragment,
SampleFieldsFragment,
SamplePositionFieldsFragment
} from '../../types/sdk';
import { HistoryFieldsFragment, LabwareFieldsFragment, SampleFieldsFragment } from '../../types/sdk';
import { HistoryUrlParams } from '../../pages/History';

/**
Expand All @@ -17,7 +12,6 @@ export async function findHistory(historyProps: HistoryUrlParams): Promise<Array
entries: [],
labware: [],
samples: [],
samplePositionResults: [],
__typename: 'History'
};
if (historyProps.sampleId) {
Expand All @@ -39,19 +33,10 @@ export async function findHistory(historyProps: HistoryUrlParams): Promise<Array

const labwareMap: Map<number, LabwareFieldsFragment> = new Map();
const sampleMap: Map<number, SampleFieldsFragment> = new Map();
const samplePositionMapByOpId: Map<number, Map<number, SamplePositionFieldsFragment>> = new Map();

history.labware.forEach((lw) => labwareMap.set(lw.id, lw));
history.samples.forEach((sample) => sampleMap.set(sample.id, sample));
history.samplePositionResults.forEach((samplePosition) => {
const operationId = samplePosition.operationId;
const sampleId = samplePosition.sampleId;

if (!samplePositionMapByOpId.has(operationId)) {
samplePositionMapByOpId.set(operationId, new Map());
}
samplePositionMapByOpId.get(operationId)?.set(sampleId, samplePosition);
});
return history.entries.map((entry) => {
const sourceLabware = labwareMap.get(entry.sourceLabwareId)!;
const destinationLabware = labwareMap.get(entry.destinationLabwareId)!;
Expand All @@ -72,8 +57,8 @@ export async function findHistory(historyProps: HistoryUrlParams): Promise<Array
username: entry.username,
workNumber: entry.workNumber ?? undefined,
details: entry.details,
address: samplePositionMapByOpId.get(entry.eventId)?.get(entry.sampleId as number)?.address,
sectionPosition: samplePositionMapByOpId.get(entry.eventId)?.get(entry.sampleId as number)?.region
address: entry.address ?? undefined,
sectionPosition: entry.region ?? undefined
};
});
}
7 changes: 4 additions & 3 deletions src/mocks/handlers/historyHandlers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,16 +35,17 @@ export function buildHistory(workNumber?: string): HistoryFieldsFragment {
type: 'Eat',
username: 'user1',
details: ['Taste: Great', 'Monkey: Foo'],
workNumber: workNumber ?? 'SGP1008'
workNumber: workNumber ?? 'SGP1008',
address: 'A1',
region: 'Bottom right'
}
];

return {
__typename: 'History',
samples: [sample],
labware: [sourceLabware, destinationLabware].map(buildLabwareFragment),
entries,
samplePositionResults: []
entries
};
}

Expand Down
Loading

0 comments on commit 47f5508

Please sign in to comment.