Скрипт для заполнения: (https://chatgpt.com/c/6799bbfc-698c-800a-880f-25b8cdb0f745)
document.addEventListener("DOMContentLoaded", function () {
let jsonData = prompt("Введите данные в формате JSON:");
try {
let data = JSON.parse(jsonData);
let totalFields = Object.keys(data).length;
let filledFields = 0;
let unfilledFields = [];
Object.entries(data).forEach(([labelText, value]) => {
let fieldFilled = false;
document.querySelectorAll("label").forEach(label => {
if (label.textContent.trim() === labelText) { // Полное соответствие строки
let input = label.nextElementSibling;
if (input && input.tagName === "INPUT") {
input.value = value;
input.style.backgroundColor = "#d4edda"; // Светло-зелёный фон
filledFields++;
fieldFilled = true;
} else if (input && input.tagName === "SELECT") {
let options = Array.from(input.options);
let matchedOption = options.find(option => option.textContent.trim() === value);
if (matchedOption) {
input.value = matchedOption.value;
input.style.backgroundColor = "#d4edda"; // Светло-зелёный фон
filledFields++;
fieldFilled = true;
}
}
}
});
if (!fieldFilled) {
unfilledFields.push(labelText);
}
});
let message = `Заполнил ${filledFields} полей из ${totalFields}`;
if (unfilledFields.length > 0) {
message += `, Незаполнил: ${unfilledFields.join(", ")}`;
}
alert(message);
} catch (error) {
alert("Ошибка в формате JSON");
console.error("Ошибка парсинга JSON:", error);
}
});
Для закладки:
javascript: (function() {let e=prompt("Введите данные в формате JSON:");try{let l=JSON.parse(e),t=Object.keys(l).length,o=0,r=[];Object.entries(l).forEach((([e,l])=>{let t=!1;document.querySelectorAll("label").forEach((r=>{if(r.textContent.trim()===e){let e=r.nextElementSibling;if(e&&"INPUT"===e.tagName)null===l?e.style.backgroundColor="#f8d7da":(e.value=l,e.style.backgroundColor="#d4edda",o++,t=!0);else if(e&&"SELECT"===e.tagName)if(null===l)e.style.backgroundColor="#f8d7da";else{let r=Array.from(e.options).find((e=>e.textContent.trim()===l));r&&(e.value=r.value,e.style.backgroundColor="#d4edda",o++,t=!0)}}})),t||null===l||r.push(e)}));let a=%60Заполнил ${o} полей из ${t}%60;r.length>0&&(a+=%60, Незаполнил: ${r.join(", ")}%60),alert(a)}catch(e){alert("Ошибка в формате JSON"),console.error("Ошибка парсинга JSON:",e)}})(); void(0);
Тестовый инпут:
{ "Производитель кондиционера": "Royal Clima", "Мощность (охлаждение)": "2.70", "Мощность (обогрев)": "2.80", "Площадь помещения": "27", "Уровень шума внутреннего блока": "23/32/38/40", "Уровень шума внутреннего блока (мин.)": "23", "Уровень шума внутреннего блока (макс.)": "40", "Уровень шума наружного (внешнего) блока": "53", "Габариты внутреннего блока (ШxВxГ)": "729x292x200", "Габариты наружного блока (ШxВxГ)": "720x495x270", "Вес внутреннего блока": "8.2", "Вес наружного блока (строка)": "24.7" }
Промпт для конвертации спецификации в json: (https://chatgpt.com/c/36a54afb-affd-4460-ae27-c3a6aa99ce41)
## Системный промпт
Ты ассистент, который помогает извлекать информацию из спецификаций кондиционеров и заполнять JSON.
## Основной промпт
Переведи эти данные в json (на выходе должен получиться такой же json именно с этими полями, но значения будут другими, последующие значения полей в json даны для примера, ты должен заполнить их значениями из спецификации под строкой "Исходя из этой спецификации:"):
{
"Производитель кондиционера": "Royal Clima",
"Мощность (охлаждение)": "2.55",
"Мощность (обогрев)": "2.6",
"Площадь помещения": "26",
"Рабочий ток": "5.45",
"Потребляемая мощность (охлаждение)": "0.8",
"Потребляемая мощность (обогрев)": "0.7",
"Уровень шума внутреннего блока": "23/32/38/40",
"Уровень шума наружного (внешнего) блока": "52",
"Уровень шума внутреннего блока (мин.)": "23",
"Уровень шума внутреннего блока (макс.)": "34",
"Вентиляция": "500/400/320",
"Габариты внутреннего блока (ШxВxГ)": "818x270x217",
"Габариты наружного блока (ШxВxГ)": "660x482x240",
"Вес внутреннего блока": "7.7",
"Вес наружного блока: "35",
"Диаметр труб (жидкость)": "1/4" (6,35мм)",
"Диаметр труб (газ)": "3/8" (9,52мм)",
"Максимальная длина коммуникаций": "15",
"Перепад высот коммуникаций": "10",
"Компрессор": "Toshiba",
"Охлаждение при уличной температуре": "-8 ~ 43",
"Обогрев при уличной температуре": "10 ~ 43"
}
## Правила для полей
Возможные значения для Диаметр труб (жидкость) и Диаметр труб (газ):
1/4" (6,35мм)
3/8" (9,52мм)
1/2" (12,7мм)
5/8" (15,9мм)
3/4" (19,1мм)
7/8" (22,2мм)
1-1/8" (28,6мм)
1/2’’ (12,7мм)
Уровень шума внутреннего блока если известно более 2 значений - пишим все, например: 22/25/29/31. Если известно только 2 (мин и макс) пишем: 22 - 31. Если известно только одно значение (минимальное) - расчитываем максимальное, как минимальное + 9, итого: "22 - 31". Если известны несколько значений - они всегда идут от минимальных к максимальным, даже если написано 31/29/25/22 - в результате дожно выглядеть: "22/25/29/31".Вентиляция - также если известны несколько значений - они всегда идут от минимальных к максимальным.
Потребляемая мощность (охлаждение) и Потребляемая мощность (обогрев) в кВт.
Компрессор - это производитель компрессора например:
Daikin (Daikin Qing`An)
Toshiba (GMCC Toshiba)
GREE (Landa-Gree)
Panasonic (Panasonic Matsushita)
Rechi
Sanyo (Huayun Sanyo)
Hitachi (Highly Hitachi)
Hitachi
Mitsubishi Electric
LG
QingAnПлощадь помещения - это всегда Мощность (охлаждение) умноженная на 10 и округлённое в большую сторону.
Поля: Мощность (охлаждение), Мощность (обогрев), Потребляемая мощность (охлаждение), Потребляемая мощность (обогрев) - должны иметь максимум 2 знака после запятой. Если посл запятой нули - не пиши их, например если 2.00 - это 2, или 2.10 - эт 2.1.
Не указывай единицы измерения.
Если значение не найдено в спецификации - в итоговом json по данному поле должен быть null.
Исходя из этой спецификации:## Спецификация:
Номинальная производительность охлаждения BTU/ч 12200Вт 3574
Номинальная производительность обогрева BTU/ч 13000
Вт 3808
Потребляемая мощность Охлаждение, Вт 1118
Нагрев, Вт 1053
Номинальный ток Охлаждение, A 5,25
Нагрев, A 4,87
Класс энергопотребления Охлаждение A
Класс энергопотребления Нагрев средний A
Коэффициент энергоэффективности для охлаждения (EER) Вт/Вт 3,2
Коэффициент полезного действия для нагрева (COP) Вт/Вт 3,62
Удаление влаги Л/ч 1,1
Уровень шума внутреннего блока Высокий, дБ(A) 36
Средний, дБ(A) 31
Низкий, дБ(A) 26
Уровень шума внешнего блока дБ(A) 47
Максимальная площадь помещения м2 37
Циркуляция воздуха внутри помещений м3/ч 600/550/480
Хладагент Тип R410A
Объем заправки хладагента г 700
Дополнительный объем хладагента г/м 10
Рабочее напряжение, частота, сколько фаз В/Гц/Ф 220-240V, 50Hz, 1Ф
Система
Тип компрессора Тип ротационный
Бренд компрессора GREE
Давление всасывания (минимальное) Мпа 1,9
Давление нагнетания Мпа 4.5
Мощность мотора внешнего блока Вт 25
Максимальная скорость вентилятора внешнего блока об/мин 860
Тип дросселирующего устройства Тип капиллярная трубка
Тип антикоррозийного покрытия конденсатора и испарителя Тип Golden Fin
Максимальная скорость вентилятора внутреннего блока об/мин 1200/1150/1100/1000/800
Наличие сетевого шнура Да
Длина сетевого шнура м 1,5
Наличие вилки сетевого шнура Да
Тип вилки сетевого шнура Тип VDE
Сечение провода сетевого шнура 1.5mm²
Количество жил в сетевом шнуре 3
Присоединения
Присоединительные трубки газ, дюйм 3/8
жидкость, дюйм 1/4
Сечение монтажного провода мм 5х1,5
Дренажная труба, длина м 1,8
Максимальная длина медной трубы трассы м 10
Максимальный интервал высот трассы м 5
Функции
Дисплей на передней панели LED
Беспроводной пульт дистанционного управления с ЖК-дисплеем Да
Возможность подключения Wi-Fi модуля Нет
Приложение для управления Нет
Съемная и моющаяся панель Да
Полипропиленовый фильтр Да
Режим Холод Да
Режим Тепло Да
Режим Осушение Да
Режим Вентилятор Да
3D шторка Нет
Функция Таймер Да
Максимальное время функции таймер Часы 24
Функция "SMART" /Интеллектуальная функция Да
Функция "I FEEL" Нет
Суперфункция/Функция "SUPER" Да
Функция "SLEEP" Да
"Функция ""DIMMER""
(регулировка яркости светодиодного дисплея)" Да
Функция "ECO" Да
Самодиагностика неисправностей Нет
Автоматический перезапуск Да
Индикация утечки хладагента Нет
Температура
Диапазон температур окружающей среды при охлаждении ℃ от -8 до 43
Диапазон температур окружающей среды при нагреве ℃ от -10 до 43
Безопасность
Класс электробезопасности внутренний блок I/II Класс I
Класс электробезопасности внешний блок I/II Класс I
Габаритные размеры и масса
Размеры Д*Ш*В (мм) Внутренний блок 800X292X190
Внешний блок 740×302×550
Масса нетто (кг) Внутренний блок 7.2
Внешний блок 24,1
Масса брутто (кг) Внутренний блок 8.4
Внешний блок 26,5
Размеры гифт бокса (ДхШхВ), мм Внутренний блок 865X335X240
Внешний блок 810X355X595