Commit 63074a66 by wuyang.zou

fix bug: 新增 锁外卖插件的悬浮框功能

parent b332c3a0
......@@ -35,7 +35,6 @@ FlowControl::FlowControl()
m_loginSocket = NULL;
m_pullOrderSocket = NULL;
m_procOrderSocket = NULL;
m_refundOrderSocket = NULL;
m_pullDishesSocket = NULL;
m_pullOrderListSocket = NULL;
......@@ -216,7 +215,7 @@ void FlowControl::_ClickToNotifySimPullOrder()
m_notifySimPullTimer->start(1000*10);
QLOG_INFO()<<QString::fromLocal8Bit("[<<<<---FM外卖插件通知 Simphony 获取订单数据--->>>>]");
emit doHideMainShowFloatFrom();
//emit doLockFloatForm();
emit doLockFloatForm();
_ClickOMSAssignArea();
}else{
m_notifySimPullTimer->start(1000*20);
......@@ -307,7 +306,7 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject)
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:NewOrder m_simValidOrdersList:%1 --->>>>]")<< m_simValidOrdersList;
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:NewOrder _ClickOMSAssignArea --->>>>]");
emit doHideMainShowFloatFrom();
//emit doLockFloatForm();
emit doLockFloatForm();
_ClickOMSAssignArea();
}
break;
......@@ -327,7 +326,7 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject)
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:OrderConfirmed m_simValidOrdersList:%1 --->>>>]")<< m_simValidOrdersList;
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:OrderConfirmed _ClickOMSAssignArea --->>>>]");
emit doHideMainShowFloatFrom();
//emit doLockFloatForm();
emit doLockFloatForm();
_ClickOMSAssignArea();
}
break;
......@@ -346,7 +345,7 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject)
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:Sendout m_simValidOrdersList:%1 --->>>>]")<< m_simValidOrdersList;
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:Sendout _ClickOMSAssignArea --->>>>]");
emit doHideMainShowFloatFrom();
//emit doLockFloatForm();
emit doLockFloatForm();
_ClickOMSAssignArea();
}
break;
......@@ -390,6 +389,7 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject)
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:Cancled m_simValidOrdersList.num:%1 --->>>>]")<< m_simValidOrdersList.count();
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:Cancled m_simValidOrdersList:%1 --->>>>]")<< m_simValidOrdersList;
QLOG_INFO() << QString("[<<<<---FmTakeout _OrderAnalysis:Cancled _ClickOMSAssignArea --->>>>]");
//怕程序会卡死或者程序阻塞,所以只能先将此类订单添加到Simphony的有效队列中;
//emit doHideMainShowFloatFrom();
//emit doLockFloatForm();
//_ClickOMSAssignArea();
......@@ -411,7 +411,6 @@ void FlowControl::onGetNewStoreInfo()
m_loginSocket = new BillSocket(this);
m_pullOrderSocket = new BillSocket(this);
m_procOrderSocket = new BillSocket(this);
m_refundOrderSocket = new BillSocket(this);
m_pullDishesSocket = new BillSocket(this);
m_pullOrderListSocket = new BillSocket(this);
_GetStoreInfo();
......@@ -785,7 +784,7 @@ bool FlowControl::_ConfirmOrder(const QString &orderId)
QLOG_INFO() << QString("[<<<<---FmTakeout _ConfirmOrder: m_simValidOrdersList:%1 --->>>>]")<< m_simValidOrdersList;
QLOG_INFO() << QString("[<<<<---FmTakeout _ConfirmOrder: _ClickOMSAssignArea --->>>>]");
emit doHideMainShowFloatFrom();
//emit doLockFloatForm();
emit doLockFloatForm();
_ClickOMSAssignArea();
}
}
......@@ -810,7 +809,7 @@ bool FlowControl::_RefuseOrder(const QString &orderId, int refuseCode,const QStr
emit showAlert(AlertForm::LOADING, QString::fromLocal8Bit("正在通信......"));
QLOG_INFO() << QString("[<<<<---Refuse Order Begin--->>>>][requestData:%1]")<<sendJson;
result = m_refundOrderSocket->PostRequest(sendJson, recvJson, error);
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)
......@@ -853,7 +852,7 @@ bool FlowControl::_RefuseOrder(const QString &orderId, int refuseCode,const QStr
QLOG_INFO() << QString("[<<<<---FmTakeout _RefuseOrder: m_simValidOrdersList:%1 --->>>>]")<< m_simValidOrdersList;
QLOG_INFO() << QString("[<<<<---FmTakeout _RefuseOrder: _ClickOMSAssignArea --->>>>]");
emit doHideMainShowFloatFrom();
//emit doLockFloatForm();
emit doLockFloatForm();
_ClickOMSAssignArea();
}
}
......@@ -1000,23 +999,18 @@ bool FlowControl::_RefundOrder(const QString &orderId,int reasonCode,const QStri
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(3 == reasonCode) {
m_refundOrderSocket->SetUrl(QUrl(ConfigManger::GetInstance().GetOrderServerUrl()+
ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_REFUND)));
} // 如果退款原因:其他,使用下面接口
else {
m_refundOrderSocket->SetUrl(QUrl(ConfigManger::GetInstance().GetOrderServerUrl() + ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_CANCLE)));
}
// 如果退款原因:商品已售完,使用下面接口; // 如果退款原因:其他,都同意使用一个接口;
m_procOrderSocket->SetUrl(QUrl(ConfigManger::GetInstance().GetOrderServerUrl() + ConfigManger::GetInstance().GetInterfaceName(INI_INTERFACE_CANCLE)));
QLOG_INFO() << QString("[<<<<<-----_RefundOrder: orderId:%1 URL: ----->>>>>]").arg(orderId)<< m_procOrderSocket->GetUrl();
if(ConfigManger::GetInstance().GetOrderSslConfig()) {
m_refundOrderSocket->SetSslConfig();
m_procOrderSocket->SetSslConfig();
QLOG_INFO()<<"load ssl";
} else {
QLOG_INFO()<<"load not ssl";
}
QLOG_INFO() << QString("[<<<<---Refund Order Request: --->>>>]")<< m_refundOrderSocket->GetUrl();
result = m_refundOrderSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---Refund Order Request: --->>>>]")<< m_procOrderSocket->GetUrl();
result = m_procOrderSocket->PostRequest(sendJson, recvJson, error);
QLOG_INFO() << QString("[<<<<---Refund Order Finish--->>>>][result:%1][msg:%2][recvData:]")
.arg(result).arg(error)<<recvJson;
if(!result)
......@@ -1041,6 +1035,7 @@ bool FlowControl::_RefundOrder(const QString &orderId,int reasonCode,const QStri
orderObject->orderStatus = orderStatus;
emit changeOrderStatus(orderObject, oldOrderStatus);
emit doHideMainShowFloatFrom();
emit doLockFloatForm();
//退货订单,将此订单添加到simphony 模拟点单列表中;
QLOG_INFO() << QString("[<<<<---FmTakeout _RefundOrder: orderObject->id:%1 , orderObject->orderStatus:%2 --->>>>]").arg(orderObject->id).arg(orderObject->orderStatus);
QLOG_INFO() << QString("[<<<<---FmTakeout _RefundOrder: orderObject->id:%1 , orderObject->isCancle:%2 --->>>>]").arg(orderObject->id).arg(orderObject->isCancle);
......@@ -1492,6 +1487,9 @@ bool FlowControl::_ResponseSimphony04Request(const QJsonObject &content, QJsonOb
result=false;
error=QString::fromLocal8Bit("请求参数错误");
}
//****************解锁悬浮框**************//
emit doUnLockFloatFrom();
return result;
}
......@@ -1627,10 +1625,6 @@ bool FlowControl::_ResponseSimphony06Request(const QJsonObject &content, QJsonOb
cObj.insert("paid_trans_id",orderId);
rObj.insert("pay_id", cObj);
data = rObj;
//****************解锁悬浮框********************//
/*
*
*/
} else {
result=false;
error=QString::fromLocal8Bit("订单编号 和 SIM错误码不能为空");
......@@ -1639,6 +1633,9 @@ bool FlowControl::_ResponseSimphony06Request(const QJsonObject &content, QJsonOb
result=false;
error=QString::fromLocal8Bit("请求参数错误");
}
//****************解锁悬浮框*****************//
emit doUnLockFloatFrom();
return result;
}
......
......@@ -81,7 +81,6 @@ private:
BillSocket *m_pullOrderSocket;
BillSocket *m_pullOrderListSocket;
BillSocket *m_procOrderSocket;
BillSocket *m_refundOrderSocket;
BillSocket *m_pullDishesSocket;
// FM外卖插件维护的有效订单容器
QMap<QString, OrderObject*> m_FmOrdersMap;
......
......@@ -140,29 +140,18 @@ QJsonObject DataManger::GetRefundOrderData(int reasonCode,const QString &reason,
{
QJsonObject rObj;
QJsonArray productIds;
// 退单原因码==3:商品已售完;
if(3 == reasonCode){
QString str = dishesListString;
if(str.length()){
QStringList list1 = str.split(";");
for(int i=0;i<list1.size();++i){
productIds.append(list1.at(i));
}
QString str = dishesListString;
if(str.length()){
QStringList list1 = str.split(";");
for(int i=0;i<list1.size();++i){
productIds.append(list1.at(i));
}
rObj.insert(JSON_ORDERID, orderId);
rObj.insert("productIds", productIds);
rObj.insert("canceledCause", reasonCode);
rObj.insert(JSON_POSIPADDRESS,QString("http://") + m_posIpAddress);
}
// 其他退单原因;
else{
rObj.insert(JSON_ORDERID, orderId);
rObj.insert("canceledCause", reasonCode);
rObj.insert(JSON_POSIPADDRESS,QString("http://") + m_posIpAddress);
//rObj.insert(JSON_CODE, reasonCode);
//rObj.insert(JSON_CHANNEL,channel);
//rObj.insert(JSON_SHOPCODE, m_storeId);
}
rObj.insert(JSON_ORDERID, orderId);
rObj.insert("productIds", productIds);
rObj.insert("canceledCause", reasonCode);
rObj.insert(JSON_POSIPADDRESS,QString("http://") + m_posIpAddress);
return rObj;
}
......
......@@ -139,7 +139,8 @@ QString DetailForm::GetProductName(dishesObject *dish)
void DetailForm::onOperaBtnClicked()
{
QLOG_INFO() << QString("[<<<<---DetailForm::onOperaBtnClicked: begin:--->>>>]");
hide();
//hide(); //隐藏详情界面将会产生一种BUG: 在选择退货原因时,详情页面+主界面都隐藏了,即使不退货,点击取消,主程序也会崩溃(无dump文件);
//hide(); //为了友好用户的使用体验感,hide() 还是需要在接受完取消订单原因后,再隐藏;
QPushButton *pBtn = (QPushButton*)sender();
if(pBtn->text()==QString::fromLocal8Bit("拒单")||pBtn->text()==QString::fromLocal8Bit("退单"))
{
......@@ -151,10 +152,12 @@ void DetailForm::onOperaBtnClicked()
QLOG_INFO() << QString("[<<<<---DetailForm::onOperaBtnClicked: m_refuseForm->exec()==QDialog::Accepted--->>>>]");
QLOG_INFO() << QString("[<<<<---DetailForm::onOperaBtnClicked: --->>>>]")<<m_refuseForm->m_reasonCode<<m_refuseForm->m_reasonStr<<m_refuseForm->m_refundDishesListString;
emit processRepealOrder( pBtn->property("orderId").toString(),m_refuseForm->m_reasonCode,m_refuseForm->m_reasonStr,m_refuseForm->m_refundDishesListString);
hide(); //为了友好用户的使用体验感,hide() 还是需要在接受完取消订单原因后,再隐藏;
}
} else {
emit processOrder(pBtn->property("operation").toString(), pBtn->property("orderId").toString());
}
}
void DetailForm::on_detailBtn1_clicked()
......
......@@ -192,5 +192,6 @@ void FloatForm::onLockFloatForm(){
void FloatForm::onUnLockFloatForm(){
QLOG_INFO()<<QString("[<<<----FloatForm::onUnLockFloatForm : unLock Float Form --->>>>]");
//QThread::sleep(8);
this->setEnabled(true);
}
......@@ -139,7 +139,7 @@
#define INI_INTERFACE_HEART "heart"
#define INI_INTERFACE_CONFIRM "confirm"
#define INI_INTERFACE_CANCLE "cancle"
#define INI_INTERFACE_REFUND "refund"
//#define INI_INTERFACE_REFUND "refund" //注释不使用此接口
// 属性名称
......
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