Timesheets-Server
Timesheets server
Načítám...
Vyhledávám...
Nebylo nic nalezeno
Dokumentace třídy Httpd::ControllerTicketsVw

Manipuluje s informacemi o ticketech. ...

#include <controllerticketsvw.h>

Diagram dědičnosti pro třídu Httpd::ControllerTicketsVw:
Httpd::AbstractController

Veřejné metody

 ControllerTicketsVw (HobrasoftHttpd::HttpConnection *parent)
 
- Veřejné metody dědí se z Httpd::AbstractController
 AbstractController (HobrasoftHttpd::HttpConnection *parent)
 Konstruktor.
 
virtual void service (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response)
 Obsluha požadavku.
 
void setCheckId (bool x)
 Nastavuje kontrolu položky ID v datech při PUT a POST.
 
void setAuthorizer (RequestAuthorizer *authorizer)
 
AuthenticatedUserauthenticatedUser () const
 
bool checkId () const
 Vrací stav kontroly položky ID v datech při PUT a POST.
 
Db::Databasedb ()
 

Chráněné metody

void serviceList (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response) Q_DECL_OVERRIDE
 Měl by poslat v odpovědi kompletní seznam všech objektů ve třídě a ukončit se.
 
void serviceIdGet (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QString &id) Q_DECL_OVERRIDE
 Pošle odpověď na požadavek konkrétního ID metodou GET.
 
void serviceIdPut (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariantMap &data) Q_DECL_OVERRIDE
 Pošle odpověď na požadavek konkrétního ID metodou PUT - obvykle vloží nový objekt nebo přepíše existující objekt.
 
void serviceIdPost (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariantMap &data) Q_DECL_OVERRIDE
 Pošle odpověď na požadavek konkrétního ID metodou PUT - obvykle vloží nový objekt nebo přepíše existující objekt.
 
void serviceIdDelete (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QString &id) Q_DECL_OVERRIDE
 Pošle odpověď na požadavek konkrétního ID metodou DELETE - obvykle objekt smaže.
 
- Chráněné metody dědí se z Httpd::AbstractController
virtual bool exists (const QString &id)
 Kontrola existence zadaného ID.
 
virtual bool exists (HobrasoftHttpd::HttpRequest *request, const QString &id)
 Kontrola existence zadaného ID.
 
virtual void serviceOK (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariant &data=QVariant())
 Pošle odpověď 200 OK.
 
virtual void serviceError (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, int code, const QString &error, const QVariantMap &data)
 Pošle chybovou odpověď
 
virtual void serviceEvents (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response)
 Pošle v odpovědi kompletní seznam všech objektů ve třídě a následně
 
virtual void serviceIdEvents (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QString &id)
 Pošle v odpovědi proud událostí spojených se všemi objekty ve třídě
 
virtual void serviceEvent (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariant &data)
 Pošle do otevřeného proudu událostí jednu událost.
 
virtual bool isAuthorized (Security::Permissions::Permission)
 
HobrasoftHttpd::HttpRequest * request () const
 Vrací ukazatel na aktuální request.
 
HobrasoftHttpd::HttpConnection * connection () const
 Vrací ukazatel na aktuální connection.
 

Další zděděné členy

- Statické chráněné metody dědí se z Httpd::AbstractController
static QVariantMap putKey (const QVariant &key)
 

Detailní popis

Manipuluje s informacemi o ticketech.

GET /tickets

Vrací seznam tiketů, které jsou vlastněné přihlášeným uživatelem, nebo spadají do kategorie, do které má uživatel přístup.

Přípustné modifikace URL:

  • /tickets - vrací pole ticketů
  • /tickets/<id> - vrací jeden ticket
Parametry
all- Normálně jsou v seznamu pouze otevřené tickety, parametrem all = true lze vypsat všechny tickety
[
{
"category": 2,
"date": "2020-05-01T00:00:00.000",
"description": "Práce na Simul 6 - vývoj",
"price": 1000,
"ticket": 1,
"user": 2
},
{
"category": 2,
"date": "2020-05-01T00:00:00.000",
"description": "Práce na Simul 6 - opravy",
"price": 1000,
"ticket": 2,
"user": 2
}
]

Definice je uvedena na řádku 61 v souboru controllerticketsvw.h.

Dokumentace konstruktoru a destruktoru

◆ ControllerTicketsVw()

ControllerTicketsVw::ControllerTicketsVw ( HobrasoftHttpd::HttpConnection * parent)

Definice je uvedena na řádku 15 v souboru controllerticketsvw.cpp.

