| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146 |
- #include "machine.h"
- #include <QJsonDocument>
- #include <QJsonObject>
- #include <QJsonValue>
- #include <QNetworkAccessManager>
- #include <QUrlQuery>
- #include <basemainTr.h>
- #include <optional>
- #include "appevent.h"
- namespace TC {
- void critical(const QString &text, const QString &title = Tr::tr("Error"));
- std::optional<QJsonValue> sendRequest(QNetworkAccessManager::Operation op,
- const QString &url,
- const QByteArray &postData = QByteArray());
- static const QLatin1String scCode("code");
- static const QLatin1String scMessage("message");
- static const QLatin1String scData("data");
- MachineList::MachineList()
- : url("/api/v1/machine/list")
- {}
- MachineList::MachineList(const QString &machineCode)
- {
- QUrl qurl("/api/v1/machine/list");
- QUrlQuery query;
- query.addQueryItem("machine_code", machineCode);
- qurl.setQuery(query);
- url = qurl.toString();
- }
- std::optional<QJsonValue> MachineList::get()
- {
- return sendRequest(QNetworkAccessManager::GetOperation, url);
- // const QJsonObject &object = data.value().toObject();
- // Login::Data ret;
- // if (object[scJwtToken].isObject()) {
- // const QJsonObject &jwtObject = object[scJwtToken].toObject();
- // ret.accessToken = jwtObject[scAccessToken].toString();
- // ret.accessExpire = jwtObject[scAccessExpire].toVariant().toLongLong();
- // ret.refreshAfter = jwtObject[scRefreshAfter].toVariant().toLongLong();
- // }
- // qDebug() << object;
- // //设置 token 到全局变量
- // if (ret.accessExpire > AppEvent::time()) {
- // AppEvent::instance()->setJwtToken(ret.accessToken);
- // AppEvent::instance()->setRefreshTime(ret.refreshAfter);
- // return true;
- // }
- // return false;
- }
- MachineInsert::MachineInsert()
- : url("/api/v1/machine/addone")
- {
- }
- MachineInsert::MachineInsert(const QString &machineCode)
- : url("/api/v1/machine/addone")
- {
- QJsonObject json;
- json["machine_code"] = machineCode;
- json["computer_brand"] = "";
- QJsonDocument jsonData(json);
- sendData = jsonData.toJson();
- }
- std::optional<QJsonValue> MachineInsert::post()
- {
- std::optional<QJsonValue> responseData = sendRequest(QNetworkAccessManager::PostOperation,
- url,
- sendData);
- if (!responseData.has_value()) {
- return false;
- }
- QJsonValue data;
- const QJsonObject object = responseData.value().toObject();
- if (object.contains(scCode)) {
- int code = object.value(scCode).toInt();
- if (code != 200) {
- // 获取当前活动窗口
- critical(object[scMessage].toString());
- return false;
- }
- }
- return true;
- // if (object.contains(scMessage)) {
- // const QString &message = object.value(scMessage).toString();
- // // Core::MessageManager::writeFlashing(message);
- // }
- // if (object.contains(scData)) {
- // data = object.value(scData);
- // }
- }
- MachineUpdate::MachineUpdate()
- : url("/api/v1/machine/update")
- {}
- MachineUpdate::MachineUpdate(const QString &uuid, const QString &userUuid, const QJsonObject &old)
- : url("/api/v1/machine/update")
- {
- QJsonObject json = old;
- json["uuid"] = uuid;
- json["user_uuid"] = userUuid;
- QJsonDocument jsonData(json);
- sendData = jsonData.toJson();
- }
- std::optional<QJsonValue> MachineUpdate::post()
- {
- std::optional<QJsonValue> responseData = sendRequest(QNetworkAccessManager::PostOperation,
- url,
- sendData);
- if (!responseData.has_value()) {
- return false;
- }
- QJsonValue data;
- const QJsonObject object = responseData.value().toObject();
- if (object.contains(scCode)) {
- int code = object.value(scCode).toInt();
- if (code != 200) {
- // 获取当前活动窗口
- critical(object[scMessage].toString());
- return false;
- }
- }
- return true;
- }
- } // namespace TC
|