Приложение Дозаремонт с интегрированой кассетницей
Выдача дозиметрических нарядов на производстве и
управление санкционированым доступом к дозиметрам

----------------------------------------------------------------------------

Changelog:  [история развития]

r884 ver_db 2.4.36
    - WEB-фейс - улучшена навигация по дереву объектов с помощью клавиатуры
    - API: исправлена ошибка обмена по протоколу json

r882 ver_db 2.4.36
    - добавлены вкладки подразделений/помещений/оборудования/видовРабот
    - добавлен функционал редактирования подразделений/помещений/оборудования/видовРабот
    - в db добавлена привязка помещения к порогу МЭД (при работе по наряду) и к касетнице при свободном посещении ЗКД
    - добавлен функционал фильтрации персонала неимеющего номера ТЛД

r881 ver_db 2.4.35
    - дозиметр с "ошибкой выдачи" переносится в конец очереди для выдачи
    - в журнал db добавлено сообщение об ошибке выдачи

r850 ver_db 2.4.34
    - добавлена причина вывода дозиметра из эксплуатации
    - найдена ошибка: закрытие наряда при выданных дозиметрах (проверить)

r841 ver_db 2.4.33
    - улучшена навигация по WEB-таблицам
    - добавлено контекстное мены в таблицу "Дозиметры"

r840 ver_db 2.4.33
    - добавлен вывод в журнал "дозиметр вкл/исключен из выдачи"
    - сообщение в журнале "добавлена доза" заменено на "чтение дозы с дозиметра"

r838 ver_db 2.4.32
    - на вкладке 'Журнал' добавлена фильтрация событий

r835 ver_db 2.4.32
    - API: исправлена ошибка обмена

r834 ver_db 2.4.32
    - исправлена опечатка в коде WEB-интерфейса (ошибка добавления работника в БД)
    - API: добавлено ограничение запросов на все команды с префиксом dzm_
           (нельзя выполнить запрос если еще не завершен предыдущий)

r833 ver_db 2.4.32
    - коррекция кода синхронизации - сохранение в БД ДозаРем даты последней записи в АСИДК

r832 ver_db 2.4.32
    - добавлена синхронизация card_number в БД АСИДК
    - добавлены аргументы запуска влияющие на WEB-фейс
      "-cass"               # не показать вкладки с дознарядами (секция post->tabs параметр cass = "B")
      "-cass" "B"           # не показать вкладки с дознарядами и выводить только кассетницу B
      "-tabs" "t0 t1 t2"    # заменить настройки конф.файла (секция post->tabs параметр visible)

r830 ver_db 2.4.32
    - API: добавлена команда kas_cell_by_sn() - выборка информации о ячейке по сер.номеру дозиметра
    - добавлен контроль времени персонала в режиме оперативной выдачи
    - добавлен чекбокс для фильтрации персонал имеющие/неимеющие ТЛД
    - исправлен баг: удаление записи в таблице CASS_REG из kas_del_worker()

r829 ver_db 2.4.32
    - API: добавлены команды
       dzm_usb_find() и dzm_usb_find2() - поиск дозиметра по USB интерфейсу
       dzm_doz_read() - чтение дозы из дозиметра и размещение ее в БД

r828 ver_db 2.4.32
    - Добавлен вывод количества выданных дозиметров и количество персонала в наряде
    - Добавлено закрытие модальных окон при клике на затемненной области WEB-интерфейса
    - Добавлен функционал администрирования FDB соединений (принудительный дисконнект из WEB-фейса)

r821 ver_db 2.4.32
    - Добавлен функционал для фильтрации имени наряда в сторонних приложениях
    - Добавлены функции для добавления информации из сторонних БД в текущую

r797 ver_db 2.4.29
    - В функционал работы с распоряжениями добавлены ограничения работнику на макс дозу

r796 ver_db 2.4.28
    - Добавлен функционал работы с распоряжениями

r783 ver_db 2.4.27
    - Добавлен функционал подсветки дозиметров с истекающим сроком поверки
    - Фиксация(запрет выдачи) дозиметра в ячейке, если истек срок поверки дозиметра

