Bind series data
This commit is contained in:
parent
73c8786a64
commit
b5cd7bb0b7
@ -21,6 +21,8 @@ import {
|
|||||||
StudyListFilter,
|
StudyListFilter,
|
||||||
} from '@ohif/ui';
|
} from '@ohif/ui';
|
||||||
|
|
||||||
|
const seriesInStudiesMap = new Map();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO:
|
* TODO:
|
||||||
* - debounce `setFilterValues` (150ms?)
|
* - debounce `setFilterValues` (150ms?)
|
||||||
@ -77,7 +79,7 @@ function StudyListContainer({ history, data: studies, dataSource }) {
|
|||||||
});
|
});
|
||||||
// ~ Rows & Studies
|
// ~ Rows & Studies
|
||||||
const [expandedRows, setExpandedRows] = useState([]);
|
const [expandedRows, setExpandedRows] = useState([]);
|
||||||
const [seriesInStudies, setSeriesInStudies] = useState({});
|
const [studiesWithSeriesData, setStudiesWithSeriesData] = useState([]);
|
||||||
const numOfStudies = studies.length;
|
const numOfStudies = studies.length;
|
||||||
const totalPages = Math.floor(numOfStudies / resultsPerPage);
|
const totalPages = Math.floor(numOfStudies / resultsPerPage);
|
||||||
|
|
||||||
@ -185,6 +187,7 @@ function StudyListContainer({ history, data: studies, dataSource }) {
|
|||||||
return filterValues[name] !== defaultFilterValues[name];
|
return filterValues[name] !== defaultFilterValues[name];
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
const tableDataSource = sortedStudies.map((study, key) => {
|
||||||
const rowKey = key + 1;
|
const rowKey = key + 1;
|
||||||
const isExpanded = expandedRows.some(k => k === rowKey);
|
const isExpanded = expandedRows.some(k => k === rowKey);
|
||||||
const {
|
const {
|
||||||
@ -225,7 +228,6 @@ function StudyListContainer({ history, data: studies, dataSource }) {
|
|||||||
moment(date, ['YYYYMMDD', 'YYYY.MM.DD'], true).isValid() &&
|
moment(date, ['YYYYMMDD', 'YYYY.MM.DD'], true).isValid() &&
|
||||||
moment(date, ['YYYYMMDD', 'YYYY.MM.DD']).format(
|
moment(date, ['YYYYMMDD', 'YYYY.MM.DD']).format(
|
||||||
'MMM-DD-YYYY'
|
'MMM-DD-YYYY'
|
||||||
const tableDataSource = sortedStudies.map((study, key) => {
|
|
||||||
)}
|
)}
|
||||||
</span>
|
</span>
|
||||||
{time && (
|
{time && (
|
||||||
@ -237,12 +239,9 @@ function StudyListContainer({ history, data: studies, dataSource }) {
|
|||||||
'HHmmss',
|
'HHmmss',
|
||||||
'HHmmss.SSS',
|
'HHmmss.SSS',
|
||||||
]).isValid() &&
|
]).isValid() &&
|
||||||
moment(time, [
|
moment(time, ['HH', 'HHmm', 'HHmmss', 'HHmmss.SSS']).format(
|
||||||
'HH',
|
'hh:mm A'
|
||||||
'HHmm',
|
)}
|
||||||
'HHmmss',
|
|
||||||
'HHmmss.SSS',
|
|
||||||
]).format('hh:mm A')}
|
|
||||||
</span>
|
</span>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
@ -295,8 +294,8 @@ function StudyListContainer({ history, data: studies, dataSource }) {
|
|||||||
instances: 'Instances',
|
instances: 'Instances',
|
||||||
}}
|
}}
|
||||||
seriesTableDataSource={
|
seriesTableDataSource={
|
||||||
seriesInStudies[studyInstanceUid]
|
seriesInStudiesMap.has(studyInstanceUid)
|
||||||
? seriesInStudies[studyInstanceUid].map(s => {
|
? seriesInStudiesMap.get(studyInstanceUid).map(s => {
|
||||||
return {
|
return {
|
||||||
description: s.description || '(empty)',
|
description: s.description || '(empty)',
|
||||||
seriesNumber: s.seriesNumber || '',
|
seriesNumber: s.seriesNumber || '',
|
||||||
@ -309,39 +308,21 @@ function StudyListContainer({ history, data: studies, dataSource }) {
|
|||||||
>
|
>
|
||||||
<Button
|
<Button
|
||||||
rounded="full"
|
rounded="full"
|
||||||
variant="contained"
|
variant="outlined"
|
||||||
className="mr-4 font-bold"
|
disabled={true}
|
||||||
endIcon={
|
endIcon={<Icon name="launch-info" />}
|
||||||
<Icon name="launch-arrow" style={{ color: '#21a7c6' }} />
|
className="font-bold"
|
||||||
}
|
|
||||||
>
|
>
|
||||||
<Link to="/viewer/123">Basic Viewer</Link>
|
Comparison
|
||||||
</Button>
|
|
||||||
<Button
|
|
||||||
rounded="full"
|
|
||||||
variant="contained"
|
|
||||||
className="mr-4 font-bold"
|
|
||||||
endIcon={
|
|
||||||
<Icon name="launch-arrow" style={{ color: '#21a7c6' }} />
|
|
||||||
}
|
|
||||||
>
|
|
||||||
<Link to="/viewer/123">Segmentation</Link>
|
|
||||||
</Button>
|
</Button>
|
||||||
<Button
|
<Button
|
||||||
rounded="full"
|
rounded="full"
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
endIcon={<Icon name="launch-info" />}
|
endIcon={<Icon name="launch-info" />}
|
||||||
className="font-bold"
|
className="font-bold ml-4"
|
||||||
>
|
>
|
||||||
Module 3
|
View: Segmentation
|
||||||
</Button>
|
</Button>
|
||||||
<div className="ml-5 text-lg text-common-bright inline-flex items-center">
|
|
||||||
<Icon
|
|
||||||
name="notificationwarning-diamond"
|
|
||||||
className="mr-2 w-5 h-5"
|
|
||||||
/>
|
|
||||||
Feedback text lorem ipsum dolor sit amet
|
|
||||||
</div>
|
|
||||||
</StudyListExpandedRow>
|
</StudyListExpandedRow>
|
||||||
),
|
),
|
||||||
onClickRow: () =>
|
onClickRow: () =>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user