Работа с базой данных сообщений

Необходимо разработать:

  1. Визуальный компонент для отображения и подтверждения сообщений (VisInfoPanel)
  2. Поставщик данных dpFireBirdDB

Взаимодействие этих компонентов должно происходить через интерфейс базового класса VsqDataProvider - поставщик данных (dpFireBirdDB наследует его).

Иерархия классов: VSQ

VisInfoPanel

Класс уже создан. Необходимо доработать функциональность:

  1. Соединение с поставщиком данных
  2. Переодический запрос информации и отображение её (текущее, первое по времени из активных)
  3. Подтвержение реакции ползователя. По клику, отметить сообщение как подтверждённое.

DpFirebirdDB

  1. Создать класс унаследовав VsqDataProvider - поставщик данных
  2. В VsqDataProvider - поставщик данных добавить необходимые фунции взаимодействия с компонентами визуализации.
  3. добавить необходимые свойства для хранения информации о сооединении с базой данных
  4. релиализовать фунциональность работы с базой данных

Функции взаимодействия с компонентами визуализации:

  • void getMessages(DpAlarmMessage *messages, DpAlarmMessage::States flags) - возвращает список сообщений соответствующие маске флагов
  • bool setMessageState(DpAlarmMessage messages, DpAlarmMessage::State newState) - установливает новое состояние

Пример реализации базовой функциональности: RpSvrTcpClient

DpAlarmMessage

Создать класс в заголовочном файле VsqDataProvider - поставщик данных. Без базового класса. Функции:

  1. Чтение времени сообщения (запись при создании объекта)
  2. Чтение сообщения (QString, запись при создании)
  3. Чтение/запись состояния (перечисление)

Дополнение:

class VsqRule;
 
class VsqMessageTag : public VsqTag
{
public:
    QString name();
    VsqRule *rule();
};
 
class VsqRule
{
public:
    bool isCorrect(VsqMessageTag *VsqMessageTag);
 
};
 
class VsqMessage {
public:
    QDateTime getDT();
    QString getString();
};
doc/vsq/development/providerdbmessage.txt · Последние изменения: 2013/05/12 20:35 — jamis7005
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0