Наявність: | |
---|---|
Мунгунг
Я створять всебічну, сучасну інформаційну панель, яка забезпечує моніторинг та контроль в режимі реального часу для виробничої лінії ДСП. Конструкція буде зосереджена на ефективності експлуатації, візуалізації критичних показників та інтуїтивно зрозумілих елементах управління.
: root {
-ПРИМАР: #1A3A5F;
-С-СУДА: #2C5282;
-Accent: #0EA5E9;
--сукс: #10b981;
-Подайте: #F59E0B;
--дангер: #EF4444;
-Характер: #1E293b;
-Літа: #F1F5F9;
-заності: #94a3b8;
}
* {
Маржа: 0;
прокладка: 0;
Розміщення коробки: прикордонна коробка;
Font-Family: 'Segoe Ui', Tahoma, Geneva, Verdana, Sans-Serif;
}
Тіло {
Фоновий колір: #0F172A;
Колір: var (-світло);
Переповнення-X: прихований;
}
.container {
Дисплей: сітка;
сітки-слини слини: 240px 1fr;
Міністерство: 100вт.;
}
/ * Стилі бічної панелі */
.sidebar {
Фоновий колір: var (-первинний);
Прокладка: 20px 0;
Прикордонний правий: 1px твердий #334155;
}
.logo {
Дисплей: Flex;
Вирівнювання-пункти: центр;
прокладка: 0 20px 20px;
Прикордонний днень: 1px твердий #334155;
Маргін-дно: 20px;
}
.logo img {
Висота: 40px;
Прави на марж: 12px;
}
.logo H1 {
Розмір шрифту: 18px;
Шрифт ваги: 600;
}
.nav-item {
Прокладка: 12px 20px;
Дисплей: Flex;
Вирівнювання-пункти: центр;
Курсор: вказівник;
Перехід: усі 0,3s;
Лівий прикордонний: 3px твердий прозорий;
}
.nav-item: наведення, .nav-item.active {
Фоновий колір: RGBA (14, 165, 233, 0,1);
Лівий прикордонний: 3px твердий var (-наголос);
}
.nav-item i {
Прави на марж: 12px;
ширина: 20px;
текстовий вирівнювання: центр;
}
/ * Основні стилі вмісту */
.main-content {
Прокладка: 20px;
Дисплей: Flex;
Flex-спрямованість: стовпчик;
}
.Header {
Дисплей: Flex;
Обґрунтування змісту: простір між ними;
Вирівнювання-пункти: центр;
Маргін-дно: 20px;
Поломка-дно: 15px;
Прикордонний днень: 1px твердий #334155;
}
.Header H2 {
Розмір шрифту: 24px;
Шрифт ваги: 600;
Колір: var (-акцент);
}
.status-bar {
Дисплей: Flex;
Вирівнювання-пункти: центр;
розрив: 20px;
}
.status-індикатор {
Дисплей: Flex;
Вирівнювання-пункти: центр;
розрив: 8px;
Розмір шрифту: 14px;
}
.status-dot {
ширина: 10px;
Висота: 10px;
Прикордонний Радій: 50%;
}
.running {фоновий колір: var (-успіх); }
.warning {фоновий колір: var (-попередження); }
.Stopped {фоновий колір: var (-небезпека); }
/ * Сітка приладної панелі */
.dashboard {
Дисплей: сітка;
сітчасті слини: повторення (4, 1fr);
Grid-Auto-рядки: Minmax (200px, Auto);
розрив: 20px;
Flex-Grow: 1;
}
.card {
Фоновий колір: #1E293b;
Прикордонний-Радій: 10px;
Прокладка: 20px;
Box-Shadow: 0 4px 6px rgba (0, 0, 0, 0.1);
кордон: 1px суцільна #334155;
Дисплей: Flex;
Flex-спрямованість: стовпчик;
}
.card-header {
Дисплей: Flex;
Обґрунтування змісту: простір між ними;
Вирівнювання-пункти: центр;
Маргін-дно: 15px;
Поломка-дно: 10px;
Прикордонний днень: 1px твердий #334155;
}
.card-title {
Розмір шрифту: 16px;
Шрифт ваги: 600;
Колір: var (-акцент);
}
.card-content {
Flex-Grow: 1;
Дисплей: Flex;
Flex-спрямованість: стовпчик;
Обґрунтування-склад: центр;
}
/ * Конкретні стилі картки */
.kpi-карта .Value {
Розмір шрифту: 36px;
Шрифт: 700;
текстовий вирівнювання: центр;
Маржа: 10px 0;
}
.kpi-карта .label {
текстовий вирівнювання: центр;
Колір: var (-сірий);
Розмір шрифту: 14px;
}
.kpi-карта .trend {
Дисплей: Flex;
Обґрунтування-склад: центр;
Вирівнювання-пункти: центр;
розрив: 5px;
Розмір шрифту: 14px;
Маржа: 5px;
}
.trend.up {color: var (-успіх); }
.trend.down {color: var (-небезпека); }
.production-Chart {
сітка-колон: Span 2;
Висота: 300px;
}
.status grid {
Дисплей: сітка;
сітчасті слини: повторити (3, 1fr);
розрив: 15px;
}
.machine-status {
Фоновий колір: #0F172A;
Прикордонний-Радій: 8px;
прокладка: 15px;
Дисплей: Flex;
Flex-спрямованість: стовпчик;
Вирівнювання-пункти: центр;
кордон: 1px суцільна #334155;
Перехід: усі 0,3s;
}
.machine-status: наведення {
Трансформація: translatey (-3px);
Box-Shadow: 0 6px 12px rgba (0, 0, 0, 0,15);
}
.machine-status i {
Шрифт: 28px;
Маргін-дно: 10px;
}
.machine-status.running {color: var (-успіх); Прикордонний верх: 3px твердий var (-успіх); }
.machine-status.warning {color: var (-попередження); Прикордонний верх: 3px твердий var (-попередження); }
.machine-status.stopped {color: var (-небезпека); Прикордонний верх: 3px твердий var (-небезпека); }
.machine-name {
Розмір шрифту: 14px;
Маргін-дно: 8px;
текстовий вирівнювання: центр;
}
.machine-значення {
Розмір шрифту: 18px;
Шрифт ваги: 600;
}
.alerts-карта .alert-item {
Прокладка: 10px 0;
Прикордонний днень: 1px твердий #334155;
Дисплей: Flex;
розрив: 10px;
}
.alert-item: останній {{
Прикордонний дно: жоден;
}
.alert-icon {
ширина: 24 піксель;
Висота: 24px;
Прикордонний Радій: 50%;
Дисплей: Flex;
Вирівнювання-пункти: центр;
Обґрунтування-склад: центр;
Flex-Shrink: 0;
}
.alert-High {фоновий колір: rgba (239, 68, 68, 0,2); Колір: var (-небезпека); }
.alert-medium {фоновий колір: rgba (245, 158, 11, 0,2); Колір: var (-попередження); }
.alert-low {фоновий колір: rgba (59, 130, 246, 0,2); Колір: #3B82F6; }
.alert-content {
Flex-Grow: 1;
}
.alert-title {
Шрифт ваги: 600;
Розмір шрифту: 14px;
}
.alert-time {
Розмір шрифту: 12px;
Колір: var (-сірий);
}
.controls {
Дисплей: сітка;
сітчасті слини: повторити (2, 1fr);
розрив: 15px;
}
.control-btn {
Фоновий колір: var (-вторинний);
кордон: жоден;
Прикордонний-Радій: 8px;
прокладка: 12px;
Колір: білий;
Шрифт ваги: 600;
Курсор: вказівник;
Перехід: усі 0,3s;
Дисплей: Flex;
Вирівнювання-пункти: центр;
Обґрунтування-склад: центр;
розрив: 8px;
}
.control-btn: наведення {
Фоновий колір: var (-акцент);
Трансформація: translatey (-2px);
}
.control-btn.emergency {
Фоновий колір: var (-небезпека);
сітка-колон: Span 2;
}
.control-btn.emergency: наведення {
Фоновий колір: #DC2626;
}
/ * Відповідні коригування */
@media (максимум-ширина: 1200px) {
.dashboard {
сітчасті слини: повторити (3, 1fr);
}
}
@media (максимум-ширина: 992px) {
.dashboard {
сітчасті слини: повторити (2, 1fr);
}
}
@media (максимум-ширина: 768px) {
.container {
сітки-стовпчики: 1fr;
}
.sidebar {
Дисплей: Жоден;
}
.dashboard {
сітки-стовпчики: 1fr;
}
.production-Chart {
сітка-колон: проміжок 1;
}
}
Прилад
Контроль виробництва
Стан машини
Контроль якості
Сповіщення та сповіщення
Аналітика та звіти
Технічне обслуговування
Налаштування
Виробництво: Біг
2 Попередження
3 нові сповіщення
Оператор: Чжан Вей
+2,1% від вчорашнього
-8 від Target
+0,4% від останньої зміни
-0,15 з минулого тижня
// ініціалізуйте виробничу діаграму
document.addeventListener ('domContentloaded', функція () {
const ctx = document.getelementbyid ('productionchart'). getContext ('2d');
const діаграма = нова діаграма (ctx, {
Тип: 'рядок',
Дані: {
Етикетки: ['06: 00 ', '08: 00', '10: 00 ', '12: 00', '14: 00 ', '16: 00', '18: 00 ', '20: 00'],
набори даних: [{
Етикетка: 'Фактичне виробництво',
Дані: [265, 280, 295, 285, 270, 290, 305, 295],
BorderColor: '#0EA5E9',
FroceColor: 'RGBA (14, 165, 233, 0,1)',
Прикордонна здатність: 2,
Заповнення: Правда,
Напруга: 0,3
}, {
Етикетка: 'Ціль',
Дані: [280, 280, 290, 295, 295, 300, 300, 300],
BorderColor: '#10B981',
Прикордонна здатність: 2,
BorderDash: [5, 5],
Заповнення: помилково
}]
},
Параметри: {
чуйне: правда,
ТЕХНІЧНА ТЕХНІЧНА: Неправдива,
плагіни: {
Легенда: {
Мітки: {
Колір: '#f1f5f9'
}
}
},
Ваги: {
Y: {
BEGINATZERO: FALSE,
Мін: 250,
Сітка: {
Колір: 'RGBA (255, 255, 255, 0,1)'
},
кліщі: {
Колір: '#94A3B8'
}
},
X: {
Сітка: {
Колір: 'RGBA (255, 255, 255, 0,1)'
},
кліщі: {
Колір: '#94A3B8'
}
}
}
}
});
// імітуйте оновлення в режимі реального часу
setInterval (() => {
// Оновити значення стану машини випадковим чином для моделювання
document.querySelectorall ('. Machine-value'). foreach (el => {
if (el.parentelement.classlist.contains ('запуск')) {
if (el.previouselementsibling.textcontent.includes ('° C')) {
const temp = 80 + math.floor (math.random () * 5);
El.TextContent = `$ {temp} ° C`;
} else if (el.previouselementsibling.textcontent.includes ('%')) {
навантаження const = 95 + math.floor (math.random () * 5);
El.TextContent = `$ {навантаження}%`;
}
}
});
// трохи оновити значення KPI для моделювання
const oeevalue = document.querySelector ('. KPI-карта: nth-дитина (1). Value');
Нехай oee = parsefloat (oeevalue.textContent);
oeevalue.textContent = (OEE + (Math.random () - 0,5) * 0,1) .tofixed (1) + '%';
const stareValue = document.querySelector ('. KPI-карта: nth-дитина (2). Value');
нехай ставка = parseint (charevalue.textContent);
chadValue.TextContent = Math.Max (280, Math.min (310, швидкість + math.floor ((math.random () - 0,5) * 5));
}, 5000);
});
WhatsApp: +86 18769900191 +86 15589105786 +86 18954906501
Електронна пошта: osbmdfmachinery@gmail.com
Я створять всебічну, сучасну інформаційну панель, яка забезпечує моніторинг та контроль в режимі реального часу для виробничої лінії ДСП. Конструкція буде зосереджена на ефективності експлуатації, візуалізації критичних показників та інтуїтивно зрозумілих елементах управління.
: root {
-ПРИМАР: #1A3A5F;
-С-СУДА: #2C5282;
-Accent: #0EA5E9;
--сукс: #10b981;
-Подайте: #F59E0B;
--дангер: #EF4444;
-Характер: #1E293b;
-Літа: #F1F5F9;
-заності: #94a3b8;
}
* {
Маржа: 0;
прокладка: 0;
Розміщення коробки: прикордонна коробка;
Font-Family: 'Segoe Ui', Tahoma, Geneva, Verdana, Sans-Serif;
}
Тіло {
Фоновий колір: #0F172A;
Колір: var (-світло);
Переповнення-X: прихований;
}
.container {
Дисплей: сітка;
сітки-слини слини: 240px 1fr;
Міністерство: 100вт.;
}
/ * Стилі бічної панелі */
.sidebar {
Фоновий колір: var (-первинний);
Прокладка: 20px 0;
Прикордонний правий: 1px твердий #334155;
}
.logo {
Дисплей: Flex;
Вирівнювання-пункти: центр;
прокладка: 0 20px 20px;
Прикордонний днень: 1px твердий #334155;
Маргін-дно: 20px;
}
.logo img {
Висота: 40px;
Прави на марж: 12px;
}
.logo H1 {
Розмір шрифту: 18px;
Шрифт ваги: 600;
}
.nav-item {
Прокладка: 12px 20px;
Дисплей: Flex;
Вирівнювання-пункти: центр;
Курсор: вказівник;
Перехід: усі 0,3s;
Лівий прикордонний: 3px твердий прозорий;
}
.nav-item: наведення, .nav-item.active {
Фоновий колір: RGBA (14, 165, 233, 0,1);
Лівий прикордонний: 3px твердий var (-наголос);
}
.nav-item i {
Прави на марж: 12px;
ширина: 20px;
текстовий вирівнювання: центр;
}
/ * Основні стилі вмісту */
.main-content {
Прокладка: 20px;
Дисплей: Flex;
Flex-спрямованість: стовпчик;
}
.Header {
Дисплей: Flex;
Обґрунтування змісту: простір між ними;
Вирівнювання-пункти: центр;
Маргін-дно: 20px;
Поломка-дно: 15px;
Прикордонний днень: 1px твердий #334155;
}
.Header H2 {
Розмір шрифту: 24px;
Шрифт ваги: 600;
Колір: var (-акцент);
}
.status-bar {
Дисплей: Flex;
Вирівнювання-пункти: центр;
розрив: 20px;
}
.status-індикатор {
Дисплей: Flex;
Вирівнювання-пункти: центр;
розрив: 8px;
Розмір шрифту: 14px;
}
.status-dot {
ширина: 10px;
Висота: 10px;
Прикордонний Радій: 50%;
}
.running {фоновий колір: var (-успіх); }
.warning {фоновий колір: var (-попередження); }
.Stopped {фоновий колір: var (-небезпека); }
/ * Сітка приладної панелі */
.dashboard {
Дисплей: сітка;
сітчасті слини: повторення (4, 1fr);
Grid-Auto-рядки: Minmax (200px, Auto);
розрив: 20px;
Flex-Grow: 1;
}
.card {
Фоновий колір: #1E293b;
Прикордонний-Радій: 10px;
Прокладка: 20px;
Box-Shadow: 0 4px 6px rgba (0, 0, 0, 0.1);
кордон: 1px суцільна #334155;
Дисплей: Flex;
Flex-спрямованість: стовпчик;
}
.card-header {
Дисплей: Flex;
Обґрунтування змісту: простір між ними;
Вирівнювання-пункти: центр;
Маргін-дно: 15px;
Поломка-дно: 10px;
Прикордонний днень: 1px твердий #334155;
}
.card-title {
Розмір шрифту: 16px;
Шрифт ваги: 600;
Колір: var (-акцент);
}
.card-content {
Flex-Grow: 1;
Дисплей: Flex;
Flex-спрямованість: стовпчик;
Обґрунтування-склад: центр;
}
/ * Конкретні стилі картки */
.kpi-карта .Value {
Розмір шрифту: 36px;
Шрифт: 700;
текстовий вирівнювання: центр;
Маржа: 10px 0;
}
.kpi-карта .label {
текстовий вирівнювання: центр;
Колір: var (-сірий);
Розмір шрифту: 14px;
}
.kpi-карта .trend {
Дисплей: Flex;
Обґрунтування-склад: центр;
Вирівнювання-пункти: центр;
розрив: 5px;
Розмір шрифту: 14px;
Маржа: 5px;
}
.trend.up {color: var (-успіх); }
.trend.down {color: var (-небезпека); }
.production-Chart {
сітка-колон: Span 2;
Висота: 300px;
}
.status grid {
Дисплей: сітка;
сітчасті слини: повторити (3, 1fr);
розрив: 15px;
}
.machine-status {
Фоновий колір: #0F172A;
Прикордонний-Радій: 8px;
прокладка: 15px;
Дисплей: Flex;
Flex-спрямованість: стовпчик;
Вирівнювання-пункти: центр;
кордон: 1px суцільна #334155;
Перехід: усі 0,3s;
}
.machine-status: наведення {
Трансформація: translatey (-3px);
Box-Shadow: 0 6px 12px rgba (0, 0, 0, 0,15);
}
.machine-status i {
Шрифт: 28px;
Маргін-дно: 10px;
}
.machine-status.running {color: var (-успіх); Прикордонний верх: 3px твердий var (-успіх); }
.machine-status.warning {color: var (-попередження); Прикордонний верх: 3px твердий var (-попередження); }
.machine-status.stopped {color: var (-небезпека); Прикордонний верх: 3px твердий var (-небезпека); }
.machine-name {
Розмір шрифту: 14px;
Маргін-дно: 8px;
текстовий вирівнювання: центр;
}
.machine-значення {
Розмір шрифту: 18px;
Шрифт ваги: 600;
}
.alerts-карта .alert-item {
Прокладка: 10px 0;
Прикордонний днень: 1px твердий #334155;
Дисплей: Flex;
розрив: 10px;
}
.alert-item: останній {{
Прикордонний дно: жоден;
}
.alert-icon {
ширина: 24 піксель;
Висота: 24px;
Прикордонний Радій: 50%;
Дисплей: Flex;
Вирівнювання-пункти: центр;
Обґрунтування-склад: центр;
Flex-Shrink: 0;
}
.alert-High {фоновий колір: rgba (239, 68, 68, 0,2); Колір: var (-небезпека); }
.alert-medium {фоновий колір: rgba (245, 158, 11, 0,2); Колір: var (-попередження); }
.alert-low {фоновий колір: rgba (59, 130, 246, 0,2); Колір: #3B82F6; }
.alert-content {
Flex-Grow: 1;
}
.alert-title {
Шрифт ваги: 600;
Розмір шрифту: 14px;
}
.alert-time {
Розмір шрифту: 12px;
Колір: var (-сірий);
}
.controls {
Дисплей: сітка;
сітчасті слини: повторити (2, 1fr);
розрив: 15px;
}
.control-btn {
Фоновий колір: var (-вторинний);
кордон: жоден;
Прикордонний-Радій: 8px;
прокладка: 12px;
Колір: білий;
Шрифт ваги: 600;
Курсор: вказівник;
Перехід: усі 0,3s;
Дисплей: Flex;
Вирівнювання-пункти: центр;
Обґрунтування-склад: центр;
розрив: 8px;
}
.control-btn: наведення {
Фоновий колір: var (-акцент);
Трансформація: translatey (-2px);
}
.control-btn.emergency {
Фоновий колір: var (-небезпека);
сітка-колон: Span 2;
}
.control-btn.emergency: наведення {
Фоновий колір: #DC2626;
}
/ * Відповідні коригування */
@media (максимум-ширина: 1200px) {
.dashboard {
сітчасті слини: повторити (3, 1fr);
}
}
@media (максимум-ширина: 992px) {
.dashboard {
сітчасті слини: повторити (2, 1fr);
}
}
@media (максимум-ширина: 768px) {
.container {
сітки-стовпчики: 1fr;
}
.sidebar {
Дисплей: Жоден;
}
.dashboard {
сітки-стовпчики: 1fr;
}
.production-Chart {
сітка-колон: проміжок 1;
}
}
Прилад
Контроль виробництва
Стан машини
Контроль якості
Сповіщення та сповіщення
Аналітика та звіти
Технічне обслуговування
Налаштування
Виробництво: Біг
2 Попередження
3 нові сповіщення
Оператор: Чжан Вей
+2,1% від вчорашнього
-8 від Target
+0,4% від останньої зміни
-0,15 з минулого тижня
// ініціалізуйте виробничу діаграму
document.addeventListener ('domContentloaded', функція () {
const ctx = document.getelementbyid ('productionchart'). getContext ('2d');
const діаграма = нова діаграма (ctx, {
Тип: 'рядок',
Дані: {
Етикетки: ['06: 00 ', '08: 00', '10: 00 ', '12: 00', '14: 00 ', '16: 00', '18: 00 ', '20: 00'],
набори даних: [{
Етикетка: 'Фактичне виробництво',
Дані: [265, 280, 295, 285, 270, 290, 305, 295],
BorderColor: '#0EA5E9',
FroceColor: 'RGBA (14, 165, 233, 0,1)',
Прикордонна здатність: 2,
Заповнення: Правда,
Напруга: 0,3
}, {
Етикетка: 'Ціль',
Дані: [280, 280, 290, 295, 295, 300, 300, 300],
BorderColor: '#10B981',
Прикордонна здатність: 2,
BorderDash: [5, 5],
Заповнення: помилково
}]
},
Параметри: {
чуйне: правда,
ТЕХНІЧНА ТЕХНІЧНА: Неправдива,
плагіни: {
Легенда: {
Мітки: {
Колір: '#f1f5f9'
}
}
},
Ваги: {
Y: {
BEGINATZERO: FALSE,
Мін: 250,
Сітка: {
Колір: 'RGBA (255, 255, 255, 0,1)'
},
кліщі: {
Колір: '#94A3B8'
}
},
X: {
Сітка: {
Колір: 'RGBA (255, 255, 255, 0,1)'
},
кліщі: {
Колір: '#94A3B8'
}
}
}
}
});
// імітуйте оновлення в режимі реального часу
setInterval (() => {
// Оновити значення стану машини випадковим чином для моделювання
document.querySelectorall ('. Machine-value'). foreach (el => {
if (el.parentelement.classlist.contains ('запуск')) {
if (el.previouselementsibling.textcontent.includes ('° C')) {
const temp = 80 + math.floor (math.random () * 5);
El.TextContent = `$ {temp} ° C`;
} else if (el.previouselementsibling.textcontent.includes ('%')) {
навантаження const = 95 + math.floor (math.random () * 5);
El.TextContent = `$ {навантаження}%`;
}
}
});
// трохи оновити значення KPI для моделювання
const oeevalue = document.querySelector ('. KPI-карта: nth-дитина (1). Value');
Нехай oee = parsefloat (oeevalue.textContent);
oeevalue.textContent = (OEE + (Math.random () - 0,5) * 0,1) .tofixed (1) + '%';
const stareValue = document.querySelector ('. KPI-карта: nth-дитина (2). Value');
нехай ставка = parseint (charevalue.textContent);
chadValue.TextContent = Math.Max (280, Math.min (310, швидкість + math.floor ((math.random () - 0,5) * 5));
}, 5000);
});
WhatsApp: +86 18769900191 +86 15589105786 +86 18954906501
Електронна пошта: osbmdfmachinery@gmail.com