getUser().token || localStorage.getItem('token') || ''
+OpenAPI.HEADERS = { 'Content-Type': 'application/json' }
+
const container = document.getElementById('root') ?? document.body
const root = createRoot(container)
root.render(
-
+
+
+
)
diff --git a/src/pages/Cluster/ClusterWells.jsx b/src/pages/Cluster/ClusterWells.jsx
index a74c8bd..a84e9cb 100755
--- a/src/pages/Cluster/ClusterWells.jsx
+++ b/src/pages/Cluster/ClusterWells.jsx
@@ -7,11 +7,11 @@ import {
makeTextColumn,
makeGroupColumn,
makeColumn,
- makeDateSorter,
makeNumericColumnPlanFact,
Table,
makeNumericRender,
makeNumericColumn,
+ makeDateColumn,
} from '@components/Table'
import LoaderPortal from '@components/LoaderPortal'
import PointerIcon from '@components/icons/PointerIcon'
@@ -39,7 +39,6 @@ const filtersWellsType = []
const DAY_IN_MS = 86_400_000
const ONLINE_DEADTIME = 600_000
-const getDate = (str) => isRawDate(str) ? new Date(str).toLocaleString() : '-'
const numericRender = makeNumericRender(1)
const ClusterWells = memo(({ statsWells }) => {
@@ -131,8 +130,8 @@ const ClusterWells = memo(({ statsWells }) => {
),
makeTextColumn('Тип скв.', 'wellType', filtersWellsType, null, (text) => text ?? '-'),
makeGroupColumn('Фактические сроки', [
- makeColumn('начало', 'factStart', { sorter: makeDateSorter('factStart'), render: getDate }),
- makeColumn('окончание', 'factEnd', { sorter: makeDateSorter('factEnd'), render: getDate }),
+ makeDateColumn('начало', 'factStart'),
+ makeDateColumn('окончание', 'factEnd'),
]),
makeNumericColumnPlanFact('Продолжительность, сут', 'period', filtersMinMax, makeFilterMinMaxFunction, numericRender),
makeNumericColumnPlanFact('МСП, м/ч', 'rateOfPenetration', filtersMinMax, makeFilterMinMaxFunction, numericRender),
diff --git a/src/pages/Well/Telemetry/Archive/index.jsx b/src/pages/Well/Telemetry/Archive/index.jsx
index a6a6e6d..c708eaf 100644
--- a/src/pages/Well/Telemetry/Archive/index.jsx
+++ b/src/pages/Well/Telemetry/Archive/index.jsx
@@ -223,7 +223,7 @@ const Archive = memo(() => {
const chartData = useMemo(() => cutData(dataSaub, domain.min, domain.max), [dataSaub, domain])
return (
-
+
Начальная дата:
@@ -259,6 +259,7 @@ const Archive = memo(() => {
render: cursorRender,
}
}}
+ style={{ flexGrow: 1 }}
height={'76vh'}
onWheel={onGraphWheel}
/>
diff --git a/src/pages/Well/Telemetry/Messages.jsx b/src/pages/Well/Telemetry/Messages.jsx
index 653e122..4af1a31 100644
--- a/src/pages/Well/Telemetry/Messages.jsx
+++ b/src/pages/Well/Telemetry/Messages.jsx
@@ -28,7 +28,7 @@ const categoryDictionary = {
// Конфигурация таблицы
export const makeMessageColumns = (idWell) => [
- makeDateColumn('Дата', 'date', undefined, undefined, { width: '10rem' }),
+ makeDateColumn('Дата', 'date', undefined, undefined, { width: '120px' }),
makeNumericColumn('Глубина, м', 'wellDepth', null, null, (depth, item) => (
[
ellipsis: true,
}),
makeColumn('Сообщение', 'message', { onFilter: (value, record) => record.name.indexOf(value) === 0 }),
- makeTextColumn('Пользователь', 'user', null, null, null, { width: '10rem' }),
+ makeTextColumn('Пользователь', 'user', null, null, null, { width: '120px' }),
]
const filterOptions = [
diff --git a/src/pages/Well/Telemetry/TelemetryView/index.jsx b/src/pages/Well/Telemetry/TelemetryView/index.jsx
index 69094ea..a2fa8f1 100644
--- a/src/pages/Well/Telemetry/TelemetryView/index.jsx
+++ b/src/pages/Well/Telemetry/TelemetryView/index.jsx
@@ -32,7 +32,7 @@ import MomentStabPicDisabled from '@images/DempherOff.png'
import SpinPicEnabled from '@images/SpinEnabled.png'
import SpinPicDisabled from '@images/SpinDisabled.png'
-import '@styles/monitoring.less'
+import '@styles/telemetry_view.less'
import '@styles/message.less'
const { Option } = Select
@@ -186,7 +186,7 @@ const TelemetryView = memo(() => {
return (
-
+
diff --git a/src/styles/include/antd_theme.less b/src/styles/include/antd_theme.less
index 68e0e3f..c9acd72 100644
--- a/src/styles/include/antd_theme.less
+++ b/src/styles/include/antd_theme.less
@@ -7,8 +7,5 @@
// Переменные для темы тут:
// https://github.com/ant-design/ant-design/blob/master/components/style/themes/default.less
-//@primary-color: rgba(124, 124, 124, 0.3);
-@primary-color: rgb(195, 40,40);
-//@primary-color:rgb(65, 63, 61);
-//@layout-header-background: rgb(195, 40,40);
-@layout-header-background: rgb(65, 63, 61);
+@primary-color: #C32828; // rgb(195, 40, 40)
+@layout-header-background:#413F3D; // rgb(65, 63, 61)
diff --git a/src/styles/layout.less b/src/styles/layout.less
index 4d5861f..225dd03 100644
--- a/src/styles/layout.less
+++ b/src/styles/layout.less
@@ -19,6 +19,10 @@
}
.page-layout {
+ --sheet-padding: 15px;
+
+ @sheet-padding: var(--sheet-padding);
+
height: 100vh;
& .menu-sider {
@@ -62,7 +66,7 @@
background-color: transparent;
cursor: pointer;
overflow: hidden;
-
+
&:hover {
color: white;
}
@@ -88,8 +92,9 @@
display: flex;
justify-content: space-between;
align-items: center;
- gap: 15px;
- padding: 0 15px 15px 15px;
+ gap: @sheet-padding;
+ padding: @sheet-padding;
+ padding-top: 0;
& .ant-breadcrumb-link, .ant-breadcrumb-separator {
.no-select;
@@ -99,7 +104,7 @@
}
& .sheet{
- padding: 15px;
+ padding: @sheet-padding;
// min-height: calc(@layout-min-height - 30px); // 280px;
overflow: visible;
// margin: 15px;
@@ -126,3 +131,15 @@
.site-layout-background {
background: #fff;
}
+
+@media only screen and (max-width: 1280px) {
+ .page-layout {
+ --sheet-padding: 10px;
+ }
+}
+
+@media only screen and (max-width: 1024px) {
+ .page-layout {
+ --sheet-padding: 5px;
+ }
+}
diff --git a/src/styles/loader.css b/src/styles/loader.css
index 23ab350..33a233a 100755
--- a/src/styles/loader.css
+++ b/src/styles/loader.css
@@ -39,11 +39,18 @@
}
.loader-content{
+ display: flex;
+ flex-direction: column;
grid-column-start: 1;
grid-column-end: span 3;
grid-row-start: 1;
}
+.loader-content.loader-content-fill {
+ height: 100%;
+ width: 100%;
+}
+
.loader-overlay{
grid-column-start: 1;
grid-column-end: span 3;
diff --git a/src/styles/monitoring.less b/src/styles/monitoring.less
deleted file mode 100644
index 9a3cb0e..0000000
--- a/src/styles/monitoring.less
+++ /dev/null
@@ -1,17 +0,0 @@
-.page-top {
- display: flex;
- flex-wrap: wrap;
- margin: -5px;
-
- & > * {
- margin: 5px;
- }
-
- & > .icons {
- display: flex;
-
- & > * {
- margin-left: 15px;
- }
- }
-}
diff --git a/src/styles/telemetry_view.less b/src/styles/telemetry_view.less
new file mode 100644
index 0000000..cdbb3c6
--- /dev/null
+++ b/src/styles/telemetry_view.less
@@ -0,0 +1,66 @@
+.telemetry-view-page {
+ --page-gap: 10px;
+
+ @page-gap: var(--page-gap);
+
+ .flex-container {
+ display: flex;
+ align-items: stretch;
+ justify-content: space-between;
+ gap: @page-gap;
+ }
+
+ width: 100%;
+ height: 100%;
+ flex-direction: column;
+ .flex-container;
+
+ & .page-top {
+ .flex-container;
+ flex-wrap: wrap;
+ justify-content: flex-start;
+
+ & .icons {
+ display: flex;
+
+ & > * {
+ margin-left: 15px;
+ }
+ }
+ }
+
+ & .page-main {
+ flex-grow: 1;
+ .flex-container;
+
+ & .page-left {
+ .flex-container;
+ justify-content: flex-start;
+ flex-direction: column;
+
+ & .modes, & .current-values {
+ .flex-container;
+ flex-direction: column;
+ gap: 0;
+ }
+ }
+
+ & .page-right {
+ flex-grow: 1;
+ .flex-container;
+ flex-direction: column;
+ }
+ }
+}
+
+@media only screen and (max-width: 1280px) {
+ .telemetry-view-page {
+ --page-gap: 7.5px;
+ }
+}
+
+@media only screen and (max-width: 1024px) {
+ .telemetry-view-page {
+ --page-gap: 5px;
+ }
+}