Commit 4305996f by NitefullWind

1. 将POS发来的商品单价,以分为单位传给服务端。 2. 支付超时后,自动发起退款。 3. 与服务端超时时间设置为60秒。

parent ea7f1f7d
...@@ -44,7 +44,8 @@ int FMNetwork::send(const QString &url, const QByteArray &reqData, QByteArray &r ...@@ -44,7 +44,8 @@ int FMNetwork::send(const QString &url, const QByteArray &reqData, QByteArray &r
QTimer timer; QTimer timer;
timer.setSingleShot(true); timer.setSingleShot(true);
connect(&timer, SIGNAL(timeout()),&loop,SLOT(quit())); connect(&timer, SIGNAL(timeout()),&loop,SLOT(quit()));
timer.start(1000 * 30);
timer.start(1000 * 60);
loop.exec(); loop.exec();
if(timer.isActive()) if(timer.isActive())
......
...@@ -34,7 +34,8 @@ void TaskFinal::packageServerReq() ...@@ -34,7 +34,8 @@ void TaskFinal::packageServerReq()
{ {
QJsonObject product; QJsonObject product;
product["consumNum"] = p.toObject()["consume_num"]; product["consumNum"] = p.toObject()["consume_num"];
product["price"] = p.toObject()["price"]; int price = p.toObject()["price"].toDouble()*100;
product["price"] = price;
product["productId"] = p.toObject()["pid"]; product["productId"] = p.toObject()["pid"];
products.append(product); products.append(product);
...@@ -76,7 +77,6 @@ bool TaskFinal::sendToServer(bool isShowMsg) ...@@ -76,7 +77,6 @@ bool TaskFinal::sendToServer(bool isShowMsg)
// 备份 // 备份
if(error() == FM_API_NETWORERROR) { if(error() == FM_API_NETWORERROR) {
if(searchJsonValue(serverReqJsonObj,ServerProps(PosProps.CodeAmount)).toInt() == 0 && if(searchJsonValue(serverReqJsonObj,ServerProps(PosProps.CodeAmount)).toInt() == 0 &&
searchJsonValue(serverReqJsonObj,ServerProps(PosProps.ScoreAmount)).toInt() == 0 && searchJsonValue(serverReqJsonObj,ServerProps(PosProps.ScoreAmount)).toInt() == 0 &&
searchJsonValue(serverReqJsonObj,ServerProps(PosProps.Coupons)).toArray().isEmpty()) { searchJsonValue(serverReqJsonObj,ServerProps(PosProps.Coupons)).toArray().isEmpty()) {
......
...@@ -82,7 +82,8 @@ void TaskPay::packageServerReq() ...@@ -82,7 +82,8 @@ void TaskPay::packageServerReq()
QJsonObject obj = clientArray[i].toObject(); QJsonObject obj = clientArray[i].toObject();
QJsonObject serverObj; QJsonObject serverObj;
serverObj["consumeNum"] = obj["consume_num"]; serverObj["consumeNum"] = obj["consume_num"];
serverObj["price"] = obj["price"].toInt(); int price = obj["price"].toString().toDouble()*100;
serverObj["price"] = price;
serverObj["productId"] = obj["pid"]; serverObj["productId"] = obj["pid"];
products.push_back(serverObj); products.push_back(serverObj);
} }
...@@ -165,5 +166,12 @@ void TaskPay::packagePOSRsp() ...@@ -165,5 +166,12 @@ void TaskPay::packagePOSRsp()
void TaskPay::onPay() void TaskPay::onPay()
{ {
sendToServer(); sendToServer();
if(error() == FM_API_TIMEOUT) {
FMP_INFO() << "Pay failed: timeout. To reversal.";
TaskRefundPay taskRefundPay(posReqJsonObj);
taskRefundPay.doTask();
}
_window->accept(); _window->accept();
} }
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