wiki:offline_chestn_znak

Проблема

На 1 пк можно поставить только 1 модуль, 1 модуль работает только с одним ИНН. На сегодня у нас нет компаний в рознице у кого только 1 инн, в основном 2 и больше, т.е. нужно ставить 2 модуля на 2 разных пк. Есть компании, где 6 юр лиц, это уже создает проблему.

Описание модуля

Конструктивно модуль состоит из 2-х частей

  • regime - написан честным знаком и служит апи для фронтола и прочего по
  • yenisei - бд для хранения марок, Енисей СУБД

Ограничение на количество инн заложено именно в Енисее, точнее в его лицензии.

Внимание!

После инициализации бд ее нельзя использовать еще раз. Подготовленный дистр с чистыми бд лежим на фтп ftp_incoming/regime

Обход проблемы с лицензией

Для запуска 2-х енисеев на 1-м пк нужно использовать коммьюнити лицензию на 3 мес. Взять ее можно по ссылке

Установка лицензии
  1. Должны быть запущены все енисеи
  2. Выполняем запрос установки лицензии. В тестах использовался Постер. Тип запроса POST в теле запроса текстом пишем лицензию скопированную по ссылке с сайта разработчиков.
http://127.0.0.1:5984/_license
Результат выполнения запроса
{
    "ok": true
}
настройка запуска 2-х regime и yenisei
  • В каталоге Regime\ копируем папки regime и yenisei называем их regime_2 и yenisei_2
  • Далее наша задача заменить пути запуска программных модулей и активировать службы
    • В каталоге Regime\bin создаем файлы запуска служб regime_2.cmd и yenisei_2.cmd
    • В содержимом CMD файлов regime_2.cmd и yenisei_2.cmd меняем:
"%BINDIR%\erl" -boot "%ROOTDIR%\regime\releases\%APP_VSN%\regime" ^
-args_file "%ROOTDIR%\regime\etc\vm.args" ^
-epmd "%BINDIR%\epmd.exe" ^
-config "%ROOTDIR%\regime\releases\%APP_VSN%\sys.config" %*

на regime_2 или enisey_2

"%BINDIR%\erl" -boot "%ROOTDIR%\regime_2\releases\%APP_VSN%\regime" ^
-args_file "%ROOTDIR%\regime_2\etc\vm.args" ^
-epmd "%BINDIR%\epmd.exe" ^
-config "%ROOTDIR%\regime_2\releases\%APP_VSN%\sys.config" %*
  • Regime Корректировка конфиг файлов
    • Regime\regime_2\etc
      • local.ini
        • port = 5996 ставим нужный
        • yenisei_stop_cmd = PowerShell.exe -noprofile -command «&'C:\Program Files\Regime\bin\nssm' stop yenisei_2» команда остановки службы
        • yenisei_start_cmd = PowerShell.exe -noprofile -command «&'C:\Program Files\Regime\bin\nssm' start yenisei_2» команда запуска службы
        • yenisei_move_cmd = PowerShell.exe -noprofile -command «mv -Force 'C:\Program Files\Regime\file_path' 'C:\Program Files\Regime\yenisei_2\data\shards\shard_name\db_name.db_suffix.couch'» Месторасположения БД
        • db_url = http://127.0.0.1:5985 порт БД
      • vm.args
        • -name regime_2@127.0.0.1 - имя службы режима
    • Regime\regime_2\releases\1.2.0-326
      • sys.config
        • «var/log/regime_2.log» место положения лог файла
  • Regime\yenisei_2\etc
    • local.ini
      • port = 5985 порт службы должен совпадать с параметром db_url = http://127.0.0.1:5985 в файле Regime\regime_2\etc\local.ini
      • file = var/log/yenisei_2.log имя лог файла
      • database_dir = ./yenisei_2/data место положения файлов данных
      • view_index_dir = ./yenisei_2/data место положения файлов индекса
    • vm.args
      • -name yenisei_2@127.0.0.1 - имя службы енисея
  • Regime\yenisei_2\releases\2.2.1-1890
    • sys.config
      • «yenisei_2/etc/default.ini»,
      • «yenisei_2/etc/default.d»,
      • «yenisei_2/etc/local.ini»,
      • «yenisei_2/etc/local.d»
  • Корректировка файлов запуска служб
    • Экспортируем из реестр куст запуска службы Regime и меняем все на regime_2, после обратного экспорта не забываем поменять путь к файлу запуска службы C:\Program Files\Regime\bin\regime_2.cmd
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\regime
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\yenisei
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\regime_2]
"Type"=dword:00000010
"Start"=dword:00000002
"ErrorControl"=dword:00000001
"ImagePath"=hex(2):22,00,43,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,\
  6d,00,20,00,46,00,69,00,6c,00,65,00,73,00,5c,00,52,00,65,00,67,00,69,00,6d,\
  00,65,00,5c,00,62,00,69,00,6e,00,5c,00,6e,00,73,00,73,00,6d,00,2e,00,65,00,\
  78,00,65,00,22,00,00,00
"DisplayName"="regime_2"
"ObjectName"="LocalSystem"
"DelayedAutostart"=dword:00000000
"FailureActionsOnNonCrashFailures"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\regime_2\Parameters]
"Application"=hex(2):43,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,\
  00,20,00,46,00,69,00,6c,00,65,00,73,00,5c,00,52,00,65,00,67,00,69,00,6d,00,\
  65,00,5c,00,62,00,69,00,6e,00,5c,00,72,00,65,00,67,00,69,00,6d,00,65,00,2e,\
  00,63,00,6d,00,64,00,00,00
"AppParameters"=hex(2):00,00
"AppDirectory"=hex(2):43,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,\
  00,20,00,46,00,69,00,6c,00,65,00,73,00,5c,00,52,00,65,00,67,00,69,00,6d,00,\
  65,00,5c,00,62,00,69,00,6e,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\regime_2\Parameters\AppExit]
@="Restart"
Запросы к Енисею
{
    "license": {
        "licenseId": "eb8e7ae7-df5c-4919-a116-3767e0b4de3b",
        "participantId": 10001,
        "organizationName": "test org",
        "contactPerson": "test user",
        "address": "г.Москва",
        "phoneNumber": "+79009999999",
        "email": "user@domain.com",
        "name": "YENISEI COMMUNITY LICENSE",
        "licenseType": 1,
        "productId": 2,
        "cluster": true,
        "quantity": 3,
        "core": 8,
        "db_quantity": 50,
        "db_max_size": 107374182400,
        "angara_support": true,
        "mobile_support": true,
        "expiredDate": 1748725199000,
        "createDate": 1739912400000
    },
    "state": "active"
}
{
    "all_nodes": [
        "yenisei@127.0.0.1",
        "yenisei_2@127.0.0.1"
    ],
    "cluster_nodes": [
        "yenisei@127.0.0.1",
        "yenisei_2@127.0.0.1"
    ]
}
  • wiki/offline_chestn_znak.txt
  • Последнее изменение: 2025/02/25 11:18
  • anton