feat: AM 默认程序迁移
默认程序迁移到AM中 Log: 默认程序迁移到AM Task: https://pms.uniontech.com/task-view-140029.html Influence: 默认程序 Change-Id: I0824c503b6ab844f09b3bf3cf740565b1e4215e5
This commit is contained in:
48
src/modules/methods/process_status.hpp
Normal file
48
src/modules/methods/process_status.hpp
Normal file
@ -0,0 +1,48 @@
|
||||
#ifndef PROCESS_STATUS_H_
|
||||
#define PROCESS_STATUS_H_
|
||||
|
||||
#include <QDebug>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonDocument>
|
||||
|
||||
namespace Methods {
|
||||
struct ProcessStatus {
|
||||
QString data;
|
||||
QString type;
|
||||
QString id;
|
||||
int code;
|
||||
};
|
||||
|
||||
inline void toJson(QByteArray& array, const ProcessStatus& processStatus)
|
||||
{
|
||||
QJsonObject obj {
|
||||
{ "type", processStatus.type },
|
||||
{ "data", processStatus.data },
|
||||
{ "id", processStatus.id },
|
||||
{ "code", processStatus.code }
|
||||
};
|
||||
|
||||
array = QJsonDocument(obj).toJson();
|
||||
}
|
||||
inline void fromJson(const QByteArray& array, ProcessStatus& quit)
|
||||
{
|
||||
QJsonDocument doc = QJsonDocument::fromJson(array);
|
||||
if (!doc.isObject()) {
|
||||
qWarning() << "fromJson quit failed";
|
||||
return;
|
||||
}
|
||||
|
||||
QJsonObject obj = doc.object();
|
||||
if (!obj.contains("id") || !obj.contains("data") || !obj.contains("code")) {
|
||||
qWarning() << "id data code not exist in quit array";
|
||||
return;
|
||||
}
|
||||
|
||||
quit.id = obj.value("id").toString();
|
||||
quit.data = obj.value("data").toString();
|
||||
quit.code = obj.value("code").toInt();
|
||||
quit.type = obj.value("type").toString();
|
||||
}
|
||||
} // namespace Methods
|
||||
|
||||
#endif // PROCESS_STATUS_H_
|
70
src/modules/methods/use_default_app_info.h
Normal file
70
src/modules/methods/use_default_app_info.h
Normal file
@ -0,0 +1,70 @@
|
||||
#ifndef USE_DEFAULT_APP_INFO_H
|
||||
#define USE_DEFAULT_APP_INFO_H
|
||||
|
||||
#include <QVector>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
#include <vector>
|
||||
|
||||
namespace Methods {
|
||||
struct DefaultUserAppInfo {
|
||||
QVariantList appId;
|
||||
std::string appType;
|
||||
QVariantList supportedType;
|
||||
};
|
||||
|
||||
struct DefaultUserAppInfos {
|
||||
std::vector<DefaultUserAppInfo> appInfos;
|
||||
};
|
||||
|
||||
inline void toJson(QJsonObject& j, const DefaultUserAppInfo& userAppInfo)
|
||||
{
|
||||
j = QJsonObject{ { "appId", QJsonArray::fromVariantList(userAppInfo.appId) }, { "appType", userAppInfo.appType.c_str() }, { "supportedType", QJsonArray::fromVariantList(userAppInfo.supportedType) }};
|
||||
}
|
||||
|
||||
inline void fromJson(const QJsonObject& j, DefaultUserAppInfo& userAppInfo)
|
||||
{
|
||||
|
||||
if (j.contains("appId")) {
|
||||
userAppInfo.appId = j.value("appId").toArray().toVariantList();
|
||||
}
|
||||
|
||||
if (j.contains("appType")) {
|
||||
userAppInfo.appType = j.value("appType").toString().toStdString();
|
||||
}
|
||||
|
||||
if (j.contains("supportedType")) {
|
||||
userAppInfo.supportedType = j.value("supportedType").toArray().toVariantList();
|
||||
}
|
||||
}
|
||||
|
||||
inline void toJson(QJsonObject& j, const DefaultUserAppInfos& userAppInfos)
|
||||
{
|
||||
QJsonObject tmpObj;
|
||||
QJsonArray appInfoArray;
|
||||
|
||||
for (auto appInfo : userAppInfos.appInfos) {
|
||||
toJson(tmpObj, appInfo);
|
||||
appInfoArray.append(tmpObj);
|
||||
}
|
||||
|
||||
j = QJsonObject {
|
||||
{"appInfos", appInfoArray}
|
||||
};
|
||||
}
|
||||
|
||||
inline void fromJson(const QJsonObject& j, DefaultUserAppInfos& userAppInfos)
|
||||
{
|
||||
QJsonObject tmpObj = j;
|
||||
|
||||
if (j.contains("appInfos")) {
|
||||
DefaultUserAppInfo userAppInfo;
|
||||
for (auto appInfo : tmpObj.take("appInfos").toArray()) {
|
||||
fromJson(appInfo.toObject(), userAppInfo);
|
||||
userAppInfos.appInfos.push_back(userAppInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
} // namespace Methods
|
||||
|
||||
#endif // USE_DEFAULT_APP_INFO_H
|
59
src/modules/methods/use_mime_app_info.h
Normal file
59
src/modules/methods/use_mime_app_info.h
Normal file
@ -0,0 +1,59 @@
|
||||
#ifndef USE_MIME_APP_INFO_H
|
||||
#define USE_MIME_APP_INFO_H
|
||||
|
||||
#include <QVector>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
#include <vector>
|
||||
|
||||
namespace Methods {
|
||||
struct UserAppInfo {
|
||||
std::string deskopid;
|
||||
QVariantList supportedMime;
|
||||
};
|
||||
|
||||
struct UserAppInfos {
|
||||
std::vector<UserAppInfo> appInfos;
|
||||
};
|
||||
|
||||
inline void toJson(QJsonObject& j, const UserAppInfo& userAppInfo)
|
||||
{
|
||||
j = QJsonObject{ { "DesktopId", userAppInfo.deskopid.c_str() }, { "SupportedMime", QJsonArray::fromVariantList(userAppInfo.supportedMime) } };
|
||||
}
|
||||
|
||||
inline void fromJson(const QJsonObject& j, UserAppInfo& userAppInfo)
|
||||
{
|
||||
if (j.contains("DesktopId")) {
|
||||
userAppInfo.deskopid = j.value("DesktopId").toString().toStdString();
|
||||
}
|
||||
|
||||
if (j.contains("SupportedMime")) {
|
||||
userAppInfo.supportedMime = j.value("SupportedMime").toArray().toVariantList();
|
||||
}
|
||||
}
|
||||
inline void toJson(QJsonArray& j, const UserAppInfos& userAppInfos)
|
||||
{
|
||||
QJsonObject tmpObj;
|
||||
QJsonArray appInfoArray;
|
||||
|
||||
for (auto appInfo : userAppInfos.appInfos) {
|
||||
toJson(tmpObj, appInfo);
|
||||
appInfoArray.append(tmpObj);
|
||||
}
|
||||
|
||||
j = appInfoArray;
|
||||
}
|
||||
|
||||
inline void fromJson(const QJsonArray& j, UserAppInfos& userAppInfos)
|
||||
{
|
||||
QJsonArray tmpObj = j;
|
||||
|
||||
for (auto iter : tmpObj) {
|
||||
UserAppInfo userAppInfo;
|
||||
fromJson(iter.toObject(), userAppInfo);
|
||||
userAppInfos.appInfos.push_back(userAppInfo);
|
||||
}
|
||||
}
|
||||
} // namespace Methods
|
||||
|
||||
#endif // USE_MIME_APP_INFO_H
|
Reference in New Issue
Block a user