Commit ab0c400b by wuyang.zou

fix bug: 新增代码注释:梳理代码日志打印更加清晰

parent 38ff4990
......@@ -292,7 +292,7 @@ bool FlowControl::_GetStoreInfo()
bool result=true;
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在获取门店信息......"));
QLOG_INFO() << QString("[---get storeInfo---]");
QLOG_INFO() << QString("[<<<<---Get StoreInfo--->>>>]");
QString tmp;
ConfigManger::GetInstance().GetStoreInfo(tmp/*, m_posId, m_cashierId*/, m_password);
return result;
......@@ -308,7 +308,7 @@ bool FlowControl::_Login()
sendJson = DataManger::GetInstance().GetLoginData(ConfigManger::GetInstance().GetPartnerId(),m_storeId,
m_password, m_posId, m_cashierId,_GetIpAddress());
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在登录......"));
QLOG_INFO() << QString("[---login---][requestData:%1]")<<sendJson;
QLOG_INFO() << QString("[<<<<---Login--->>>>][requestData:%1]")<<sendJson;
if(ConfigManger::GetInstance().GetLoginSslConfig())
{
m_loginSocket->SetSslConfig();
......@@ -317,8 +317,8 @@ bool FlowControl::_Login()
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_ILOGIN);
m_loginSocket->SetUrl(QUrl(ConfigManger::GetInstance().GetLoginServerUrl()+
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_ILOGIN)));
result = m_loginSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("login finsh. [result:%1][msg:%2][recvData:")
result = m_loginSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---Login Finshed--->>>>][result:%1][msg:%2][recvData:")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -347,7 +347,7 @@ bool FlowControl::_Login()
}
if(!result)
{
QLOG_INFO() << QString("%1 msec after login...").arg(VALUE_RELOGINTIME);
QLOG_INFO() << QString("[<<<<---Login Retry--->>>>] %1 msec after login...").arg(VALUE_RELOGINTIME);
QTimer::singleShot(VALUE_RELOGINTIME, this, &FlowControl::_Login);
}
return result;
......@@ -389,10 +389,10 @@ bool FlowControl::_PullOrderDetail(const QString& orderId)
QString url = ConfigManger::GetInstance().GetOrderServerUrl()+
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_PULLORDER);
url.append(orderId);
QLOG_INFO() << QString("[---pull order---][requestUrl:]")<<url;
QLOG_INFO() << QString("[<<<<---Pull Order Detail--->>>>][requestUrl:]")<<url;
m_pullOrderSocket->SetUrl(QUrl(url));
result = m_pullOrderSocket->Get(recvJson, error);
QLOG_INFO() << QString("pull order finsh. [result:%1][msg:%2]")
result = m_pullOrderSocket->GetRequest(recvJson, error);
QLOG_INFO() << QString("[<<<<---Pull Order Detail Finsh--->>>>][result:%1][msg:%2]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -404,7 +404,7 @@ bool FlowControl::_PullOrderDetail(const QString& orderId)
if(JSON_STATUSCODE_OK != recvJson[JSON_ERRCODE].toInt())
{
QString error = recvJson[JSON_ERRMSG].toString();
QLOG_ERROR() << QString("pull orders error.[msg->%1]").arg(error);
QLOG_ERROR() << QString("[<<<<---Pull Order Detail Error--->>>>][msg->%1]").arg(error);
emit showAlert(AlertForm::MSGERROR, QString::fromLocal8Bit("获取订单失败![%1]").arg(error));
result=false;
}else
......@@ -416,12 +416,13 @@ bool FlowControl::_PullOrderDetail(const QString& orderId)
_OrderAnalysis(order);
}
}
/*解析json数据失败则10秒后重新拉单*/
if(!result)
{
m_pullTimer->start(1000*10);
_AddOrderPull(orderId);
}
qDebug()<<"pull order result"<<result;
qDebug()<<"[<<<<---Pull Order Detail Result--->>>>]"<<result;
return result;
}
......@@ -438,7 +439,7 @@ bool FlowControl::_PullOrderList(const int &pageSize, const int &pageNo)
int ordertotalSum;
sendJson = DataManger::GetInstance().GetPullOrderListData(pageNo,pageSize);
QLOG_INFO() << QString("[---pull order---][requestData:]")<<sendJson;
QLOG_INFO() << QString("[<<<<---Pull Order List--->>>>][requestData:]")<<sendJson;
if(ConfigManger::GetInstance().GetOrderSslConfig())
{
m_pullOrderSocket->SetSslConfig();
......@@ -451,8 +452,8 @@ bool FlowControl::_PullOrderList(const int &pageSize, const int &pageNo)
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_PULLORDERLIST)));
QLOG_INFO()<<ConfigManger::GetInstance().GetOrderServerUrl()+
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_PULLORDERLIST);
result = m_pullOrderListSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("pull order finsh. [result:%1][msg:%2]")
result = m_pullOrderListSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---Pull Order List Finish.--->>>>][result:%1][msg:%2]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -464,7 +465,7 @@ bool FlowControl::_PullOrderList(const int &pageSize, const int &pageNo)
if(JSON_STATUSCODE_OK != recvJson[JSON_ERRCODE].toInt())
{
QString error = recvJson[JSON_ERRMSG].toString();
QLOG_ERROR() << QString("pull orders error.[msg->%1]").arg(error);
QLOG_ERROR() << QString("[<<<<---Pull Order List Error--->>>>][msg->%1]").arg(error);
emit showAlert(AlertForm::MSGERROR, QString::fromLocal8Bit("获取订单失败![%1]").arg(error));
result=false;
}else
......@@ -491,7 +492,7 @@ bool FlowControl::_PullOrderList(const int &pageSize, const int &pageNo)
m_pullTimer->start(1000*10);
_AddOrderPull(QString(),QString(),pageNo,pageSize);
}
qDebug()<<"pull order result"<<result;
qDebug()<<"[<<<<---Pull Order List Result--->>>>]"<<result;
return result;
}
......@@ -503,11 +504,11 @@ bool FlowControl::_SendHeart()
QJsonObject recvJson;
sendJson = DataManger::GetInstance().GetHeartData(m_password,m_posId,_GetIpAddress());
QLOG_INFO() << QString("[---sendheart---][requestData:%1]")<<sendJson;
QLOG_INFO() << QString("[<<<<---Send Heart--->>>>][requestData:%1]")<<sendJson;
m_loginSocket->SetUrl(QUrl(ConfigManger::GetInstance().GetLoginServerUrl()+
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_HEART)));
result = m_loginSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("sendheart finsh. [result:%1][msg:%2][recvData:%3]")
result = m_loginSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---Send Heart Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -540,10 +541,10 @@ bool FlowControl::_ConfirmOrder(const QString &orderId)
QString url = ConfigManger::GetInstance().GetOrderServerUrl()+
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_CONFIRM);
url.append(orderId);
QLOG_INFO() << QString("[---confirm order---][requestUrl:]")<<url;
QLOG_INFO() << QString("[<<<<---Confirm Order Begin--->>>>][requestUrl:]")<<url;
m_procOrderSocket->SetUrl(QUrl(url));
result = m_procOrderSocket->Get(recvJson, error);
QLOG_INFO() << QString("confirm order finsh. [result:%1][msg:%2][recvData:%3]")
result = m_procOrderSocket->GetRequest(recvJson, error);
QLOG_INFO() << QString("[<<<<---Confirm Order Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -585,9 +586,9 @@ bool FlowControl::_RefuseOrder(const QString &orderId, int refuseCode,const QStr
sendJson = DataManger::GetInstance().GetRefuseOrderData(refuseCode, orderId);
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在通信......"));
QLOG_INFO() << QString("[---refuse order---]. [requestData:%1]")<<sendJson;
result = m_procOrderSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("refuse order finsh. [result:%1][msg:%2][recvData:%3]")
QLOG_INFO() << QString("[<<<<---Refuse Order Begin--->>>>][requestData:%1]")<<sendJson;
result = m_procOrderSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---Refuse Order Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -628,9 +629,9 @@ bool FlowControl::_SendOrder(const QString& orderId)
sendJson = DataManger::GetInstance().GetSendOrderData(orderId);
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在通信......"));
QLOG_INFO() << QString("[---sendout order---]. [requestData:%1]")<<sendJson;
result = m_procOrderSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("sendout order finsh. [result:%1][msg:%2][recvData:%3]")
QLOG_INFO() << QString("[<<<<---Sendout Order Begin--->>>>][requestData:%1]")<<sendJson;
result = m_procOrderSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---Sendout Order Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -668,9 +669,9 @@ bool FlowControl::_CompleteOrder(const QString& orderId)
sendJson = DataManger::GetInstance().GetCompleteOrderData(orderId);
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在通信......"));
QLOG_INFO() << QString("[---complete order---]. [requestData:%1]")<<sendJson;
result = m_procOrderSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("complete order finsh. [result:%1][msg:%2][recvData:%3]")
QLOG_INFO() << QString("[<<<<---Complete Order Begin--->>>>][requestData:%1]")<<sendJson;
result = m_procOrderSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---Complete Order Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -707,9 +708,9 @@ bool FlowControl::_RefuseRefund(const QString& orderId)
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在通信......"));
QLOG_INFO() << QString("[---refuseRefund order---]. [requestData:%1]")<<sendJson;
result = m_procOrderSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("refuseRefund order finsh. [result:%1][msg:%2][recvData:%3]")
QLOG_INFO() << QString("[<<<<---RefuseRefund Order Begin--->>>>][requestData:%1]")<<sendJson;
result = m_procOrderSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---RefuseRefund Order Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -748,7 +749,7 @@ bool FlowControl::_RefundOrder(const QString &orderId,int reasonCode,const QStri
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在通信......"));
QLOG_INFO() << QString("[---Refund order---]. [requestData:%1]")<<sendJson;
QLOG_INFO() << QString("[<<<<---Refund Order Begin--->>>>][requestData:%1]")<<sendJson;
if(ConfigManger::GetInstance().GetOrderSslConfig())
{
m_procOrderSocket->SetSslConfig();
......@@ -759,8 +760,8 @@ bool FlowControl::_RefundOrder(const QString &orderId,int reasonCode,const QStri
}
m_procOrderSocket->SetUrl(QUrl(ConfigManger::GetInstance().GetOrderServerUrl()+
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_CANCLE)));
result = m_procOrderSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("Refund order finsh. [result:%1][msg:%2][recvData:%3]")
result = m_procOrderSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---Refund Order Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -826,9 +827,9 @@ void FlowControl::onPullDishes()
sendJson = DataManger::GetInstance().GetStoreChannelInfoData();
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在获取平台列表......"));
QLOG_INFO() << QString("[---GetStoreChannelInfo---]. [requestData:%1]")<<sendJson;
result = m_pullDishesSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("GetStoreChannelInfo finsh. [result:%1][msg:%2][recvData:%3]")
QLOG_INFO() << QString("[<<<<---PullDishes:GetStoreChannelInfo Begin--->>>>][requestData:%1]")<<sendJson;
result = m_pullDishesSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---PullDishes:GetStoreChannelInfo Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -853,9 +854,9 @@ void FlowControl::onPullDishes()
sendJson = DataManger::GetInstance().GetPullDishesData(channelCode);
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在获取[%1]菜品信息......").arg(channelName));
QLOG_INFO() << QString("[---pullDishes %1---]. [requestData:%2]").arg(channelName)<<sendJson;
result = m_pullDishesSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("pullDishes finsh. [result:%1][msg:%2][recvData:%3]")
QLOG_INFO() << QString("[<<<<---PullDishes:Dishes %1 Begin--->>>>][requestData:%2]").arg(channelName)<<sendJson;
result = m_pullDishesSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---PullDishes:Dishes Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -913,9 +914,9 @@ void FlowControl::onUpdDishes(QString channelCode, QMap<QString, int> dishes)
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在同步菜品销售状态......"));
QLOG_INFO() << QString("[---update dishes---]. [requestData:%1]")<<sendJson;
result = m_pullDishesSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("update dishes finsh. [result:%1][msg:%2][recvData:%3]")
QLOG_INFO() << QString("[<<<<---UpdDishes:Begin--->>>>][requestData:%1]")<<sendJson;
result = m_pullDishesSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---UpdDishes:Finish--->>>>][result:%1][message:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -943,9 +944,9 @@ void FlowControl::onUpdDishesForRef(QString channelCode, QMap<QString, int> dish
sendJson = DataManger::GetInstance().GetUpdDishesData(channelCode, dishes);
QLOG_INFO() << QString("[---UpdDishesForRef---]. [requestData:%1]")<<sendJson;
result = m_pullDishesSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("UpdDishesForRef finsh. [result:%1][msg:%2][recvData:%3]")
QLOG_INFO() << QString("[<<<<---UpdDishesForRef:Begin--->>>>][requestData:%1]")<<sendJson;
result = m_pullDishesSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---UpdDishesForRef:Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
}
......@@ -960,13 +961,13 @@ void FlowControl::onSetStoreOperatingStatus(const QString &channelCode, const QS
sendJson = DataManger::GetInstance().GetOperatingStatusData(channelCode, business_status);
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在设置门店营业状态......"));
QLOG_INFO() << QString("[---SetStoreOperatingStatus---]. [requestData:%1]")<<sendJson;
QLOG_INFO() << QString("[<<<<---SetStoreOperatingStatus:Begin--->>>>][requestData:%1]")<<sendJson;
m_pullDishesSocket->SetUrl(QUrl(ConfigManger::GetInstance().GetStoreServerUrl()+
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_UPDATESTATE)));
qDebug()<<QUrl(ConfigManger::GetInstance().GetStoreServerUrl()+
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_UPDATESTATE));
result = m_pullDishesSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("SetStoreOperatingStatus finsh. [result:%1][msg:%2][recvData:%3]")
result = m_pullDishesSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---SetStoreOperatingStatus:Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -1001,9 +1002,9 @@ void FlowControl::onDailyReport()
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在通信......"));
QLOG_INFO() << QString("[---Get daily report---]. [requestData:%1]")<<sendJson;
result = m_procOrderSocket->Request(sendJson, recvJson, error);
QLOG_INFO() << QString("get daily finish. [result:%1][msg:%2][recvData:%3]")
QLOG_INFO() << QString("[<<<<---Get DailyReport:Begin--->>>>][requestData:%1]")<<sendJson;
result = m_procOrderSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---Get DailyReport:Finish--->>>>][result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
{
......@@ -1037,7 +1038,7 @@ void FlowControl::_ClearOrder()
qint64 days=createDateTime.daysTo(currentDateTime);
if(days>=2)
{
QLOG_INFO()<<QString("clear order %1").arg(order->id);
QLOG_INFO()<<QString("[<<<<---ClearOrder: orderID:%1--->>>>]").arg(order->id);
emit clearorder(order->id,order->orderStatus);
m_ordersMap.value(order->id)->deleteLater();
m_ordersEntryList.removeOne(order->id);
......@@ -1208,6 +1209,10 @@ bool FlowControl::_Get04ReplyJson(const QJsonObject &content, QJsonObject &data,
m_orderIdToPosSalesIdMap.insert(orderId,posSaleId);
}
OrderObject* order_p = m_ordersMap.value(orderId);
QLOG_DEBUG()<< order_p << "====1===" << orderId << "===" << m_ordersMap.size();
QLOG_DEBUG()<< order_p->orderIndex << "====2===";
QLOG_DEBUG()<< order_p << "=====3==";
if(m_ordersEntryList.contains(orderId))
{
......@@ -1229,6 +1234,7 @@ bool FlowControl::_Get04ReplyJson(const QJsonObject &content, QJsonObject &data,
order_p->isPut = true;
order_p->putType = 0;
order_p->putTimes=0;
m_OrderEntryMutex.lock();
if(!m_ordersEntryList.contains(orderId))
{
......@@ -1426,7 +1432,7 @@ void FlowControl::onGetBusinessStatus()
qDebug()<<ConfigManger::GetInstance().GetStoreServerUrl()+ ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_GETSTORESTATE);
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在获取平台营业状态......"));
QLOG_INFO() << QString("[---GetStoreChannelInfo---]. [requestData:%1]")<<sendJson;
result = m_pullDishesSocket->Request(sendJson, recvJson, error);
result = m_pullDishesSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("GetStoreChannelInfo finsh. [result:%1][msg:%2][recvData:%3]")
.arg(result).arg(error)<<recvJson;
if(!result)
......
......@@ -9,6 +9,7 @@
BillSocket::BillSocket(QObject *parent)
: QObject(parent)
{
//设置Http请求的 请求头;
m_networkRequest.setRawHeader("Content-Type","application/json");
}
......@@ -17,12 +18,14 @@ BillSocket::~BillSocket()
}
bool BillSocket::Request(const QJsonObject &requestJson, QJsonObject &recvJson, QString &error)
bool BillSocket::PostRequest(const QJsonObject &requestJson, QJsonObject &recvJson, QString &error)
{
//设置Http请求管理的网络访问权限设置;
if(QNetworkAccessManager::Accessible != m_networkManger.networkAccessible())
{
m_networkManger.setNetworkAccessible(QNetworkAccessManager::Accessible);
}
//设置Http请求的请求参数:requestJson;
QByteArray sendArray = QJsonDocument(requestJson).toJson(QJsonDocument::Compact);
QEventLoop eventLoop;
QNetworkReply *reply = m_networkManger.post(m_networkRequest , sendArray);
......@@ -33,6 +36,7 @@ bool BillSocket::Request(const QJsonObject &requestJson, QJsonObject &recvJson,
QTimer::singleShot(VALUE_NETTIMEOUT, &eventLoop, &QEventLoop::quit);
eventLoop.exec();
//获取Http请求的返回json数据;
if(reply->error() != QNetworkReply::NoError)
{
error = reply->errorString();
......@@ -51,7 +55,7 @@ bool BillSocket::Request(const QJsonObject &requestJson, QJsonObject &recvJson,
return true;
}
bool BillSocket::Get( QJsonObject &recvJson, QString &error)
bool BillSocket::GetRequest( QJsonObject &recvJson, QString &error)
{
if(QNetworkAccessManager::Accessible != m_networkManger.networkAccessible())
{
......@@ -84,7 +88,7 @@ bool BillSocket::Get( QJsonObject &recvJson, QString &error)
return true;
}
void BillSocket::SetUrl(QUrl url)
void BillSocket::SetUrl(QUrl &url)
{
m_networkRequest.setUrl(url);
}
......
......@@ -7,6 +7,9 @@
#include <QtNetwork/QNetworkRequest>
#include <QUrl>
/* 类名:BillSocket [账单socket];
* 功能:Socket通用型的http通信请求;
* */
class BillSocket : public QObject
{
Q_OBJECT
......@@ -14,13 +17,38 @@ public:
explicit BillSocket(QObject *parent=0);
~BillSocket();
bool Request(const QJsonObject& requestJson, QJsonObject& recvJson, QString& error);
bool Get(QJsonObject& recvJson, QString& error);
void SetUrl(QUrl url);
/* 功能:带json参数的Http请求 [POST请求]:
* 参数:1、json数据入参;2、接受返回json数据的Buff;3、error字符串;
* 返回:TRUE[请求成功] / FALSE[请求失败];
* */
bool PostRequest(const QJsonObject& requestJson, QJsonObject& recvJson, QString& error);
/* 功能:不带参数的Http请求 [GET请求]:
* 参数:1、接受返回json数据的Buff;3、error字符串;
* 返回:TRUE[请求成功] / FALSE[请求失败];
* */
bool GetRequest(QJsonObject& recvJson, QString& error);
/* 功能:设置Http请求的 URL地址:
* 参数:1、URL地址;
* 返回:void;
* */
void SetUrl(QUrl& url);
/* 功能:设置Http请求的 ssl配置:
* 参数:void;
* 返回:void;
* */
void SetSslConfig();
private:
/*
* http请求管理成员变量:用户维护Http请求队列;
*/
QNetworkAccessManager m_networkManger;
/*
* http请求成员变量:用于绑定请求的相关数据;
*/
QNetworkRequest m_networkRequest;
};
......
......@@ -59,9 +59,9 @@
#define JSON_STATUS "status"
#define JSON_ORDERSTATUS "orderStatus"
#define JSON_STATUSDESC "status_desc"
#define JSON_MESSAGE "msg"
#define JSON_ERRMSG "msg"
#define JSON_RECEIVINGSTATUS "receivingStatus"
#define JSON_MESSAGE "message"
#define JSON_ERRMSG "message"
#define JSON_RECEIVINGSTATUS "operationStatus"
#define JSON_TIMESTAMPS "timestamp"
#define JSON_AUTOCONFIRM "autoconfirm"
#define JSON_TOKEN "PosToken"
......
retainglobalvar
UseISLTimeOuts
var dll_handle : N9
//var reqMsg : A50 = "01 999900000100000120170816"
var reqMsg : A50 = "01 00000100000100000120170922"
//var resMsg : A100
var msgCode:A4
// Constant Values Begin
var RESPONSE_SUCCESS : a4 = "1000"
var RESPONSE_CONTINUE : a4 = "1001"
var RESPONSE_NOMORE : a4 = "1002"
var RESPONSE_REFUND : a4 = "1009"
var SYMB_LEVEL1 : A10 = "^"
var SYMB_LEVEL2 : A10 = "~"
var PRODUCTS_SIZE : N3 = 200
var logText:a10000
var globalRefNum : A30
var productList[200]:A32
var discountFee:$10
var OpenChecks : N4
var productLength : N4
var ORDER_EVENT : N4 = 2
var requestString : A100
//Event Begin_Check
// format logText as "in OMS begin - tremp ", @Tremp
// call log_printf_tdsfs(logText, 0)
// format logText as "in OMS begin - ckcshr ", @CKCSHR
// call log_printf_tdsfs(logText, 0)
// call get_para_string(requestString)
// format logText as "in OMS begin - requestString [", requestString, "]"
// call log_printf_tdsfs(logText, 0)
//EndEvent
sub get_para_string(ref out)
var TransType:A2 = "01"
var StoreNo:A8 = @PROPERTY
call get_fixed_String(8,StoreNo)
var deviceNo:A6 = @WSID
call get_fixed_String(6,deviceNo)
var cashierNo:A6 = @TREMP
call get_fixed_String(6,cashierNo)
var businessDay:A8
call get_format_date(businessDay)
var reserved:A64 = " "
format out as TransType,StoreNo,deviceNo,cashierNo,businessDay,reserved
endsub
sub get_format_date(ref str)
var temp:A10
format temp as @Year,"-",@Month,"-",@Day
var year1:A4
var mon1:A2
var day1:A2
split temp,"-",year1,mon1,day1
year1 = mid(year1, 2, 2)
if( Len(mon1) = 1 )
format str as "20",year1,"0",mon1
else
format str as "20",year1,mon1
endif
if( Len(day1) = 1 )
format str as str,"0",day1
else
format str as str,day1
endif
endsub
sub get_fixed_String(var length: N4, ref str)
str = trim(str)
var leng:N4 = Len(str)
if(length > leng)
Var i : n3
for i = 1 to length - leng
format str as str," "
endfor
endif
if(length < leng)
str = mid(str, 1, length)
endif
endsub
event tmed:79
format logText as "in event tmed:79: ", globalRefNum
call log_printf(logText, 0)
saverefinfo globalRefNum
endevent
event inq:66
if(@numdtlt > 0)
ExitWithError "当前交易未完成,请结束交易后重试"
endif
// User logged in
// Has cashier
if (dll_handle = 0)
DLLLoad dll_handle, "C:\FreeMud\OMSFreemudAPI.dll"
endif
var orderMsg:A20000
if(dll_handle = 0)
format logText as "FreeMud OMS Service not available."
call log_printf_tdsfs(logText, 0)
ExitWithError logText
endif
DLLCallW dll_handle, FMGetResponse(reqMsg, ref orderMsg)
format logText as "Order data: ", orderMsg
call log_printf_tdsfs(logText, 0)
// Parse respnose code
var retMsg1 : A200
split orderMsg, SYMB_LEVEL1, retMsg1
var msgLen : N3 = len(retMsg1) - 4
var msgText:a100 = trim(mid(orderMsg, 5, msgLen))
msgCode = trim(mid(orderMsg, 1, 4))
if (msgCode <> RESPONSE_SUCCESS AND msgCode <> RESPONSE_CONTINUE)
//No new orders
if (msgCode = RESPONSE_NOMORE)
format logText as "No more order."
call log_printf_tdsfs(logText, 0)
// DllFree
DLLFree dll_handle
dll_handle = 0
ExitCancel
endif
//Refund
if (msgCode = RESPONSE_REFUND)
format logText as "Refunded order "
call log_printf_tdsfs(logText, 0)
// Parse response body
var msg:a104
var shop:a100
var order:a200
var discount:a50
var checkNo:a8
split orderMsg, SYMB_LEVEL1, msg, shop, order, discount, checkNo
checkNo = trim(checkNo)
var orderId:A100 = trim(mid(order, 1, 100))
format logText as "Refund order:", orderId, " Check:", checkNo
InfoMessage "Refund order ", orderId, " Check: ", checkNo
loadkybdmacro defkey("VoidClosedCheck"), MakeKeys(checkNo), @KEY_ENTER, @KEY_ENTER
call ReportCheckNo(orderId, checkNo)
ExitContinue
endif
format logText as "Error occured: " , "-", msgCode, ":", trim(msgText)
call log_printf_tdsfs(logText, 0)
// DllFree
DLLFree dll_handle
dll_handle = 0
ExitWithError trim(msgText)
endif
// Parse response body
var msg:a104
var shop:a100
var order:a200
var discount:a50
var products:a20000
split orderMsg, SYMB_LEVEL1, msg, shop, order, discount, products
var productArray[PRODUCTS_SIZE]:A32
var shopId:A50 = trim(mid(shop, 1, 50))
var orderId:A100 = trim(mid(order, 1, 100))
var totalFee:A15 = trim(mid(order, 101, 15))
var feeStr : A20 = trim(mid(discount, 1, 10))
format logText as "Order:", orderId, " TotalFee:", totalFee, " DiscountFee:", feeStr
call log_printf_tdsfs(logText, 0)
globalRefNum = orderId
discountFee = feeStr + 0.00
// Read products
format logText as "Product string length: ", len(products)
call log_printf_tdsfs(logText, 0)
split products, SYMB_LEVEL2, #PRODUCTS_SIZE, productArray[]
var arraylength : N3 = 0
var i : N3
for i = 1 to PRODUCTS_SIZE
productList[i] = productArray[i]
if(trim(productArray[i]) <> "")
arraylength = arraylength + 1
endif
endfor
productLength = arraylength
OpenChecks = arraylength
format logText as "Product number : " , OpenChecks
call log_printf_tdsfs(logText, 0)
DLLFree dll_handle
dll_handle = 0
loadkybdmacro defkey("OrderType", N:2)
loadkybdmacro defkey("SimInquire", A:"FMOMS:ORDER_EVENT")
endevent
event inq:ORDER_EVENT
if OpenChecks > 0
call OrderProduct()
else
call PayOrder()
//Report Check number
call ReportCheckNo(globalRefNum, @Cknum)
//End, Reset globalRefNum
globalRefNum = ""
endif
endevent
event mi
if (globalRefNum <> "")
format logText as "Menu Item Left: ", OpenChecks, "Quantity: ", @TTL, @QTY
call log_printf_tdsfs(logText, 0)
loadkybdmacro defkey("SimInquire", A:"FMOMS:ORDER_EVENT")
endif
endevent
sub log_printf_tdsfs(ref xml,var flag:N1)
var credit:A10000
var current_time:a10
format current_time as @Hour,":",@Minute,":",@Second
if flag = 1
format credit as "send,",current_time," ",xml
elseif flag = 2
format credit as "recv,",current_time," ",xml
elseif flag = 0
format credit as current_time," ",xml
endif
var fn:N5
var logfile:a100
format logfile as "C:\FreeMud\log\simlog-",@Year,"-",@Month,"-",@Day,".log"
fopen fn,logfile,append,unicode
if fn = 0
errormessage @File_errstr
exitcontinue
endif
fwrite fn,credit
fclose fn
endsub
sub OrderProduct()
format logText as "Start processing products. Left: ", OpenChecks
call log_printf_tdsfs(logText, 0)
var skuId:A10
var productAmount:A3
var productPrice:A10
var i:N10 = productLength - OpenChecks + 1
if (trim(productList[i]) <> "")
skuId = trim(mid(productList[i], 1, 10))
productAmount = trim(mid(productList[i], 11, 3))
productPrice = trim(mid(productList[i], 14, 10))
OpenChecks = OpenChecks - 1
format logText as "Product[", i , "] : " , skuId, " ", productAmount
call log_printf_tdsfs(logText, 0)
loadkybdmacro MakeKeys(productAmount), key(1, skuId)
format logText as "Product ", skuId, " ordered."
call log_printf_tdsfs(logText, 0)
else
format logText as "Error parsing product, index: ", i
call log_printf_tdsfs(logText, 0)
endif
endsub
sub PayOrder()
// Pay the check
if (discountFee > 0)
format logText as "Discount fee: ", discountFee
call log_printf_tdsfs(logText, 0)
loadkybdmacro key(3, 100), MakeKeys(discountFee / 100), @KEY_ENTER, makekeys("FM discount"), @KEY_ENTER
endif
format logText as "Payment for order ", globalRefNum
call log_printf_tdsfs(logText, 0)
loadkybdmacro @KEY_ENTER, defkey("Payment", N:79, A:"Cash:Cash"), makekeys(globalRefNum), @KEY_ENTER
endsub
sub ReportCheckNo(var order:A30, var check:A8)
//Report Check number
if (dll_handle = 0)
DLLLoad dll_handle, "C:\FreeMud\OMSFreemudAPI.dll"
endif
var rptChkMsg:A122
var rptChkRsp:A128
var orderId:A20
var chkNo:A8
orderId = order
chkNo = check
call get_fixed_String(20, orderId)
call get_fixed_String(8, chkNo)
format rptChkMsg as "040000000100000100000120180101", orderId, chkNo
DllCallW dll_handle, FMGetResponse(rptChkMsg, ref rptChkRsp)
format logText as "Check number report response: ", rptChkRsp
call log_printf_tdsfs(logText, 0)
DllFree dll_handle
dll_handle = 0
endsub
event inq:67
loadkybdmacro @KEY_ENTER, key(9,1), @KEY_ENTER
loadkybdmacro defkey("SimInquire", A:"FMOMS:66")
endevent
event inq:68
loadkybdmacro defkey("SimInquire", A:"FMOMS:66")
endevent
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