r758 ver_db 2.4.26
    - Добавлен функционал исключения ячейки из выдачи дозиметра

r755 ver_db 2.4.24
    - Исправлен баг. Исключена возможость удаления пользователя, если он не сдал дозиметр

r754 ver_db 2.4.23
    - Исправлен баг. Некорректно создавалась БД в Firebird v.2.5

r751 ver_db 2.4.23
    - WEB - Добавлена таблица текущих соединений

r750 ver_db 2.4.22
    - оптимизирована работа с коеффициентом разрешенной дозы
    - добавлены триггеры в таблицы CATEGORY, DIVISION, EQUIP, POST, WORKKIND, WORKPLACE
    - при создании новой БД добавлены демо-записи
    - WEB - исправлена ошибка при администрировании персонала (добавление/удаление/редактирование)

r737 ver_db 2.4.20
    - добавлен корректирующий коеффициент разрешенной дозы

r735 ver_db 2.4.19
    - коррекция БД для работы по распоряжениям

r733 ver_db 2.4.18
    - исправлен скрипт обновления БД если в путях присутствует пробел или кириллица
    - при восстановлении БД не теряется идентификация действий
    - увеличено дефолтное время хранения журнала с 90 суток до 150
    - при переводе БД в режим чтения, время хранения журнала устанавливается в 7300 суток

r732 ver_db 2.4.18
    - улучшено логирование действий и их идентификация
    - добавлено логирование процесса обновления БД

r731 ver_db 2.4.17
    - при остановке jCjS сокращяется время удержания БД до 7 сек (Firebird v.3)
    - добавлен функционал реконнекта к БД при разрыве соединения со стороны сервера БД
    - протестирован API для привязки дозиметра к доз.наряду
    - изменены триггеры записи в таблицу журнала событий, для логирования доз

r729 ver_db 2.4.16
    - добавил API для привязки дозиметра к доз.наряду
    - добавил команду записи в дозиметр номер наряда

r728 ver_db 2.4.15
    - создана внешняя синхронизация. Отсутствуют задержки в WEB при долгой синхронизации
    - реализован механизм ускорения синхронизации (исключение не нужных полей таблицы WORKER и
      отключение логирования при большом количестве данных)
    - добавлена задержка закрытия базы данных до 60 сек (Firebird v.3)

r727 ver_db 2.4.14
    - исправлен скрипт для обновления БД

r724 ver_db 2.4.12
    - добавлен скрипт для обновления БД

r723 ver_db 2.4.11
    - при синхронизации:
       если записей больше 100 то отключается триггер TRG_JOURNAL_AI
       длительность синхронизации записывается в БД
    - добавлен поиск по фамилии в таблице "Персонал"
    - добавлена кнопка 'Обработать наряды'
    - добавлена кнопка 'Очистить журнал от малозначащих значений'
    - ограничено количество полей при событиях (Вкладка 'Журнал' - Ускорена работа WEB-фейса)

r704 ver_db 2.4.9
    - добивил скрипт перевода ридера в режим загрузщика
      (он полезн при прошивке ридеров v > 1.1.5, в которых не включаются загрузщик из флешера)
    - добавил сохранение в журнал БД номер выданного дозиметра
    - добавил таблицу соединений с сохранением ip для однозначной привязке событий к компьтеру

r703 ver_db 2.4.8
    - исправлена ошибка при запросе через API несуществующей кассетницы
    - исправлен баг в таблице журнала (вывод не локализованного сообщения)
    - добавлено поле AKK в таблицу CASS_REG
    - добавлен вывод иформации о работнике,дозе,времени при выполнении функций API dzm_doz_out и dzm_doz_inp

r695 ver_db 2.4.7
    - добавлены поля DOSE_B и DOSE_N в таблицы CASS_REG, WORKER_TIMES, MONTH_TIME, MONTH_TIME_WOR
    - добавлено английское описание событий в таблицу CODES
    - добавлена фильтрация вывода в web-таблице "Персонал"

r692
    - добавлен вывод версии ПО считывателя PM130
    - поиск дозиметра: сканирование 5 раз по 3 сек
      и если не все команды записаны, то выполнить еще одну попытку сканирования и прошивки

r684
    - исправлена ошибка синхронизации БД если в данных встречается символ '

r682 ver_db 2.4.6
    - Версия для ЛАЭС  (ГОиЧС)
    - добавлены файлы конфигурации для ЛАЭС
    - версия протестирована на Курском МАЯКе и в лаб.условиях

r681
    - добавил ведение архива дозы дозиметра

r679
    - добавил команду сканирования радиоэфира и программирование дозиметра через RF

r665: ver_db 2.4.5
    изменение на WEB-фейсе:
    - добавлено автоматическое обновление таблицы журнала
    - добавлена интерактивность в таблицу "Дозиметры"
    - добавлена привязка/отвязка ячейки от работника
    - добавлена принудительное возвращение дозиметра в ячейку

r664: ver_db 2.4.4
    исправлен пропуск сообщений от событий БД для WEB-фейса
    добавлены таблицы "Кассетницы" и "Дозиметры"
    добавлены сообщения в журнал
    - зарегистрирована кассетница
    - изменена кассетница
    - удалена кассетница
    - привязан дозиметр к ячейке
    - отвязан дозиметр от ячейки
    - привязан работник к индивидуальной ячейке
    - отвязан работник от индивидуальной ячейки

r663: ver_db 2.4.3
    сохранение информации удаленного наряда
    добавлены сообщения в журнал
    - удален/добавлен работник в наряд
    - изменен КУ работника в наряде
    - изменен КУ работника в действующем наряде
    - запись ip-адреса при удалении измерения
    вывод информации удаленного наряда в журнале на WEB-фейсе

r632: ver_db 2.2
    исправлена выборка типа работ в WEB-фейсе
    исправлена генерация номера нового наряда в WEB-фейсе

r661: ver_db 2.4.2
    исправлена авторизация при server.auth.type = "os"
    исправлен языковой функционал на WEB-фейсе
    добавлены языковые константы
    добавлены сообщения в журнал
    - вход администратор/пользователя через WEB
    - зарегистр/открыт/прикрыт/закрыт/просрочен/изменен наряд
    - работник приступил к работе с доз.нарядами
    - подсоединен/отсоединен коннект к БД
    вывод журнала для администратора на WEB-фейсе

r660: ver_db 2.4
    добавлены сообщения в журнал
    - изменены данные работника в БД
    - получил/сдал дозиметр
    - удалено/изменено измерение

r658: ver_db 2.3
    исправлена генерация номера нового наряда в WEB-фейсе
    коррекция обрабочиков событий БД

r656: ver_db 2.3
    интегрирован код управления кассетницами
    в WEB-фейс добавлен функционал управления кодами доступа к кассетницами

----------------------------------------------------------------------------

TODO:       [пока не реализованные идеи]

    добавить прыжок из журнала во вкладку персонал для администрирования пользователя
    перенести дозиметр с "ошибкой выдачи" в конец очереди для выдачи (исключить застопоривание выдачи на одном дозиметре)
    исключить лозиметр из выдачи (не работает при выданом дозиметре)
    проверить функционал дозовых ограничений в схеме БД
    добавить ручную сдачу дозиметра через WEB-фейс
    обработка номеров наряда вида 0758/1
    добавить WEB таблицу выданных дозиметров дозаРем
    сделать сброс оперативной дозы относительно поcледнего замера ИДК
    добавить в БД поддержку логирования при работе через WEB (привязка действий к ip и логину)
    таблица Персонал - фильтр
    WEB таблица "Персонал" - добавить фильтр "не показывать уволенных/не имеющих ТЛД"
    WEB формы              - добавить фильтр "не показывать уволенных/не имеющих ТЛД"
    -==- добавить запись в журнал -==-
    - изменено/добавлено/удалено    подразделение
    - изменена/добавлена/удалена    должность
    - изменен/добавлен/удален       вид работы
    - изменено/добавлено/удалено    место работы
    - изменено/добавлено/удалено    помещение
    -

не забыть: Рыжикову  сделать процедуру тестирования датчиков наличия дозиметров
----------------------------------------------------------------------------------
Вопросы к Полимастеру
   - get_user_id и set_user_id  строка или число ?
