196 lines
4.2 KiB
C++
196 lines
4.2 KiB
C++
#ifndef JSONOBJECT_H
|
|
#define JSONOBJECT_H
|
|
|
|
//#include <QObject>
|
|
#include <QString>
|
|
#include <QStringList>
|
|
class QTranslator;
|
|
|
|
#include <QString>
|
|
struct host {
|
|
QString localAE;
|
|
QString ae;
|
|
QString ip;
|
|
QString port;
|
|
//QString isDefault;
|
|
};
|
|
|
|
struct IpAddr {
|
|
bool dhcp;
|
|
QString ip;
|
|
QString mask;
|
|
QString gateway;
|
|
};
|
|
struct IpRoute
|
|
{
|
|
QString des;
|
|
QString gw;
|
|
QString mask;
|
|
};
|
|
|
|
|
|
class JsonObject
|
|
{
|
|
public:
|
|
|
|
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();
|
|
|
|
|
|
QStringList languageList();
|
|
void setDefaultLanguage(const QString& str);
|
|
QString defaultLanguage();
|
|
|
|
QString institutionName();
|
|
void setInstitutionName(const QString& str);
|
|
|
|
QString institutionAddr();
|
|
void setInstitutionAddr(const QString& str);
|
|
|
|
int getLockScreenTime();
|
|
void setLockScreenTime(int aTime);
|
|
|
|
|
|
QStringList protocals();
|
|
int defaultProtocal();
|
|
void setDefaultProtocal(int str);
|
|
|
|
QStringList lockScreenTimes();
|
|
|
|
QStringList worklistFilters();
|
|
QString defaultFilter();
|
|
void setDefaultFilter(const QString& str);
|
|
|
|
host getServer(ServerType type);
|
|
void setServer(ServerType type, const host& list);
|
|
|
|
//for network manager
|
|
|
|
QString passWord();
|
|
void setPassword(const QString& pwd);
|
|
|
|
QString interfaceName();
|
|
void setInterfaceName(const QString& name);
|
|
|
|
bool isDHCP();
|
|
bool isDmsSimulator();
|
|
void autoDHCP(bool);
|
|
|
|
bool getScanConfirm();
|
|
void setScanConfirm(bool val);
|
|
|
|
bool getCompleteNotify();
|
|
void setCompleteNotify(bool val);
|
|
|
|
bool getAnonymousMode();
|
|
void setAnonymousMode(bool val);
|
|
|
|
bool getScreenSaverMode();
|
|
void setScreenSaverMode(bool aIsOpen);
|
|
|
|
bool getMppsOpen();
|
|
void setMppsOpen(bool aIsOpen);
|
|
|
|
const char* getEmptyScanID();
|
|
void setEmptyScanID(const char* id);
|
|
|
|
IpAddr getDefaultIpAddr();
|
|
void setDefaultIpAddr(const IpAddr& addr);
|
|
|
|
QList<QStringList> getIpAddrList();
|
|
void setIpAddrList(const QList<QStringList>& list);
|
|
|
|
QString getDefaultGateway();
|
|
void setDefaultGateway(const QString& gw);
|
|
|
|
QList<QStringList> getIpRouteList();
|
|
void setIpRouteList(const QList<QStringList>& list);
|
|
|
|
QStringList getScreenSaverInfomation();
|
|
int getOperationLogExpireDays();
|
|
int getPatientListExpireDays();
|
|
|
|
QString getReconTransferPath();
|
|
|
|
bool getScanCanWithoutRecon();
|
|
|
|
|
|
private:
|
|
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);
|
|
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);
|
|
|
|
|
|
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 mInterfaceName;
|
|
QString mGateway;
|
|
QString mReconTransferPath;
|
|
|
|
QStringList mLockScreenTimeList;
|
|
QStringList mProtocalList;
|
|
QStringList mLanguageList;
|
|
QStringList mScreenSaverInfoList;
|
|
|
|
int mLockScreenTime;
|
|
int mDefaultProtocal;
|
|
int mOperationLogExpireDays;
|
|
int mPatientListExpireDays;
|
|
|
|
host mWorklistHost;
|
|
host mPacsHost;
|
|
host mLocalHost;
|
|
host mReconHost;
|
|
host mMppsHost;
|
|
IpAddr mDefaultIpAddress;
|
|
|
|
bool mDmsSimulator;
|
|
bool mScanConfirm;
|
|
bool mCompleteNotify;
|
|
bool mAnonymousMode;
|
|
bool mScreenSaverMode;
|
|
bool mMppsOpen;
|
|
bool mScanCanWithoutRecon;
|
|
|
|
|
|
|
|
};
|
|
|
|
#endif // JSONOBJECT_H
|