15 : AbstractController(parent) {
16}
AbstractController(HobrasoftHttpd::HttpConnection *parent)
Konstruktor.

Dokumentace členských funkcí

◆ serviceIdDelete()

void ControllerTicketsVw::serviceIdDelete ( HobrasoftHttpd::HttpRequest * request,
HobrasoftHttpd::HttpResponse * response,
const QString & id )
protectedvirtual

Pošle odpověď na požadavek konkrétního ID metodou DELETE - obvykle objekt smaže.

Defaultní implementace posílá chybu 501 Not Implemented

Reimplementuje stejnojmenný prvek z Httpd::AbstractController.

Definice je uvedena na řádku 54 v souboru controllerticketsvw.cpp.

54 {
55 db()->remove(Dbt::TicketsVw(id));
56 serviceOK(request, response);
57}
virtual void serviceOK(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariant &data=QVariant())
Pošle odpověď 200 OK.
HobrasoftHttpd::HttpRequest * request() const
Vrací ukazatel na aktuální request.

◆ serviceIdGet()

void ControllerTicketsVw::serviceIdGet ( HobrasoftHttpd::HttpRequest * request,
HobrasoftHttpd::HttpResponse * response,
const QString & id )
protectedvirtual

Pošle odpověď na požadavek konkrétního ID metodou GET.

Defaultní implementace posílá chybu 501 Not Implemented

Reimplementuje stejnojmenný prvek z Httpd::AbstractController.

Definice je uvedena na řádku 32 v souboru controllerticketsvw.cpp.

32 {
33 bool all = QVariant(request->parameter("all")).toBool();
34 auto list = db()->ticketsVw(id.toInt(), all);
35 if (list.isEmpty()) {
36 serviceError(request, response, 404, "not-found", "Not found");
37 return;
38 }
39
40 serviceOK(request, response, list[0].toMap());
41}
virtual void serviceError(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, int code, const QString &error, const QVariantMap &data)
Pošle chybovou odpověď

◆ serviceIdPost()

void ControllerTicketsVw::serviceIdPost ( HobrasoftHttpd::HttpRequest * request,
HobrasoftHttpd::HttpResponse * response,
const QVariantMap & data )
protectedvirtual

Pošle odpověď na požadavek konkrétního ID metodou PUT - obvykle vloží nový objekt nebo přepíše existující objekt.

Defaultní implementace posílá chybu 501 Not Implemented

Reimplementuje stejnojmenný prvek z Httpd::AbstractController.

Definice je uvedena na řádku 49 v souboru controllerticketsvw.cpp.

49 {
50 serviceIdPut(request, response, data);
51}
void serviceIdPut(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariantMap &data) Q_DECL_OVERRIDE
Pošle odpověď na požadavek konkrétního ID metodou PUT - obvykle vloží nový objekt nebo přepíše existu...

◆ serviceIdPut()

void ControllerTicketsVw::serviceIdPut ( HobrasoftHttpd::HttpRequest * request,
HobrasoftHttpd::HttpResponse * response,
const QVariantMap & data )
protectedvirtual

Pošle odpověď na požadavek konkrétního ID metodou PUT - obvykle vloží nový objekt nebo přepíše existující objekt.

Defaultní implementace posílá chybu 501 Not Implemented

Reimplementuje stejnojmenný prvek z Httpd::AbstractController.

Definice je uvedena na řádku 44 v souboru controllerticketsvw.cpp.

44 {
45 serviceOK(request, response, putKey(db()->save(Dbt::TicketsVw::fromMap(data))));
46}

◆ serviceList()

void ControllerTicketsVw::serviceList ( HobrasoftHttpd::HttpRequest * request,
HobrasoftHttpd::HttpResponse * response )
protectedvirtual

Měl by poslat v odpovědi kompletní seznam všech objektů ve třídě a ukončit se.

Defaultní implementace posílá chybu 501 Not Implemented

Reimplementuje stejnojmenný prvek z Httpd::AbstractController.

Definice je uvedena na řádku 19 v souboru controllerticketsvw.cpp.

19 {
20 bool all = QVariant(request->parameter("all")).toBool();
21 QString category = request->parameter("category");
22 QList<Dbt::TicketsVw> list;
23 if (category.isEmpty()) {
24 list = db()->ticketsVw(all);
25 } else {
26 list = db()->ticketsVw(Dbt::Categories(category), all);
27 }
28 serviceOK(request, response, toList(list));
29}

Dokumentace pro tuto třídu byla vygenerována z následujících souborů: