student.cpp 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #include "student.h"
  2. #include <QJsonDocument>
  3. #include <QJsonObject>
  4. #include <QJsonValue>
  5. #include <QNetworkAccessManager>
  6. #include <QUrlQuery>
  7. #include <optional>
  8. #include "appevent.h"
  9. namespace TC {
  10. std::optional<QJsonValue> sendRequest(QNetworkAccessManager::Operation op,
  11. const QString &url,
  12. const QByteArray &postData = QByteArray());
  13. StudentList::StudentList()
  14. : url("/api/v1/student/list")
  15. {}
  16. StudentList::StudentList(const QString &name)
  17. {
  18. QUrl qurl("/api/v1/student/list");
  19. QUrlQuery query;
  20. query.addQueryItem("name", name);
  21. qurl.setQuery(query);
  22. url = qurl.toString();
  23. }
  24. std::optional<QJsonValue> StudentList::get()
  25. {
  26. std::optional<QJsonValue> data = sendRequest(QNetworkAccessManager::GetOperation, url);
  27. return data;
  28. // const QJsonObject &object = data.value().toObject();
  29. // Login::Data ret;
  30. // if (object[scJwtToken].isObject()) {
  31. // const QJsonObject &jwtObject = object[scJwtToken].toObject();
  32. // ret.accessToken = jwtObject[scAccessToken].toString();
  33. // ret.accessExpire = jwtObject[scAccessExpire].toVariant().toLongLong();
  34. // ret.refreshAfter = jwtObject[scRefreshAfter].toVariant().toLongLong();
  35. // }
  36. // qDebug() << object;
  37. // //设置 token 到全局变量
  38. // if (ret.accessExpire > AppEvent::time()) {
  39. // AppEvent::instance()->setJwtToken(ret.accessToken);
  40. // AppEvent::instance()->setRefreshTime(ret.refreshAfter);
  41. // return true;
  42. // }
  43. // return false;
  44. }
  45. } // namespace TC