Refactory jsonobject to load in memory.

This commit is contained in:
sunwen
2024-05-06 15:49:58 +08:00
parent 172446f6d3
commit 9e8cd69ad9
2 changed files with 247 additions and 197 deletions

View File

@@ -3,29 +3,29 @@
//#include <QObject>
#include <QString>
class QStringList;
#include <QStringList>
class QTranslator;
#include <QString>
struct host {
QString name;
QString ae;
QString ip;
QString port;
//QString isDefault;
QString name;
QString ae;
QString ip;
QString port;
//QString isDefault;
};
struct IpAddr {
bool dhcp;
QString ip;
QString mask;
QString ip;
QString mask;
QString gateway;
};
struct IpRoute
{
QString des;
QString gw;
QString mask;
QString des;
QString gw;
QString mask;
};
@@ -33,65 +33,62 @@ class JsonObject
{
public:
static JsonObject* Instance()
{
static JsonObject obj;
return &obj;
}
enum ServerType
{
static JsonObject* Instance()
{
static JsonObject obj;
return &obj;
}
enum ServerType
{
WORKLIST, PACS, LOCAL, RECON, MPPS
};
};
//
QString storageAlarmSize();
//
//for login
void setDefaultUser(const QString& str);
QString defaultUser();
//
QString storageAlarmSize();
//
//for login
void setDefaultUser(const QString& str);
QString defaultUser();
QStringList language();
void setDefaultLanguage(const QString& str);
QString defaultLanguage();
QStringList languageList();
void setDefaultLanguage(const QString& str);
QString defaultLanguage();
QString institutionName();
void setInstitutionName(const QString& str);
QString institutionName();
void setInstitutionName(const QString& str);
QString institutionAddr();
void setInstitutionAddr(const QString& str);
QString institutionAddr();
void setInstitutionAddr(const QString& str);
int lockerCount();
QString lockScreenTimeout();
void setLockScreenTimeout(const QString& str);
int getLockScreenTime();
void setLockScreenTime(int aTime);
QStringList protocals();
QString defaultProtocal();
void setDefaultProtocal(const QString& str);
QStringList protocals();
QString defaultProtocal();
void setDefaultProtocal(const QString& str);
QStringList lockScreenTimes();
QString defaultLockScreenTime();
void setDefaultLockScreenTime(const QString& str);
QStringList worklistFilters();
QString defaultFilter();
void setDefaultFilter(const QString& str);
QStringList worklistFilters();
QString defaultFilter();
void setDefaultFilter(const QString& str);
host getServer(ServerType type);
void setServer(ServerType type, const host& list);
host getServer(ServerType type);
void setServer(ServerType type, const host& list);
//for network manager
//for network manager
QString passWord();
void setPassword(const QString& pwd);
QString passWord();
void setPassword(const QString& pwd);
QString interfaceName();
void setInterfaceName(const QString& name);
QString interfaceName();
void setInterfaceName(const QString& name);
bool isDHCP();
bool isDHCP();
bool isDmsSimulator();
void autoDHCP(bool);
void autoDHCP(bool);
bool getScanConfirm();
void setScanConfirm(bool val);
@@ -108,46 +105,83 @@ public:
const char* getEmptyScanID();
void setEmptyScanID(const char* id);
IpAddr getDefaultIpAddr();
void setDefaultIpAddr(const IpAddr& addr);
IpAddr getDefaultIpAddr();
void setDefaultIpAddr(const IpAddr& addr);
QList<QStringList> getIpAddrList();
void setIpAddrList(const QList<QStringList>& list);
QList<QStringList> getIpAddrList();
void setIpAddrList(const QList<QStringList>& list);
QString getDefaultGateway();
void setDefaultGateway(const QString& gw);
QString getDefaultGateway();
void setDefaultGateway(const QString& gw);
QList<QStringList> getIpRouteList();
void setIpRouteList(const QList<QStringList>& list);
QStringList getScreenSaverInfomation();
QList<QStringList> getIpRouteList();
void setIpRouteList(const QList<QStringList>& list);
QStringList getScreenSaverInfomation();
int getOperationLogExpireDays();
int getPatientListExpireDays();
private:
void setJsonString(const char* catergory, const char* stringName, const char* stringValue, bool save = true);
char* getJsonString(const char* catergory, const char* stringName);
void setJsonString(const char* catergory, const char* stringName, const char* stringValue, bool save = true);
char* getJsonString(const char* catergory, const char* stringName);
void setBool(const char* catergory, const char* stringName,bool val, bool save = true);
void setBool(const char* catergory, const char* stringName,bool val, bool save = true);
bool getBool(const char* catergory, const char* stringName);
char* getArrayNode(const char* catergory, const char* stringName, int index, const char* id);
void setArrayNode(const char* catergory, const char* stringName, int index, const char* id, const char* stringValue);
int getArraySize(const char* catergory, const char* stringName);
char* getArrayNode(const char* catergory, const char* stringName, int index, const char* id);
void setArrayNode(const char* catergory, const char* stringName, int index, const char* id, const char* stringValue);
int getArraySize(const char* catergory, const char* stringName);
bool loadcfg();
bool loadcfgDefault();
bool savecfg();
bool loadcfg();
bool loadcfgDefault();
void init();
bool savecfg();
JsonObject();
~JsonObject();
void* json_root = nullptr;
bool m_bLoaded = false;
QString tmp_psw;
QString mStorageAlarmSize;
QString mDefaultUser;
QString mDefaultLanguage;
QString mInstitutionName;
QString mInstitutionAddr;
QString mDefaultProtocal;
QString mInterfaceName;
QString mGateway;
QStringList mLockScreenTimeList;
QStringList mProtocalList;
QStringList mLanguageList;
QStringList mScreenSaverInfoList;
int mLockScreenTime;
int mOperationLogExpireDays;
int mPatientListExpireDays;
host mWorklistHost;
host mPacsHost;
host mLocalHost;
host mReconHost;
host mMppsHost;
IpAddr mDefaultIpAddress;
bool mDhcp;
bool mDmsSimulator;
bool mScanConfirm;
bool mCompleteNotify;
bool mAnonymousMode;
bool mScreenSaverMode;
JsonObject();
~JsonObject();
void* json_root = nullptr;
bool m_bLoaded = false;
QString tmp_psw;
};
#endif // JSONOBJECT_H