diff --git a/zeiterfassungnetworklib/zeiterfassungapi.cpp b/zeiterfassungnetworklib/zeiterfassungapi.cpp index 0182cbd..dab1c09 100644 --- a/zeiterfassungnetworklib/zeiterfassungapi.cpp +++ b/zeiterfassungnetworklib/zeiterfassungapi.cpp @@ -269,6 +269,18 @@ std::unique_ptr ZeiterfassungApi::doGetProjects(int userId, co return std::make_unique(std::unique_ptr(m_manager->get(request)), this); } +std::unique_ptr ZeiterfassungApi::doGetWorkpackages(int userId, const QDate &date, const QString &project) +{ + QNetworkRequest request(QUrl(QStringLiteral("%0json/combobox?persnr=%1&date=%2&dqkey=WORKPACKAGE&kowert0=%3") + .arg(m_url.toString()) + .arg(userId) + .arg(formatDate(date)) + .arg(project))); + request.setRawHeader(QByteArrayLiteral("sisAppName"), QByteArrayLiteral("bookingCalendar")); + + return std::make_unique(std::unique_ptr(m_manager->get(request)), this); +} + std::unique_ptr ZeiterfassungApi::doGetReport(int userId, const QDate &date) { QNetworkRequest request(QUrl(QStringLiteral("%0json/auswertung/month?persNr=%1&date=%2") diff --git a/zeiterfassungnetworklib/zeiterfassungapi.h b/zeiterfassungnetworklib/zeiterfassungapi.h index 80994d2..8316844 100644 --- a/zeiterfassungnetworklib/zeiterfassungapi.h +++ b/zeiterfassungnetworklib/zeiterfassungapi.h @@ -63,6 +63,8 @@ public: std::unique_ptr doGetCostcentres(int userId, const QDate &date); std::unique_ptr doGetProjects(int userId, const QDate &date); + std::unique_ptr doGetWorkpackages(int userId, const QDate &date, const QString &project); + std::unique_ptr doGetReport(int userId, const QDate &date); std::unique_ptr doGetPresenceStatus(); std::unique_ptr doGetAbsences(int userId, const QDate &start, const QDate &end);