Исправлено отображение строк в таблицах во вкладке Измерения

This commit is contained in:
ts_salikhov 2022-09-05 14:51:43 +04:00
parent aceedd8dee
commit fbe86e23f6
6 changed files with 127 additions and 131 deletions

View File

@ -21,7 +21,7 @@ import '@styles/index.css'
import '@styles/measure.css' import '@styles/measure.css'
const createEditingColumns = (cols, renderDelegate) => const createEditingColumns = (cols, renderDelegate) =>
cols.map(col => ({ render: renderDelegate, ...col })) cols.map(col => col.map(col => ({ render: renderDelegate, ...col })))
const disabled = !hasPermission('Measure.edit') const disabled = !hasPermission('Measure.edit')
@ -156,7 +156,7 @@ export const MeasureTable = memo(({ group, updateMeasuresFunc, additionalButtons
<div className={'w-100'}> <div className={'w-100'}>
<LoaderPortal show={showLoader}> <LoaderPortal show={showLoader}>
<Form form={measuresForm} onFinish={handleSubmitMeasuresForm}> <Form form={measuresForm} onFinish={handleSubmitMeasuresForm}>
<View item={displayedValues?.data ?? {}} columns={editingColumns} rowsInColumn={group.rowsInColumn}/> <View item={displayedValues?.data ?? {}} columns={editingColumns} />
</Form> </Form>
</LoaderPortal> </LoaderPortal>
</div> </div>

View File

@ -6,56 +6,49 @@ import { Grid, GridItem } from '@components/Grid'
import '@styles/index.css' import '@styles/index.css'
import '@styles/measure.css' import '@styles/measure.css'
export const View = memo(({ columns, item, rowsInColumn }) => { export const View = memo(({ columns, item }) => !item || !columns?.length ? (
let rowPosition = 0
let columnPosition = 1
return !item || !columns?.length ? (
<Empty key={'empty'} image={Empty.PRESENTED_IMAGE_SIMPLE} /> <Empty key={'empty'} image={Empty.PRESENTED_IMAGE_SIMPLE} />
) : ( ) : (
<Grid> <Grid>
{columns.map((column, i) => { {columns.map((cols, j) => {
if (i === rowsInColumn.first) { let rowPosition = 0
columnPosition = 3 let columnPosition = 1 + j * 2
rowPosition = 0 return cols.map((column) => {
} else if (i === rowsInColumn.second) { rowPosition++
columnPosition = 5 return (
rowPosition = 0 <Fragment key={column.key}>
} <GridItem
rowPosition++
return (
<Fragment key={i}>
<GridItem
key={column.dataIndex}
row={rowPosition}
col={columnPosition}
className={'measure-column-header'}
>
{column.title}
</GridItem>
<GridItem
key={column.title}
row={rowPosition}
col={columnPosition + 1}
className={'measure-column-value'}
style={{ padding: 0 }}
>
{column.render ? (
<Form.Item
key={column.dataIndex} key={column.dataIndex}
name={column.dataIndex} row={rowPosition}
style={{ margin: 0 }} col={columnPosition}
className={'measure-column-header'}
> >
{column.render(item[column.dataIndex])} {column.title}
</Form.Item> </GridItem>
) : (
<p key={column.title} className={'m-5px'}> <GridItem
{item[column.dataIndex]} key={column.title}
</p> row={rowPosition}
)} col={columnPosition + 1}
</GridItem> className={'measure-column-value'}
</Fragment> style={{ padding: 0 }}
)})} >
{column.render ? (
<Form.Item
key={column.dataIndex}
name={column.dataIndex}
style={{ margin: 0 }}
>
{column.render(item[column.dataIndex])}
</Form.Item>
) : (
<p key={column.title} className={'m-5px'}>
{item[column.dataIndex]}
</p>
)}
</GridItem>
</Fragment>
)})
}).flat()}
</Grid> </Grid>
)}) ))

View File

@ -3,34 +3,40 @@ import { makeColumn } from '@components/Table'
import { numericColumnOptions, textColumnOptions } from './columnsCommon' import { numericColumnOptions, textColumnOptions } from './columnsCommon'
export const columnsDrillingFluid = [ export const columnsDrillingFluid = [
makeColumn('Наименование', 'name', textColumnOptions), [
makeColumn('Температура, °C', 'temperature', numericColumnOptions), makeColumn('Наименование', 'name', textColumnOptions),
makeColumn('Плотность, г/см³', 'density', numericColumnOptions), makeColumn('Температура, °C', 'temperature', numericColumnOptions),
makeColumn('Усл. вязкость, сек', 'conditionalViscosity', numericColumnOptions), makeColumn('Плотность, г/см³', 'density', numericColumnOptions),
makeColumn('R300', 'r300', numericColumnOptions), makeColumn('Усл. вязкость, сек', 'conditionalViscosity', numericColumnOptions),
makeColumn('R600', 'r600', numericColumnOptions), makeColumn('R300', 'r300', numericColumnOptions),
makeColumn('R3/R6', 'r3r6', numericColumnOptions), makeColumn('R600', 'r600', numericColumnOptions),
makeColumn('ДНС, дПа', 'dnsDpa', numericColumnOptions), makeColumn('R3/R6', 'r3r6', numericColumnOptions),
makeColumn('Пластич. вязкость, сПз', 'plasticViscocity', numericColumnOptions), makeColumn('ДНС, дПа', 'dnsDpa', numericColumnOptions),
makeColumn('СНС, дПа', 'snsDpa', numericColumnOptions), makeColumn('Пластич. вязкость, сПз', 'plasticViscocity', numericColumnOptions),
makeColumn('R3/R6 49С', 'r3r649С', numericColumnOptions), makeColumn('СНС, дПа', 'snsDpa', numericColumnOptions),
makeColumn('ДНС 49С, дПа', 'dns49Cdpa', numericColumnOptions), ],
makeColumn('Пластич. вязкость 49С, сПз', 'plasticViscocity49c', numericColumnOptions), [
makeColumn('СНС 49С, дПа', 'sns49Cdpa', numericColumnOptions), makeColumn('R3/R6 49С', 'r3r649С', numericColumnOptions),
makeColumn('МВТ, кг/м³', 'mbt', numericColumnOptions), makeColumn('ДНС 49С, дПа', 'dns49Cdpa', numericColumnOptions),
makeColumn('Песок, %', 'sand', numericColumnOptions), makeColumn('Пластич. вязкость 49С, сПз', 'plasticViscocity49c', numericColumnOptions),
makeColumn('Фильтрация, см³/30мин', 'filtering', numericColumnOptions), makeColumn('СНС 49С, дПа', 'sns49Cdpa', numericColumnOptions),
makeColumn('Корка, мм', 'crust', numericColumnOptions), makeColumn('МВТ, кг/м³', 'mbt', numericColumnOptions),
makeColumn('KTK', 'ktk', numericColumnOptions), makeColumn('Песок, %', 'sand', numericColumnOptions),
makeColumn('pH', 'ph', numericColumnOptions), makeColumn('Фильтрация, см³/30мин', 'filtering', numericColumnOptions),
makeColumn('Жесткость, мг/л', 'hardness', numericColumnOptions), makeColumn('Корка, мм', 'crust', numericColumnOptions),
makeColumn('Хлориды, мг/л', 'chlorides', numericColumnOptions), makeColumn('KTK', 'ktk', numericColumnOptions),
makeColumn('PF', 'pf', numericColumnOptions), ],
makeColumn('Mf', 'mf', numericColumnOptions), [
makeColumn('Pm', 'pm', numericColumnOptions), makeColumn('pH', 'ph', numericColumnOptions),
makeColumn('Твердая фаза раствора, %', 'fluidSolidPhase', numericColumnOptions), makeColumn('Жесткость, мг/л', 'hardness', numericColumnOptions),
makeColumn('Смазка, %', 'grease', numericColumnOptions), makeColumn('Хлориды, мг/л', 'chlorides', numericColumnOptions),
makeColumn('Карбонат кальция, кг/м³', 'calciumCarbonate', numericColumnOptions), makeColumn('PF', 'pf', numericColumnOptions),
makeColumn('Mf', 'mf', numericColumnOptions),
makeColumn('Pm', 'pm', numericColumnOptions),
makeColumn('Твердая фаза раствора, %', 'fluidSolidPhase', numericColumnOptions),
makeColumn('Смазка, %', 'grease', numericColumnOptions),
makeColumn('Карбонат кальция, кг/м³', 'calciumCarbonate', numericColumnOptions),
],
] ]
export const drillingFluidDefaultData = { export const drillingFluidDefaultData = {

View File

@ -20,31 +20,16 @@ const defaultData = [
title: 'Замер бурового раствора', title: 'Замер бурового раствора',
columns: columnsDrillingFluid, columns: columnsDrillingFluid,
defaultValue: drillingFluidDefaultData, defaultValue: drillingFluidDefaultData,
rowsInColumn: {
first: 10,
second: 19,
third: 28,
},
}, { }, {
idCategory: 2, idCategory: 2,
title: 'Шламограмма', title: 'Шламограмма',
columns: columnsMudDiagram, columns: columnsMudDiagram,
defaultValue: mudDiagramDefaultData, defaultValue: mudDiagramDefaultData,
rowsInColumn: {
first: 6,
second: 15,
third: 22,
},
}, { }, {
idCategory: 3, idCategory: 3,
title: 'ННБ', title: 'ННБ',
columns: columnsNnb, columns: columnsNnb,
defaultValue: nnbDefaultData, defaultValue: nnbDefaultData,
rowsInColumn: {
first: 6,
second: 12,
third: 17,
},
additionalButtons: (group, idx, onClick) => (isEditing) => isEditing ? null : ( additionalButtons: (group, idx, onClick) => (isEditing) => isEditing ? null : (
<Button <Button
key={'table'} key={'table'}

View File

@ -3,28 +3,34 @@ import { makeColumn } from '@components/Table'
import { numericColumnOptions, textColumnOptions } from './columnsCommon' import { numericColumnOptions, textColumnOptions } from './columnsCommon'
export const columnsMudDiagram = [ export const columnsMudDiagram = [
makeColumn('N пробы', 'probeNumber', numericColumnOptions), [
makeColumn('Глубина отбора пробы', 'probeExtractionDepth', numericColumnOptions), makeColumn('N пробы', 'probeNumber', numericColumnOptions),
makeColumn('Песчаник (%)', 'sandstone', numericColumnOptions), makeColumn('Глубина отбора пробы', 'probeExtractionDepth', numericColumnOptions),
makeColumn('Алевролит (%)', 'siltstone', numericColumnOptions), makeColumn('Песчаник (%)', 'sandstone', numericColumnOptions),
makeColumn('Аргиллит (%)', 'argillit', numericColumnOptions), makeColumn('Алевролит (%)', 'siltstone', numericColumnOptions),
makeColumn('Аргиллит бит. (%)', 'brokenArgillit', numericColumnOptions), makeColumn('Аргиллит (%)', 'argillit', numericColumnOptions),
makeColumn('Уголь (%)', 'coal', numericColumnOptions), makeColumn('Аргиллит бит. (%)', 'brokenArgillit', numericColumnOptions),
makeColumn('Песок (%)', 'sand', numericColumnOptions), ],
makeColumn('Глина (%)', 'clay', numericColumnOptions), [
makeColumn('Известняк (%)', 'camstone', numericColumnOptions), makeColumn('Уголь (%)', 'coal', numericColumnOptions),
makeColumn('Цемент (%)', 'cement', numericColumnOptions), makeColumn('Песок (%)', 'sand', numericColumnOptions),
makeColumn('Краткое описание', 'summary', textColumnOptions), makeColumn('Глина (%)', 'clay', numericColumnOptions),
makeColumn('ЛБА бурового раствора', 'drillingMud', numericColumnOptions), makeColumn('Известняк (%)', 'camstone', numericColumnOptions),
makeColumn('ЛБА (шлама)', 'sludge', numericColumnOptions), makeColumn('Цемент (%)', 'cement', numericColumnOptions),
makeColumn('Сумма УВ мах. (абс%)', 'maxSum', numericColumnOptions), makeColumn('Краткое описание', 'summary', textColumnOptions),
makeColumn('С1 метан (отн%)', 'methane', numericColumnOptions), makeColumn('ЛБА бурового раствора', 'drillingMud', numericColumnOptions),
makeColumn('С2 этан (отн%)', 'ethane', numericColumnOptions), makeColumn('ЛБА (шлама)', 'sludge', numericColumnOptions),
makeColumn('С3 пропан (отн%)', 'propane', numericColumnOptions), makeColumn('Сумма УВ мах. (абс%)', 'maxSum', numericColumnOptions),
makeColumn('С4 бутан (отн%)', 'butane', numericColumnOptions), ],
makeColumn('С5 пентан (отн%)', 'pentane', numericColumnOptions), [
makeColumn('Мех. скорость', 'mechanicalSpeed', numericColumnOptions), makeColumn('С1 метан (отн%)', 'methane', numericColumnOptions),
makeColumn('Предварительное заключение о насыщении по ГК', 'preliminaryConclusion', textColumnOptions), makeColumn('С2 этан (отн%)', 'ethane', numericColumnOptions),
makeColumn('С3 пропан (отн%)', 'propane', numericColumnOptions),
makeColumn('С4 бутан (отн%)', 'butane', numericColumnOptions),
makeColumn('С5 пентан (отн%)', 'pentane', numericColumnOptions),
makeColumn('Мех. скорость', 'mechanicalSpeed', numericColumnOptions),
makeColumn('Предварительное заключение о насыщении по ГК', 'preliminaryConclusion', textColumnOptions),
],
] ]
export const mudDiagramDefaultData = { export const mudDiagramDefaultData = {

View File

@ -2,23 +2,29 @@ import { makeColumn } from '@components/Table'
import { numericColumnOptions, textColumnOptions } from './columnsCommon' import { numericColumnOptions, textColumnOptions } from './columnsCommon'
export const columnsNnb = [ export const columnsNnb = [
makeColumn('Глубина по стволу, м', 'depth', textColumnOptions), [
makeColumn('Зенитный угол, град', 'zenithAngle', numericColumnOptions), makeColumn('Глубина по стволу, м', 'depth', textColumnOptions),
makeColumn('Азимут магнитный, град', 'magneticAzimuth', numericColumnOptions), makeColumn('Зенитный угол, град', 'zenithAngle', numericColumnOptions),
makeColumn('Азимут истинный, град', 'trueAzimuth', numericColumnOptions), makeColumn('Азимут магнитный, град', 'magneticAzimuth', numericColumnOptions),
makeColumn('Азимут дирекц., град', 'directAzimuth', numericColumnOptions), makeColumn('Азимут истинный, град', 'trueAzimuth', numericColumnOptions),
makeColumn('Глубина по вертикали, м', 'verticalDepth', numericColumnOptions), makeColumn('Азимут дирекц., град', 'directAzimuth', numericColumnOptions),
makeColumn('Абсолютная отметка, м', 'absoluteMark', numericColumnOptions), makeColumn('Глубина по вертикали, м', 'verticalDepth', numericColumnOptions),
makeColumn('Лок. смещение к северу, м', 'localNorthOffset', numericColumnOptions), ],
makeColumn('Лок. смещение к востоку, м', 'localEastOffset', numericColumnOptions), [
makeColumn('Отклонение от устья, м', 'outFallOffset', numericColumnOptions), makeColumn('Абсолютная отметка, м', 'absoluteMark', numericColumnOptions),
makeColumn('Азимут смещения, град', 'offsetAzimuth', numericColumnOptions), makeColumn('Лок. смещение к северу, м', 'localNorthOffset', numericColumnOptions),
makeColumn('Пространст.\nинтенсивность, град/10 м', 'areaIntensity', numericColumnOptions), makeColumn('Лок. смещение к востоку, м', 'localEastOffset', numericColumnOptions),
makeColumn('Угол установки отклон., град', 'offsetStopAngle', numericColumnOptions), makeColumn('Отклонение от устья, м', 'outFallOffset', numericColumnOptions),
makeColumn('Интенсив. по зениту, град/10 м', 'zenithIntensity', numericColumnOptions), makeColumn('Азимут смещения, град', 'offsetAzimuth', numericColumnOptions),
makeColumn('Разница вертикальных глубин\nмежду планом и фактом', 'depthPlanFactDifference', numericColumnOptions), makeColumn('Пространст.\nинтенсивность, град/10 м', 'areaIntensity', numericColumnOptions),
makeColumn('Расстояние в пространстве\nмежду планом и фактом', 'distancePlanFactDifference', numericColumnOptions), ],
makeColumn('Комментарий', 'comment', numericColumnOptions), [
makeColumn('Угол установки отклон., град', 'offsetStopAngle', numericColumnOptions),
makeColumn('Интенсив. по зениту, град/10 м', 'zenithIntensity', numericColumnOptions),
makeColumn('Разница вертикальных глубин\nмежду планом и фактом', 'depthPlanFactDifference', numericColumnOptions),
makeColumn('Расстояние в пространстве\nмежду планом и фактом', 'distancePlanFactDifference', numericColumnOptions),
makeColumn('Комментарий', 'comment', numericColumnOptions),
],
] ]
export const nnbDefaultData = { export const nnbDefaultData = {