|
|
```
|
|
|
Soubor: tag.db
|
|
|
3 tabulky: tag, message_tags
|
|
|
```
|
|
|
|
|
|
### Operace čtení, nemění stav db, vrací pouze určitou hodnotu z tabulky:
|
|
|
* `QList<qint64> getMsgIdsContainSearchTagText(const QString &text) const`
|
|
|
* vrací seznam ID zpráv, které mají přiřazený tag obsahující hledaný podřetězec. Vstupem je hledaný podřetězec. Výstupem seznam ID zpráv.
|
|
|
|
|
|
### Operace, které modifikují obsah tabulek, mění stav databáze:
|
|
|
* `bool insertTag(const QString &tagName, const QString &tagColor)`
|
|
|
* provede vložení nového tagu do databáze. Vstupem je jméno tagu a jeho barva. Vrací true, jestli se operace zdařila.
|
|
|
* `bool updateTag(int id, const QString &tagName, const QString &tagColor)`
|
|
|
* provede aktualizaci tagu. Vstupem je jméno tagu a jeho barva. Vrací true, jestli se operace zdařila.
|
|
|
* `bool deleteTag(int id)`
|
|
|
* smaže tag z databáze. Vstupem je id tagu v databázi. Vrací true, jestli se operace zdařila.
|
|
|
* `bool deleteAllTags(void)`
|
|
|
* smaže všechny tagy z databáze. Vrací true, jestli se operace zdařila.
|
|
|
* `bool removeAllTagsFromMsg(const QString &userName, qint64 msgId)`
|
|
|
* zruší přiřazení všech tagů u konkrétní zprávy. Vstupem je uživatelské jméno a id zprávy. Vrací true, jestli se operace zdařila.
|
|
|
* `bool assignTagToMsg(const QString &userName, int tagId, qint64 msgId)`
|
|
|
* přiřadí konkrétní tag konkrétní zprávě. Vstupem je uživatelské jméno, id tagu a id zprávy. Vrací true, jestli se operace zdařila.
|
|
|
* `bool removeTagFromMsg(const QString &userName, int tagId, qint64 msgId)`
|
|
|
* zruší přiřazení konkrétního tagu ke konkrétní zprávě. Vstupem je uživatelské jméno, id tagu a id zprávy. Vrací true, jestli se operace zdařila.
|
|
|
* `bool removeAllMsgTagsFromAccount(const QString &userName)`
|
|
|
* zruší přiřazení tagu u všech zpráv. Vstupem je uživatelské jméno. Vrací true, jestli se operace zdařila. |
|
|
\ No newline at end of file |