DiamondLightSource / DiamondLightSource/mx-daq-ui
I24 Serial: Allow sample selection
- Dominant language
- TypeScript
- Stars
- 1
- Forks
- 1
- Avg merge
- 23h 4m
- Merged PRs (30d)
- 8
Description
The I24 Serial collect UI should allow the user to select which sample-protein-crystal is being collected. This crystal should be associated with the data collection as a BLSample, for sample grouping and analysis (metadata e.g. space group/unit cell) purposes. This list should be auto-populated based on the currently selected visit/proposal.
There are added complications about how to handle metadata about whether these shot crystal populations are actually comparable (e.g. pump-probe, ligand injection experiments) but that can probably be handled as downstream work.
### Dependent work
- Deciding how to tie this to database representation e.g. exactly what is listed
- Allowing users/beamline staff to register these representations
- Working out what needs to be created in the database for each collection (e.g. should a container be automatically generated for each sample for each collection).
Currently the "Sample" field linked on an individual collection is a _specific_ instance of e.g. a single crystal, which exists on a single container (puck), which was shipped in a dewer.
```mermaid
erDiagram
DataCollection }o--o| BLSample : Has
BLSample }o--o| Crystal : Is
Crystal }o--|| Protein : Is
BLSample }o--o| Container : Inside
Container }o--o| Dewer : Inside
```
The synchweb interface for registering these is heavily tied to the user-registering-for-shipping workflow and might not be fit-for-purpose for what we want to do here. A Beamline-scientist-runnable way to register whatever construction we want for this would be acceptable.
### Acceptance Criteria
- A selector field that lets the user specify what is being shot.
- This field is automatically populated from the database based on the currently selected visit.
- When data collections are made, it has an associated sample that maps to this selection.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.