Commit a0fce148 by wuyang.zou

fix bug: 修复部分重要bug

parent c424f3f8
......@@ -75,6 +75,7 @@ private:
QTimer *m_heartTimer;
QTimer *m_pullTimer;
QTimer *m_loginTimer;
QTimer *m_notifySimPullTimer;
// 网络通信
BillSocket *m_loginSocket;
BillSocket *m_pullOrderSocket;
......@@ -99,7 +100,8 @@ private:
//记录当前订单操作
QMap<QString, int> m_orderOperatePair;
//订单拉取记录
QList<PullOrderInfo> m_orderPullList;
QList<PullOrderInfo*> m_orderPullList;
QMutex m_PullOrderDataMutex;
//订单操作互斥信号
//QSemaphore semaphore;
......@@ -202,7 +204,7 @@ private slots:
* 参数:[1]订单编号
* 返回:是否成功
* */
void _PullOrder();
void _PullOrderData();
/* 功能:拉取指定订单
* 参数:[1]订单编号
* 返回:是否成功
......@@ -270,7 +272,7 @@ private slots:
*参数:1、请求json参数;2、准备返回请求数据的Buff;3、返回错误信息;
*返回:是否准备成功;
**/
//bool _ResponseSimphonyRequest(const QJsonObject &content, QJsonObject &data,QString &error);
//bool _ResponseHttpRequest(const QJsonObject &content, QJsonObject &data,QString &error);
/**
*功能:FM外卖插件为响应Simphony请求[action:01 -> 拉取订单]准备返回数据
......@@ -312,7 +314,7 @@ private slots:
*参数:1、请求json参数;2、准备返回请求数据的Buff;3、返回错误信息;
*返回:是否准备成功;
**/
//bool _ResponseSimphony11Request(const QJsonObject &content, QJsonObject &data,QString &error);
//bool _ResponseOMS11Request(const QJsonObject &content, QJsonObject &data,QString &error);
/**
*功能:FM外卖插件为响应Simphony请求[action:12 -> Sim/POS推送门店营业状态]准备返回数据
......@@ -340,10 +342,11 @@ private slots:
QString _GetIpAddress();
void _AddOrderPull(const QString& orderId=0,const QString& channel=0,const int& pageNumber=1,const int& pageSize=100);
void _GetOrder(const QString& orderId,const QString& channel);
void _GetReadyForPullOrder(const QString& orderId,const QString& channel);
//点击屏幕指定区域
void _ClickOMSAssignArea();
void _ClickToLogin();
void _ClickToNotifySimPullOrder();
void _OrderAnalysis(const QJsonObject &jsonObject);
......@@ -417,7 +420,7 @@ public slots:
*参数:1、请求json参数;2、准备返回请求数据的Buff;3、返回错误信息;
*返回:是否准备成功;
**/
bool _ResponseSimphonyRequest(const QJsonObject &content, QJsonObject &data,QString &error);
bool _ResponseHttpRequest(const QJsonObject &content, QJsonObject &data,QString &error);
/**
*功能:FM外卖插件为响应Simphony请求[action:01 -> 拉取订单]准备返回数据
......@@ -459,7 +462,7 @@ public slots:
*参数:1、请求json参数;2、准备返回请求数据的Buff;3、返回错误信息;
*返回:是否准备成功;
**/
bool _ResponseSimphony11Request(const QJsonObject &content, QJsonObject &data,QString &error);
bool _ResponseOMS11Request(const QJsonObject &content, QJsonObject &data,QString &error);
/**
*功能:FM外卖插件为响应Simphony请求[action:12 -> Sim/POS推送门店营业状态]准备返回数据
......
......@@ -12,17 +12,17 @@ LoaclHttpServer::LoaclHttpServer()
void LoaclHttpServer::run()
{
/*** 启动Http服务:用来响应Simphony_Script获取订单的请求***/
QLOG_INFO()<< "[<<<<---LoaclHttpServer::Receive Simphony_Script Request:m_tcpServerManage:--->>>>]" << m_tcpServerManage;
/*** 启动Http服务:用来响应Http获取订单的请求***/
QLOG_INFO()<< "[<<<<---LoaclHttpServer::Receive Http Request:m_tcpServerManage:--->>>>]" << m_tcpServerManage;
m_tcpServerManage->setHttpAcceptedCallback( [this]( const QPointer< JQHttpServer::Session > &session )
{
QLOG_INFO()<< "[<<<<---LoaclHttpServer::Receive Simphony_Script Request:currentThreadId:--->>>>]" << QThread::currentThreadId();
QLOG_INFO()<< "[<<<<---LoaclHttpServer::Receive Http Request:currentThreadId:--->>>>]" << QThread::currentThreadId();
// 回调发生在新的线程内;
/***解析FM外卖插件HTTP服务与Simphony_Script请求的会话连接是否断开: 会话连接未断开***/
/***解析FM外卖插件HTTP服务与Http请求的会话连接是否断开: 会话连接未断开***/
if(!session.isNull())
{
QString recvData = QString::fromUtf8(session->requestRawData());
QLOG_INFO() << QString::fromLocal8Bit("[<<<<---Receive Simphony_Script Request recvData: %1--->>>>]").arg(recvData);
QLOG_INFO() << QString::fromLocal8Bit("[<<<<---Receive Http Request recvData: %1--->>>>]").arg(recvData);
QJsonParseError jsonError;
QJsonObject recvObject;
QJsonObject replyObject;
......@@ -31,37 +31,37 @@ void LoaclHttpServer::run()
QJsonObject data; //回复的内容json
int iscontinue =0;
recvObject = QJsonDocument::fromJson(recvData.toUtf8(), &jsonError).object();
/***解析Simphony_Script Request json格式: 解析失败***/
/***解析Http Request json格式: 解析失败***/
if(jsonError.error != QJsonParseError::NoError)
{
status = 0;
msg = jsonError.errorString();
}
/***解析Simphony_Script Request json格式: 解析成功***/
/***解析Http Request json格式: 解析成功***/
else {
/***解析:FM外卖插件为响应Simphony请求准备返回数据:准备返回数据成功***/
if(FlowControl::GetInstance()._ResponseSimphonyRequest(recvObject,data, msg))
/***解析:FM外卖插件为响应http 请求准备返回数据:准备返回数据成功***/
if(FlowControl::GetInstance()._ResponseHttpRequest(recvObject,data, msg))
{
status = 100;
}
/***解析:FM外卖插件为响应Simphony请求准备返回数据:准备返回数据失败***/
/***解析:FM外卖插件为响应 Http 请求准备返回数据:准备返回数据失败***/
else{
status = 0;
}
/***解析:等待Simphony获取的有效订单列表是否为空: sim有效订单列表不为空***/
/***解析:等待Http获取的有效订单列表是否为空: sim有效订单列表不为空***/
if(!FlowControl::GetInstance()._SimValidOrdersListIsEmpty())
{
iscontinue=1;
}
}
/***将FM外卖插件中的合法有效数据返回给上面Simphony_Script发过来的请求***/
/***将FM外卖插件中的合法有效数据返回给上面Http发过来的请求***/
replyObject = FlowControl::GetInstance()._PackHttpReplyJson(status, msg, data,iscontinue);
QLOG_INFO() << QString::fromLocal8Bit("[<<<<---FM外卖插件回应Simphony_Script拉单请求后的返回结果:--->>>>]") << replyObject;
QLOG_INFO() << QString::fromLocal8Bit("[<<<<---FM外卖插件回应Http拉单请求后的返回结果:--->>>>]") << replyObject;
session->replyJsonObject(replyObject);
}
/***解析FM外卖插件HTTP服务与Simphony_Script请求的会话连接是否断开: 会话连接断开***/
/***解析FM外卖插件HTTP服务与Http请求的会话连接是否断开: 会话连接断开***/
else{
QLOG_INFO() << QString::fromLocal8Bit("[<<<<---FM外卖插件Http服务与Simphony_Script请求会话断开连接:--->>>>]");
QLOG_INFO() << QString::fromLocal8Bit("[<<<<---FM外卖插件Http服务与Http请求会话断开链接--->>>>]");
}
} );
......
......@@ -39,7 +39,7 @@ void DetailForm::InitData(OrderObject *orderObject)
ui->detailLab0->setText(QString("[%1 # %2][%3][%4]").arg(QString::number(orderObject->orderIndex),orderObject->getChannelName(),
orderObject->getOrderStatusDec(),
orderObject->id));
ui->detailLab1->setText(QString("%1:%2").arg(orderObject->customerName,orderObject->phone));
ui->detailLab1->setText(QString("%1:%2").arg(orderObject->consigneeName,orderObject->consigneePhone));
ui->detailLab2->setText(orderObject->deliveryTime.isEmpty()? QString::fromLocal8Bit("立即送出") : orderObject->deliveryTime);
ui->detailLab3->setText(orderObject->riderName.isEmpty() ? QString::fromLocal8Bit("暂未指定") : QString::fromLocal8Bit("[姓名]%1 [电话]%2")
.arg(orderObject->riderName, orderObject->riderPhone));
......
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