forked from ddrilling/asb_cloud_front
Доработан график D3HorizontalChart
This commit is contained in:
parent
a574b78cdb
commit
fee0849ea4
@ -1,4 +1,4 @@
|
|||||||
import { memo, useCallback, useEffect, useMemo, useState } from 'react'
|
import { memo, useEffect, useMemo, useState } from 'react'
|
||||||
import { Select } from 'antd'
|
import { Select } from 'antd'
|
||||||
import moment from 'moment'
|
import moment from 'moment'
|
||||||
|
|
||||||
@ -21,8 +21,6 @@ const subsystemColors = [
|
|||||||
'#ecf0f1', '#bdc3c7', '#95a5a6', '#7f8c8d',
|
'#ecf0f1', '#bdc3c7', '#95a5a6', '#7f8c8d',
|
||||||
]
|
]
|
||||||
|
|
||||||
const tableStyle = { background: '#FAFAFA', fontSize: '16px', fontWeight: '600', transition: 'all 0.2s ease-out' }
|
|
||||||
|
|
||||||
const tableColumns = [
|
const tableColumns = [
|
||||||
makeColumn('Цвет', 'color', { width: 60, render: (backgroundColor) => (
|
makeColumn('Цвет', 'color', { width: 60, render: (backgroundColor) => (
|
||||||
<div className={'table_color'} style={{ backgroundColor }} />
|
<div className={'table_color'} style={{ backgroundColor }} />
|
||||||
@ -47,7 +45,6 @@ export const OperationTime = memo(() => {
|
|||||||
const [showLoader, setShowLoader] = useState(false)
|
const [showLoader, setShowLoader] = useState(false)
|
||||||
const [data, setData] = useState([])
|
const [data, setData] = useState([])
|
||||||
const [selected, setSelected] = useState([])
|
const [selected, setSelected] = useState([])
|
||||||
const [selectedSubsystem, setSelectedSubsystem] = useState(null)
|
|
||||||
const [dateRange, setDateRange] = useState([])
|
const [dateRange, setDateRange] = useState([])
|
||||||
const [well] = useWell()
|
const [well] = useWell()
|
||||||
|
|
||||||
@ -62,29 +59,6 @@ export const OperationTime = memo(() => {
|
|||||||
color: d.color,
|
color: d.color,
|
||||||
})), [selectedData])
|
})), [selectedData])
|
||||||
|
|
||||||
const onRow = useCallback((item) => {
|
|
||||||
const out = {
|
|
||||||
onMouseEnter: () => setSelectedSubsystem(item.subsystemName),
|
|
||||||
onMouseLeave: () => setSelectedSubsystem(null),
|
|
||||||
}
|
|
||||||
|
|
||||||
if (item.subsystemName === selectedSubsystem) {
|
|
||||||
out.style = tableStyle
|
|
||||||
}
|
|
||||||
|
|
||||||
return out
|
|
||||||
}, [selectedSubsystem])
|
|
||||||
|
|
||||||
const onMouseOver = useCallback((_, d) => setSelectedSubsystem(d.name), [])
|
|
||||||
|
|
||||||
const onMouseOut = useCallback(() => setSelectedSubsystem(null), [])
|
|
||||||
|
|
||||||
const afterDraw = useCallback(selection => {
|
|
||||||
selection.on('mouseover', onMouseOver)
|
|
||||||
.on('mouseout', onMouseOut)
|
|
||||||
.classed('selected_graph_column', d => d.name === selectedSubsystem)
|
|
||||||
}, [onMouseOver, onMouseOut, selectedSubsystem])
|
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
invokeWebApiWrapperAsync(
|
invokeWebApiWrapperAsync(
|
||||||
async () => {
|
async () => {
|
||||||
@ -134,7 +108,6 @@ export const OperationTime = memo(() => {
|
|||||||
colors={subsystemColors}
|
colors={subsystemColors}
|
||||||
width={'100%'}
|
width={'100%'}
|
||||||
height={'50vh'}
|
height={'50vh'}
|
||||||
afterDraw={afterDraw}
|
|
||||||
/>
|
/>
|
||||||
<Table
|
<Table
|
||||||
bordered
|
bordered
|
||||||
@ -143,7 +116,6 @@ export const OperationTime = memo(() => {
|
|||||||
dataSource={selectedData}
|
dataSource={selectedData}
|
||||||
scroll={{ y: '25vh', x: true }}
|
scroll={{ y: '25vh', x: true }}
|
||||||
pagination={false}
|
pagination={false}
|
||||||
onRow={onRow}
|
|
||||||
/>
|
/>
|
||||||
</LoaderPortal>
|
</LoaderPortal>
|
||||||
)
|
)
|
||||||
|
@ -1,8 +1,3 @@
|
|||||||
.table_color {
|
.table_color {
|
||||||
padding: 5px 0;
|
padding: 5px 0;
|
||||||
}
|
|
||||||
|
|
||||||
.selected_graph_column {
|
|
||||||
filter: drop-shadow(0px 2px 2px rgba(0, 0, 0, .6));
|
|
||||||
transition: all 0.2s ease-out
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user