Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
doc:arccnt:mod:msc [2016/06/21 06:51]
denis [task]
doc:arccnt:mod:msc [2016/06/21 07:28] (текущий)
denis [card]
Строка 90: Строка 90:
 </​code>​ </​code>​
  
 +Владельцы карт.
  
 ===== card ===== ===== card =====
Строка 102: Строка 103:
 </​code>​ </​code>​
  
 +Карты.
 +
 +**CODE** - код карты в десятичном формате,​ пример:​ "​89,​11,​36277"​
 ===== schedule ===== ===== schedule =====
 <code sql> <code sql>
Строка 172: Строка 176:
 </​code>​ </​code>​
  
 +В данной таблице сохраняются все считывания карт. PERSON_ID может содержать null, если карта не имеет владельца.
  
  
Строка 178: Строка 182:
  
 При запуске модуль ожидает подключений к базе данных и к серверу данных,​ после чего циклически выполняет действия:​ При запуске модуль ожидает подключений к базе данных и к серверу данных,​ после чего циклически выполняет действия:​
-  - проверка поступления нового ​кода от считывателей,​ и если есть, фиксирование его в базе данных. + 
-  - генерирование новых задач +===== Получение и сохранение данных от считывателей ===== 
-  ​- ​закрытие просроченных задач+ 
 +Выполняется ​проверка поступления новых кодов от считывателей,​ и если есть, фиксирование ​их в базе данных в таблице ''​input''​. При этом выполняется поиск открытой задачи по данному считывателю,​ и, если у владельца карты есть права на задачу,​ в таблице ''​task''​ выполняется закрытие ​задачи со статусом 1 или 2. 
 + 
 +После успешной записи ​данных ​считывателю посылается обратная связь на светодиоды:​ 
 +  - длинный зеленый - задача закрыта 
 +  - длинный синий - задача не найдена,​ либо у владельца карты нет прав 
 +  - мигающий синий - карта не имеет владельца 
 + 
 +===== Генерирование новых задач ​===== 
 +По расписанию в таблице ''​schedule''​ создаются задачи и помещаются в таблицу ''​task''​. При этом сразу расчитываются даты открытия,​ закрытия и просрочки задачи. Дата просрочки вычисляется как дата начала следующей задачи по данному расписанию. 
 + 
 + 
 +===== Закрытие просроченных задач ​===== 
 +Открытые задачи,​ т.е. те у которых STATUS=0 и DT_REG is null, считаются просроченными,​ если DT_EXPIRE < текущее время. При этом в ''​task''​ для данной задачи прописывается STATUS=3 и DT_REG=текущее время. 
  
  
doc/arccnt/mod/msc.1466481111.txt.gz · Последние изменения: 2016/06/21 06:51 — denis
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0