Commit d48523f1 by wuyang.zou

fix bug : 修复 退单失败,仍然会Simphony点单的bug

parent 8f3b33d8
......@@ -196,6 +196,21 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject)
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis-> orderObject->orderStatus:--->>>>]")<<orderObject->orderStatus;
switch (orderObject->orderStatus){
case OrderObject::NewOrder:
if(!orderObject->isPush)
{
orderObject->pushOrderType = 1;
orderObject->pushOrderTimes = 0;
m_OrderEntryMutex.lock();
if(!m_simValidOrdersList.contains(orderObject->id))
{
m_simValidOrdersList.append(orderObject->id);
}
m_OrderEntryMutex.unlock();
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:NewOrder m_simValidOrdersList.num:%1 --->>>>]")<< m_simValidOrdersList.count();
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:NewOrder m_simValidOrdersList:%1 --->>>>]")<< m_simValidOrdersList;
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:NewOrder _ClickOMSAssignArea --->>>>]");
_ClickOMSAssignArea();
}
break;
case OrderObject::Confirmed:
if(!orderObject->isPush)
......@@ -785,18 +800,14 @@ bool FlowControl::_RefundOrder(const QString &orderId,int reasonCode,const QStri
bool result;
QJsonObject sendJson;
QJsonObject recvJson;
sendJson = DataManger::GetInstance().GetRefundOrderData(reasonCode,reason,orderId,m_FmOrdersMap.value(orderId)->channel, dishesListString);
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在通信......"));
QLOG_INFO() << QString("[<<<<---Refund Order Begin--->>>>][requestData:%1]")<<sendJson;
if(ConfigManger::GetInstance().GetOrderSslConfig())
{
if(ConfigManger::GetInstance().GetOrderSslConfig()) {
m_procOrderSocket->SetSslConfig();
QLOG_INFO()<<"load ssl";
}
else{
} else {
QLOG_INFO()<<"load not ssl";
}
// 如果退款原因:商品已售完,使用下面接口;
......@@ -815,23 +826,21 @@ bool FlowControl::_RefundOrder(const QString &orderId,int reasonCode,const QStri
if(!result)
{
emit showAlert(AlertForm::MSGERROR, QString::fromLocal8Bit("退单失败![网络错误]"));
}else
{
return false;
} else {
if(JSON_STATUSCODE_OK != recvJson[JSON_ERRCODE].toInt())
{
result = false;
emit showAlert(AlertForm::MSGERROR, QString::fromLocal8Bit("退单失败![%1]").arg(recvJson[JSON_MESSAGE].toString()));
}else
{
return false;
} else {
QJsonObject data = recvJson[JSON_DATA].toObject();
int status = data[JSON_RECEIVINGSTATUS].toInt();
if(1==status)
{
if(1==status) {
int orderStatus = data[JSON_ORDERSTATUS].toInt();
OrderObject* orderObject = m_FmOrdersMap.value(orderId);
int oldOrderStatus = orderObject->orderStatus;
orderObject->orderStatus = orderStatus;
emit changeOrderStatus(orderObject, oldOrderStatus);
//退货订单,将此订单添加到simphony 模拟点单列表中;
......@@ -857,16 +866,12 @@ bool FlowControl::_RefundOrder(const QString &orderId,int reasonCode,const QStri
_ClickOMSAssignArea();
}
}
}
else
{
} else {
emit showAlert(AlertForm::MSGERROR, QString::fromLocal8Bit("退单失败![%1]").arg(recvJson[JSON_ERRMSG].toString()));
return false;
}
}
}
return result;
}
......@@ -1234,11 +1239,13 @@ bool FlowControl::_ResponseSimphony04Request(const QJsonObject &content, QJsonOb
{
if(order_p->pushOrderType==1)
{
order_p->isPush== true;
SimProcOrderDB::getInstance().updatePushOrderStatus(orderId,1);
SimProcOrderDB::getInstance().updatePosOrderCheckNo(orderId,posCheckNo);
}
else
{
order_p->isCancle== true;
SimProcOrderDB::getInstance().updateRefundOrderStatus(orderId,1);
}
m_OrderEntryMutex.lock();
......
......@@ -75,7 +75,10 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("饿了么");
}else if("BAIDU" == channel){
return QString::fromLocal8Bit("百度外卖");
}else{
}else if(3 == orderType){
return QString::fromLocal8Bit("客诉单");
}
else{
return QString::fromLocal8Bit("未知");
}
}
......
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