Commit 8a8cfe1d by 李定达

1.阿香米线券码插件守护

parent b92fc0bc
...@@ -36,4 +36,8 @@ ...@@ -36,4 +36,8 @@
// reportRequest // reportRequest
#define JSON_UPDATESTATE "UpdateState" #define JSON_UPDATESTATE "UpdateState"
#define INI_BASE_STOREIDXML "all/storexml"
#define DEFAULT_STOREIDXML "D:/Choice/PosClient/PosData/store.xml"
#endif // FMDEFINE_H #endif // FMDEFINE_H
...@@ -10,7 +10,8 @@ CONFIG += c++11 ...@@ -10,7 +10,8 @@ CONFIG += c++11
DEFINES += QUAZIP_STATIC DEFINES += QUAZIP_STATIC
#DEFINES += SHIQIJIA #DEFINES += SHIQIJIA
#DEFINES += SHAN_LIN #DEFINES += SHAN_LIN
DEFINES += BALIBEITIAN #DEFINES += BALIBEITIAN
DEFINES += AXMX
#DEFINES += AI_SEN #DEFINES += AI_SEN
#DEFINES += TODAY #DEFINES += TODAY
......
...@@ -9,17 +9,107 @@ ...@@ -9,17 +9,107 @@
#include <QFile> #include <QFile>
#include <QDir> #include <QDir>
#include <QDebug>
#include <QXmlStreamReader>
FmTools &FmTools::GetInstance() FmTools &FmTools::GetInstance()
{ {
static FmTools ft; static FmTools ft;
return ft; return ft;
} }
bool FmTools::ReadXml(QString xmlfilename, QMap<QString, QString> &value, QString key, QString &outNum, bool flg)
{
QXmlStreamReader xml;
QFile file(xmlfilename);
bool sign = false;
//outNum = QString();
if(!file.open(QFile::ReadOnly | QFile::Text))
{
qDebug() << QString("open %1 failed").arg(xmlfilename);
return false;
}
xml.setDevice(&file);
while(!xml.atEnd() && !xml.hasError())
{
if (xml.isStartElement())
{
if ((xml.name() == key && value.size() == 0)
|| (xml.name() == key && value.value(value.firstKey()) == "")
|| (xml.name() == key && xml.attributes().value(value.firstKey()).toString().compare(value.value(value.firstKey()), Qt::CaseInsensitive) == 0 ))
{
if(flg == false)
{
flg = true;
xml.readNext();
continue ;
}
if(outNum == "")
{
xml.readNext();
outNum = xml.text().toString();
}
else
outNum = xml.attributes().value(outNum).toString();
sign = true;
break;
} else
{
xml.readNext();
}
} else
{
xml.readNext();
}
}
do
{
if(xml.hasError())
{
qDebug() << QString("%1 file error").arg(xmlfilename);
sign = false;
break;
}else if (file.error() != QFile::NoError)
{
qDebug() << QString("read %1 error").arg(xmlfilename);
sign = false;
break;
}
}while(0);
xml.clear();
file.close();
return sign;
}
FmTools::FmTools() FmTools::FmTools()
{ {
QString iniPath = QString("%1/%2").arg(QCoreApplication::applicationDirPath(), INIFILE_NAME); QString iniPath = QString("%1/%2").arg(QCoreApplication::applicationDirPath(), INIFILE_NAME);
m_config = new QSettings(iniPath, QSettings::IniFormat); m_config = new QSettings(iniPath, QSettings::IniFormat);
#ifdef AXMX
QString path = QSettings(iniPath, QSettings::IniFormat).value(INI_BASE_STOREIDXML).toString();
if(path.isEmpty())
path = DEFAULT_STOREIDXML;
QMap<QString, QString> map;
QString storeid = "SCODE";
m_partnerId = "1525";
m_keyStoreId = "0000";
m_keyPosId = "1";
if(ReadXml(path, map, "store", storeid))
m_keyStoreId = storeid;
qDebug() << "-----------------------------" << storeid;
#endif
#ifdef BALIBEITIAN #ifdef BALIBEITIAN
#define MY_CFG "FMPOS.ini" #define MY_CFG "FMPOS.ini"
...@@ -208,6 +298,9 @@ QByteArray FmTools::GetUpdateData() ...@@ -208,6 +298,9 @@ QByteArray FmTools::GetUpdateData()
#ifdef SHIQIJIA #ifdef SHIQIJIA
rObj.insert(JSON_STOREID, m_keyStoreId); rObj.insert(JSON_STOREID, m_keyStoreId);
rObj.insert(JSON_POSNO, m_keyPosId); rObj.insert(JSON_POSNO, m_keyPosId);
#elif AXMX
rObj.insert(JSON_STOREID, m_keyStoreId);
rObj.insert(JSON_POSNO, m_keyPosId);
#else #else
rObj.insert(JSON_STOREID, setting.value(m_keyStoreId).toString()); rObj.insert(JSON_STOREID, setting.value(m_keyStoreId).toString());
rObj.insert(JSON_POSNO, setting.value(m_keyPosId).toString()); rObj.insert(JSON_POSNO, setting.value(m_keyPosId).toString());
...@@ -238,9 +331,19 @@ QByteArray FmTools::GetReportData(QString planid, QString msg, QString updateSta ...@@ -238,9 +331,19 @@ QByteArray FmTools::GetReportData(QString planid, QString msg, QString updateSta
QSettings setting(m_siIniPath, QSettings::IniFormat); QSettings setting(m_siIniPath, QSettings::IniFormat);
QJsonObject rObj; QJsonObject rObj;
rObj.insert(JSON_PARTNERID, m_partnerId);
#ifdef SHIQIJIA
rObj.insert(JSON_STOREID, m_keyStoreId);
rObj.insert(JSON_POSNO, m_keyPosId);
#elif AXMX
rObj.insert(JSON_STOREID, m_keyStoreId);
rObj.insert(JSON_POSNO, m_keyPosId);
#else
rObj.insert(JSON_STOREID, setting.value(m_keyStoreId).toString()); rObj.insert(JSON_STOREID, setting.value(m_keyStoreId).toString());
rObj.insert(JSON_POSNO, setting.value(m_keyPosId).toString()); rObj.insert(JSON_POSNO, setting.value(m_keyPosId).toString());
#endif
rObj.insert(JSON_PARTNERID, m_partnerId);
rObj.insert(JSON_PLANID, planid); rObj.insert(JSON_PLANID, planid);
rObj.insert(JSON_UPDATESTATE, updateState); rObj.insert(JSON_UPDATESTATE, updateState);
rObj.insert(JSON_MSG, msg); rObj.insert(JSON_MSG, msg);
......
...@@ -57,6 +57,8 @@ public: ...@@ -57,6 +57,8 @@ public:
* */ * */
QByteArray GetReportData(QString planId="", QString msg="", QString state=""); QByteArray GetReportData(QString planId="", QString msg="", QString state="");
bool ReadXml(QString xmlfilename, QMap<QString, QString> &value, QString key, QString &outNum, bool flg = true);
private: private:
FmTools(); FmTools();
~FmTools(); ~FmTools();
......
...@@ -12,6 +12,6 @@ int main(int argc, char *argv[]) ...@@ -12,6 +12,6 @@ int main(int argc, char *argv[])
// FmControl m_control; // FmControl m_control;
// m_control.Start(); // m_control.Start();
// return a.exec(); // return a.exec();
// FmTools::GetInstance(); // FmTools::GetInstance();
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment