Контент менеджер с искуственым интелектом

Скрипт для заполнения: (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

 

Связаться с автором Поддержать деньгами (что?)