Commit 1ac81a9b by 李定达

1.移植70%

parent c8dd9d79
...@@ -17,12 +17,12 @@ FMNetWork::FMNetWork(QObject *parent) : QObject(parent) ...@@ -17,12 +17,12 @@ FMNetWork::FMNetWork(QObject *parent) : QObject(parent)
} }
bool FMNetWork::HttpPost(QByteArray array, QString content, QString accept, int timeout) bool FMNetWork::HttpPost(QString url, QByteArray outdata, const ByteArray &indata, QString content, QString accept, int timeout)
{ {
QString path; QString path;
ToolS::GetPath(path); ToolS::GetPath(path);
QString url = QSettings(path + "\\" + USERCONFIG_NAME, QSettings::IniFormat).value(VALUE_URL).toString(); //QString url = QSettings(path + "\\" + USERCONFIG_NAME, QSettings::IniFormat).value(VALUE_URL).toString();
QString host = QSettings(path + "\\" + USERCONFIG_NAME, QSettings::IniFormat).value(VALUE_HOST).toString(); QString host = QSettings(path + "\\" + USERCONFIG_NAME, QSettings::IniFormat).value(VALUE_HOST).toString();
QEventLoop loop; QEventLoop loop;
...@@ -43,7 +43,7 @@ bool FMNetWork::HttpPost(QByteArray array, QString content, QString accept, int ...@@ -43,7 +43,7 @@ bool FMNetWork::HttpPost(QByteArray array, QString content, QString accept, int
request.setRawHeader("Authorization", "Basic dXBzLWNsaWVudDo2VGk4TjBXNzRyb1A="); request.setRawHeader("Authorization", "Basic dXBzLWNsaWVudDo2VGk4TjBXNzRyb1A=");
QNetworkReply* reply = manger.post(request, QJsonDocument(json).toJson(QJsonDocument::Compact)); QNetworkReply* reply = manger.post(request, indata);
connect(&timer, &QTimer::timeout, &loop, &QEventLoop::quit); connect(&timer, &QTimer::timeout, &loop, &QEventLoop::quit);
connect(&manger, &QNetworkAccessManager::finished, &loop, &QEventLoop::quit); connect(&manger, &QNetworkAccessManager::finished, &loop, &QEventLoop::quit);
...@@ -60,9 +60,15 @@ bool FMNetWork::HttpPost(QByteArray array, QString content, QString accept, int ...@@ -60,9 +60,15 @@ bool FMNetWork::HttpPost(QByteArray array, QString content, QString accept, int
return false; return false;
} }
array = reply->readAll(); outdata = reply->readAll();
QLOG_INFO() << array; if(outdata.isEmpty())
{
error = QString::fromLocal8Bit("返回数据为空");
return false;
}
QLOG_INFO() << outdata;
return true; return true;
} }
...@@ -9,7 +9,7 @@ class FMNetWork : public QObject ...@@ -9,7 +9,7 @@ class FMNetWork : public QObject
public: public:
explicit FMNetWork(QObject *parent = 0); explicit FMNetWork(QObject *parent = 0);
static bool HttpPost(QByteArray array, QString content, QString accept, int timeout = 60); static bool HttpPost(QString url, QByteArray outdata, const ByteArray &indata, QString content, QString accept, int timeout = 60);
}; };
......
...@@ -9,10 +9,13 @@ ...@@ -9,10 +9,13 @@
#include "tools.h" #include "tools.h"
#include "QsLog.h" #include "QsLog.h"
#include "cretopt.h" #include "cretopt.h"
#include "fmnetwork.h"
#include <QtConcurrent>
RollBack::RollBack(QObject *parent) : QThread(parent) RollBack::RollBack(QObject *parent) : QThread(parent)
{ {
_db = new FMPDataBase(DB_ORDER, QString("rollback")); _db = new FMPDataBase(DB_ORDER, QString("rollback"));
_spr.release(10);
} }
RollBack::~RollBack() RollBack::~RollBack()
...@@ -53,8 +56,33 @@ void RollBack::RollWiteQuery(QSqlQuery &query) ...@@ -53,8 +56,33 @@ void RollBack::RollWiteQuery(QSqlQuery &query)
continue; continue;
} }
QLOG_INFO() << json;
QByteArray data = QJsonDocument(json).toJson(QJsonDocument::Compact);
_spr.acquire();
QtConcurrent::run( [this, parnetid, data]()
{
QByteArray array;
QString path;
ToolS::GetPath(path);
QString url = QSettings(path + "\\" + USERCONFIG_NAME, QSettings::IniFormat).value(VALUE_URL).toString();
if(FMNetWork::HttpPost(url, array, data, "application/json;charset=utf-8","application/json", 25))
{
FMPDataBase db(DB_ORDER, QString("curr") + QString::number(QThread::currentThreadId()));
db.dlt(DB_TABLE_NAME, QString("%1='%2'").arg(SQL_KEY_ORDERID).arg(parnetid));
}
QLOG_WARN() << QThread::currentThreadId() << ":" << array;
this->_spr.release();
});
} }
} }
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
#include <QThread> #include <QThread>
#include <QPointer> #include <QPointer>
#include <QSemaphore>
#include "fmp_database.h" #include "fmp_database.h"
...@@ -20,6 +21,7 @@ public: ...@@ -20,6 +21,7 @@ public:
private: private:
FMPDataBase *_db; FMPDataBase *_db;
QSemaphore _spr;
}; };
#endif // ROLLBACK_H #endif // ROLLBACK_H
...@@ -264,16 +264,14 @@ bool Control::GetJson(ReqType type,QJsonObject &json, const QByteArray array, QS ...@@ -264,16 +264,14 @@ bool Control::GetJson(ReqType type,QJsonObject &json, const QByteArray array, QS
if(type == againprint) if(type == againprint)
json.insert(JSON_KEY_FMID, _fmId); json.insert(JSON_KEY_FMID, _fmId);
if(type == refund && json.contains(JSON_KEY_STATUSCODE) && json[JSON_KEY_STATUSCODE].toInt() == 100)
json.insert(JSON_KET_CLIENTREF, FMTool::GetString(_request.Amount, 12));
RspFactory::GetResPonseJson(type, _response, json); RspFactory::GetResPonseJson(type, _response, json);
if(json.contains(JSON_KEY_MESSAGE)) if(json.contains(JSON_KEY_MESSAGE))
error = json[JSON_KEY_MESSAGE].toString(); error = json[JSON_KEY_MESSAGE].toString();
if(type == refund && json.contains(JSON_KEY_STATUSCODE) && json[JSON_KEY_STATUSCODE].toInt() == 100)
json.insert(JSON_KET_CLIENTREF, FMTool::GetString(_request.Amount, 12));
if(json.contains(JSON_KEY_STATUSCODE) && json[JSON_KEY_STATUSCODE].toInt() == 100) if(json.contains(JSON_KEY_STATUSCODE) && json[JSON_KEY_STATUSCODE].toInt() == 100)
return true; return true;
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject> <!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.5.1, 2017-08-25T14:34:56. --> <!-- Written by QtCreator 3.5.1, 2017-08-25T18:48:34. -->
<qtcreator> <qtcreator>
<data> <data>
<variable>EnvironmentId</variable> <variable>EnvironmentId</variable>
......
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