Skip to content

OnlyTarg/Espia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Смысл программы - фиксация местонахождения руководства. Кнопками обозначены ФИО руководства. Кнопки имеют два состояния - красные (должностное лицо отсутствует) и зеленые (должностное лицо на работе). Напротив каждой фамилии есть информация: во сколько и через какое КПП был пропущено должностное лицо. Сервер стоит у меня в кабинете, клиенты находятся на контрольно - пропускных пунктах. Если наряд на кпп нажимает на кнопку, то соответствующие изменения отображатся у меня на сервере. Также приложение можно установить на любом компьютере предприятия. Оно запуститься без возможности вносить изменения в статус кнопок.

Детальное описание: При старте, программа определяет ip адрес компьютера пользователя и в зависимости от этого запускает сервер или один из клиентов. Список разрешенных ip адресов находиться на сервере (изменения вносятся в текстовом документе “allowedClients.txt”). В зависимости от ip адреса пользователя, запускается клиент с разными возможностями:

  • может ли клиент вносить изменения или нет;
  • видит ли клиент информацию о месте и времени прибытия / убытия руководства.

Кнопки на сервере создаются автоматически в зависимости от количества фамилий руководителей в файле listOfPersons.txt. При подключении пользователя к серверу, сервер проверяет наличие этого ip адреса в списке разрешенных и после этого отправляет необходимые данные про количество кнопок с их всеми настройками (реализовано с помощью передачи JSON объекта). После получения этих данных клиентское приложение формирует интерфейс, добавляет необходимые кнопки и функционал. Грубо говоря, это дает возможность изменять все данные приложения только на сервере, а клиенты все подкачивают автоматически. Автоматизированность приложения. Так как приложения рассчитано для военнослужащих, код написан с расчетом на минимум действий со стороны пользователя. При внесении изменений в статус кнопки, вся информация сохраняется в файл (используется сериализация). То есть, в случае отключения компьютера по той или иной причине, все данные сохраняться в любом случае. После перезапуска, программа автоматически подкачает всю информацию. При прерывании сети, клиенты пробуют переподключиться каждые 30 секунд. К серверному приложению подключена встроенная база данных H2. Реализовано в большей части только для получения опыта работы с SQL. База данных фиксирует время и дату подключения/отключения клиента к/от сервера, причину отключения, IP адреса клиента, Фамилию клиента.

В приложении добавлено логирование всех ошибок в файл (можно отключить в properties).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages