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

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

View File

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

View File

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

View File

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

View File

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

View File

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