Commit 13467eb2 by wuyang.zou

POS插件

<1> 插件存储 totalPriceForPos 字段给 POS进行打印汇总单 付款 字段;
<2> 插件针对 权益单需 跳过打印,但是需要汇报给上游系统 入机存储成功;
<3> 插件针对 销售单未入机,退货单已来,仍然需要汇报给 上游系统 入机存储成功;
<4> 插件针对 非onePos 模式 是否 需要实现自动登录功能【等待业务确认】;
<5> 插件针对 食品包装???【等待业务确认】;

Version: 2.2023.2.23
parent f35df15f
Pipeline #42350 failed with stage
in 0 seconds
...@@ -604,7 +604,7 @@ void FlowControl::_StoragePosOrderData() { ...@@ -604,7 +604,7 @@ void FlowControl::_StoragePosOrderData() {
/***** 更新 POS本地数据库的打印消息数据 是否成功;end:********/ /***** 更新 POS本地数据库的打印消息数据 是否成功;end:********/
// 订单落库成功后.判断是否需要入机; ①不入机则汇报OMS落库成功; ②入机则有效不重复添加到待入机队列中; // 订单落库成功后.判断是否需要入机; ①不入机则汇报OMS落库成功; ②入机则有效不重复添加到待入机队列中;
QString requestType = order_p->orderStatus==6?QString::fromLocal8Bit("6"):QString::fromLocal8Bit("3"); QString requestType = order_p->orderStatus==6?QString("6"):QString("3");
if ( order_p->decouplePosVersion >= 20 || m_hurryPrintSum ) { if ( order_p->decouplePosVersion >= 20 || m_hurryPrintSum ) {
// 2.0解耦POS->不入机流程分支: 需要在此处进行数据校验 是否都存储成功 / 并汇报存储情况; // 2.0解耦POS->不入机流程分支: 需要在此处进行数据校验 是否都存储成功 / 并汇报存储情况;
...@@ -872,6 +872,7 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject) ...@@ -872,6 +872,7 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject)
orderObject->skipPrint = false; orderObject->skipPrint = false;
orderObject->privacyPhone = ""; orderObject->privacyPhone = "";
orderObject->backupPosFlag = m_backupPosFlag; orderObject->backupPosFlag = m_backupPosFlag;
orderObject->totalPriceForPos = 0;
orderObject->FromJson(jsonObject); orderObject->FromJson(jsonObject);
...@@ -891,6 +892,11 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject) ...@@ -891,6 +892,11 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject)
orderObject->dataBaseIsORSCancleInt = 0; orderObject->dataBaseIsORSCancleInt = 0;
orderObject->dataBasePosOrderCheckNo = ""; orderObject->dataBasePosOrderCheckNo = "";
// 89 == orderType 标识订单是 ELE-权益卡单,需存储(为了给OMS上游提供入机回调) 但是无需打印 且 需要界面展示;
if ( 89 == orderObject->orderType ) {
orderObject->skipPrint = true;
}
//插件程序内存中没有此订单时需要从数据库中获取该订单标志数据;同时在接受到退单情况时,也需要从数据库中重新获取(防止内存中标志数据未更新[入机后未更新]); //插件程序内存中没有此订单时需要从数据库中获取该订单标志数据;同时在接受到退单情况时,也需要从数据库中重新获取(防止内存中标志数据未更新[入机后未更新]);
bool retGetDbOrderAllFlag = SimProcOrderDB::getInstance().getDbOrderAllFlag(orderObject->id,orderObject->dataBaseIsOrderExistInt,orderObject->dataBaseIsPushInt, bool retGetDbOrderAllFlag = SimProcOrderDB::getInstance().getDbOrderAllFlag(orderObject->id,orderObject->dataBaseIsOrderExistInt,orderObject->dataBaseIsPushInt,
orderObject->dataBaseIsCancleInt,orderObject->dataBaseIsORSPushInt,orderObject->dataBaseIsORSCancleInt,orderObject->dataBasePosOrderCheckNo); orderObject->dataBaseIsCancleInt,orderObject->dataBaseIsORSPushInt,orderObject->dataBaseIsORSCancleInt,orderObject->dataBasePosOrderCheckNo);
...@@ -960,6 +966,11 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject) ...@@ -960,6 +966,11 @@ void FlowControl::_OrderAnalysis(const QJsonObject& jsonObject)
emit changeOrderStatus(orderObject, oldStatus); emit changeOrderStatus(orderObject, oldStatus);
} }
// 89 == orderType 标识订单是 ELE-权益卡单,需存储(为了给OMS上游提供入机回调) 但是无需打印 且 需要界面展示;
if ( 89 == orderObject->orderType ) {
orderObject->skipPrint = true;
}
// 3: 刷新订单 预约时间 & 制作时间 & 街送小票时间; // 3: 刷新订单 预约时间 & 制作时间 & 街送小票时间;
if ( 3 == orderObject->inAdvanceTakemeal || oldArriveAhead != orderObject->inAdvanceTakemeal ) { if ( 3 == orderObject->inAdvanceTakemeal || oldArriveAhead != orderObject->inAdvanceTakemeal ) {
int updateOrderRet = PrintSumBillPosDB::getInstance().updateOrderDataToDB(orderObject, QString("UpdateTimeAction")); int updateOrderRet = PrintSumBillPosDB::getInstance().updateOrderDataToDB(orderObject, QString("UpdateTimeAction"));
...@@ -1108,6 +1119,14 @@ void FlowControl::_analysisRefundOrderTask(OrderObject* orderObject) { ...@@ -1108,6 +1119,14 @@ void FlowControl::_analysisRefundOrderTask(OrderObject* orderObject) {
return; return;
} }
// 特殊场景: 针对销售单没有正常存储, 此时订单被退单取消, 插件也需要将订单取消正常汇报给上游系统 O2O-FULFULLMENT / OMS;
if (1) {
QString posCheckNo = orderObject->id.right(5) + QString("06");
QString errorStorageOrderMsg = QString("Decouple Pos: OrderId: %1 Storage Pos Local DB Success (No Sale Order Record)").arg(orderObject->id);
// 销售单/退货单: 会根据订单状态 是否 = 6 进行转换后进行汇报; 进入此队列 m_storagePosOrdersList 的次数决定汇报的次数;
_AddOrUpdateReportOmsList(orderObject->id, orderObject->channel, "6", "3", posCheckNo, errorStorageOrderMsg, QString("") );
}
bRetStorageOrderMutex = m_storageOrderMutex.tryLock(VALUE_TRYLOCKMEMTIMEOUT); bRetStorageOrderMutex = m_storageOrderMutex.tryLock(VALUE_TRYLOCKMEMTIMEOUT);
if ( !bRetStorageOrderMutex ) { if ( !bRetStorageOrderMutex ) {
QLOG_INFO() << QString("[<<<<---_analysisRefundOrderTask:: orderId: %1 m_storageOrderMutex.tryLock Failed --->>>>]").arg(orderObject->id); QLOG_INFO() << QString("[<<<<---_analysisRefundOrderTask:: orderId: %1 m_storageOrderMutex.tryLock Failed --->>>>]").arg(orderObject->id);
...@@ -1369,7 +1388,6 @@ void FlowControl::_PullOrderData() ...@@ -1369,7 +1388,6 @@ void FlowControl::_PullOrderData()
return; return;
emit hideAlert(); emit hideAlert();
QLOG_INFO()<<QString("[<<<<----_PullOrderData ListSize=%1, FirstOne: %2 ---->>>>>]").arg( m_orderPullList.size() ).arg( m_orderPullList.size()?m_orderPullList.first()->orderId:"" ); QLOG_INFO()<<QString("[<<<<----_PullOrderData ListSize=%1, FirstOne: %2 ---->>>>>]").arg( m_orderPullList.size() ).arg( m_orderPullList.size()?m_orderPullList.first()->orderId:"" );
bool btryLock = m_PullOrderDataMutex.tryLock(VALUE_TRYLOCKNETTIMEOUT); bool btryLock = m_PullOrderDataMutex.tryLock(VALUE_TRYLOCKNETTIMEOUT);
...@@ -1902,7 +1920,7 @@ void FlowControl::_ReportOMSRecordOrderInfo() ...@@ -1902,7 +1920,7 @@ void FlowControl::_ReportOMSRecordOrderInfo()
sendJson.insert(JSON_POS_WORKS_NUM, m_posWorkstationNum); sendJson.insert(JSON_POS_WORKS_NUM, m_posWorkstationNum);
sendJson.insert(JSON_POS_HOST_NAME, m_posHostName); sendJson.insert(JSON_POS_HOST_NAME, m_posHostName);
sendJson.insert(JSON_POS_MAC_ADDRESS, m_posMacAddress); sendJson.insert(JSON_POS_MAC_ADDRESS, m_posMacAddress);
sendJson.insert(JSON_POS_PLUGIN_VERSION, RepOMSRecOrderIn->posPluginVersion); sendJson.insert(JSON_POS_PLUGIN_VERSION, RepOMSRecOrderIn->pluginVersion);
sendJson.insert(JSON_TCP_DEVICE_TYPE , "posPlugin"); sendJson.insert(JSON_TCP_DEVICE_TYPE , "posPlugin");
sendJson.insert(JSON_POS_BACKUP_PC, m_backupPosFlag); sendJson.insert(JSON_POS_BACKUP_PC, m_backupPosFlag);
...@@ -2034,7 +2052,7 @@ void FlowControl::_AddOrUpdateReportOmsList(const QString &orderId, const QStri ...@@ -2034,7 +2052,7 @@ void FlowControl::_AddOrUpdateReportOmsList(const QString &orderId, const QStri
repOMSRecordOrder->remark = error; repOMSRecordOrder->remark = error;
repOMSRecordOrder->failCode = errorCode; repOMSRecordOrder->failCode = errorCode;
repOMSRecordOrder->checkNo = chkNum; repOMSRecordOrder->checkNo = chkNum;
repOMSRecordOrder->posPluginVersion = APP_VERSION; repOMSRecordOrder->pluginVersion = APP_VERSION;
QLOG_INFO()<<QString::fromLocal8Bit("[<<<<---FlowControl::_AddOrUpdateReportOmsList:m_orderRecordRepOMSList.append() orderId:%1 error:%2--->>>>]").arg(orderId).arg(error); QLOG_INFO()<<QString::fromLocal8Bit("[<<<<---FlowControl::_AddOrUpdateReportOmsList:m_orderRecordRepOMSList.append() orderId:%1 error:%2--->>>>]").arg(orderId).arg(error);
m_orderRecordRepOMSList.append(repOMSRecordOrder); m_orderRecordRepOMSList.append(repOMSRecordOrder);
m_RepOMSRecordOrderMutex.unlock(); m_RepOMSRecordOrderMutex.unlock();
......
...@@ -118,7 +118,7 @@ private: ...@@ -118,7 +118,7 @@ private:
QString remark; //备注:入机出错信息 QString remark; //备注:入机出错信息
QString checkNo; //小票号:入机成功时的小票号; QString checkNo; //小票号:入机成功时的小票号;
QString failCode; // 入机/存储 错误码 (成功时都给 ""); QString failCode; // 入机/存储 错误码 (成功时都给 "");
QString posPluginVersion; //该订单入机后, 汇报给OMS对应程序的版本号; QString pluginVersion; //该订单入机后, 汇报给OMS对应程序的版本号;
int reqResult; //向OMS请求汇报结果; int reqResult; //向OMS请求汇报结果;
} RepOMSRecordOrderInfo; } RepOMSRecordOrderInfo;
......
...@@ -851,9 +851,9 @@ bool PrintSumBillPosDB::insertOrderSumBill(OrderObject* orderObj, const QString& ...@@ -851,9 +851,9 @@ bool PrintSumBillPosDB::insertOrderSumBill(OrderObject* orderObj, const QString&
" pay_way, customer_id, customer_name, msr_no, store_id, sub_store_id, store_name, store_address, is_package, order_discount, total_price, " " pay_way, customer_id, customer_name, msr_no, store_id, sub_store_id, store_name, store_address, is_package, order_discount, total_price, "
" orderPayType, sbkAppPayType, sbkAppPayValue, sbkAppRefundPayValue, orderTransFlowNo, orderRefundTransFlowNo, " " orderPayType, sbkAppPayType, sbkAppPayValue, sbkAppRefundPayValue, orderTransFlowNo, orderRefundTransFlowNo, "
" pluginVersion, packageSku, thirdPartyOrderId, discountShopFee, packFee, packDiscount, deliveryFee, deliveryDiscount, " " pluginVersion, packageSku, thirdPartyOrderId, discountShopFee, packFee, packDiscount, deliveryFee, deliveryDiscount, "
" reserve8, reserve9, reserve10, reserve11, reserve12, reserve22, reserve23, reserve24 ) " " reserve8, reserve9, reserve10, reserve11, reserve12, reserve22, reserve23, reserve24, reserve25 ) "
"VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, " "VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, "
" ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)" ); " ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)" );
query.addBindValue(posCheckNo.toInt()); // --小票号 query.addBindValue(posCheckNo.toInt()); // --小票号
query.addBindValue(orderObj->lastName); // --顾客-姓 query.addBindValue(orderObj->lastName); // --顾客-姓
query.addBindValue(orderObj->consigneeName); // --顾客-全名 query.addBindValue(orderObj->consigneeName); // --顾客-全名
...@@ -971,6 +971,11 @@ bool PrintSumBillPosDB::insertOrderSumBill(OrderObject* orderObj, const QString& ...@@ -971,6 +971,11 @@ bool PrintSumBillPosDB::insertOrderSumBill(OrderObject* orderObj, const QString&
query.addBindValue(orderObj->extendType); // 扩展类型: 20: MOD PLUS 渠道; query.addBindValue(orderObj->extendType); // 扩展类型: 20: MOD PLUS 渠道;
query.addBindValue(orderObj->deliveryProvider); // 配送商家类型: 1:蜂鸟 2:美团; query.addBindValue(orderObj->deliveryProvider); // 配送商家类型: 1:蜂鸟 2:美团;
query.addBindValue(orderObj->deliveryType); // 配送方式: 1: 二轮车 2: 四轮车 3: 美团无人机; query.addBindValue(orderObj->deliveryType); // 配送方式: 1: 二轮车 2: 四轮车 3: 美团无人机;
if ( orderObj->decouplePosVersion>= 20 && OrderObject::Refunded == orderObj->orderStatus ) {
query.addBindValue( 0 - orderObj->totalPriceForPos); // OMS 计算好 汇总小票打印的 total price 金额【扣减: 改价商品后仍有优惠分摊金额 场景】【upp卡B账户优惠金额】
} else {
query.addBindValue( orderObj->totalPriceForPos); // OMS 计算好 汇总小票打印的 total price 金额【扣减: 改价商品后仍有优惠分摊金额 场景】【upp卡B账户优惠金额】
}
QLOG_INFO()<<QString("[<<<--PrintSumBillPosDB::insertOrderSumBill waybillId:%1-->>>>]").arg((orderObj->waybillId).length()?orderObj->waybillId:QString("0")); QLOG_INFO()<<QString("[<<<--PrintSumBillPosDB::insertOrderSumBill waybillId:%1-->>>>]").arg((orderObj->waybillId).length()?orderObj->waybillId:QString("0"));
...@@ -986,10 +991,10 @@ bool PrintSumBillPosDB::insertOrderSumBill(OrderObject* orderObj, const QString& ...@@ -986,10 +991,10 @@ bool PrintSumBillPosDB::insertOrderSumBill(OrderObject* orderObj, const QString&
" pay_way, customer_id, customer_name, msr_no, store_id, sub_store_id, store_name, store_address, is_package, order_discount, total_price" " pay_way, customer_id, customer_name, msr_no, store_id, sub_store_id, store_name, store_address, is_package, order_discount, total_price"
" orderPayType, sbkAppPayType, sbkAppPayValue, sbkAppRefundPayValue, orderTransFlowNo, orderRefundTransFlowNo, " " orderPayType, sbkAppPayType, sbkAppPayValue, sbkAppRefundPayValue, orderTransFlowNo, orderRefundTransFlowNo, "
" pluginVersion, packageSku, thirdPartyOrderId, discountShopFee, packFee, packDiscount, deliveryFee, deliveryDiscount, " " pluginVersion, packageSku, thirdPartyOrderId, discountShopFee, packFee, packDiscount, deliveryFee, deliveryDiscount, "
" reserve8, reserve9, reserve10, reserve11, reserve12, reserve22, reserve23, reserve24 ) " " reserve8, reserve9, reserve10, reserve11, reserve12, reserve22, reserve23, reserve24, reserve25 ) "
"VALUES(%1, %2, %3, %4, %5, %6, %7, %8, %9, %10, %11, %12, %13, %14, %15, %16, %17, %18," "VALUES(%1, %2, %3, %4, %5, %6, %7, %8, %9, %10, %11, %12, %13, %14, %15, %16, %17, %18,"
" %19, %20, %21, %22, %23, %24, %25, %26, %27, %28, %29, %30,%31, %32, %33, %34, %35, %36, %37, %38, %39, %40, %41, %42" " %19, %20, %21, %22, %23, %24, %25, %26, %27, %28, %29, %30,%31, %32, %33, %34, %35, %36, %37, %38, %39, %40, %41, %42"
" %43, %44, %45, %46, %47, %48, %49, %50,%51, %52, %53, %54, %55, %56, %57, %58, %59, %60, %61, %62, %63, %64, %65 )") " %43, %44, %45, %46, %47, %48, %49, %50,%51, %52, %53, %54, %55, %56, %57, %58, %59, %60, %61, %62, %63, %64, %65, %66 )")
.arg(posCheckNo.toInt()) .arg(posCheckNo.toInt())
.arg(orderObj->lastName).arg(orderObj->customerName).arg(temp_customerSex) .arg(orderObj->lastName).arg(orderObj->customerName).arg(temp_customerSex)
.arg(0).arg(qdaTi.addSecs(60*60*8).toString("yyyy-MM-dd hh:mm:ss")).arg(FlowControl::GetInstance()._GetCashierId()).arg("").arg("") .arg(0).arg(qdaTi.addSecs(60*60*8).toString("yyyy-MM-dd hh:mm:ss")).arg(FlowControl::GetInstance()._GetCashierId()).arg("").arg("")
...@@ -1008,7 +1013,7 @@ bool PrintSumBillPosDB::insertOrderSumBill(OrderObject* orderObj, const QString& ...@@ -1008,7 +1013,7 @@ bool PrintSumBillPosDB::insertOrderSumBill(OrderObject* orderObj, const QString&
.arg(orderObj->packDiscount).arg(orderObj->deliveryPrice).arg(orderObj->deliveryDiscount) .arg(orderObj->packDiscount).arg(orderObj->deliveryPrice).arg(orderObj->deliveryDiscount)
.arg(orderObj->carNumber).arg(orderObj->privacyPhone).arg(orderObj->remindTicketTime) .arg(orderObj->carNumber).arg(orderObj->privacyPhone).arg(orderObj->remindTicketTime)
.arg(orderObj->carColor).arg(orderObj->carBrandModel) .arg(orderObj->carColor).arg(orderObj->carBrandModel)
.arg(orderObj->extendType).arg(orderObj->deliveryProvider).arg(orderObj->deliveryType); .arg(orderObj->extendType).arg(orderObj->deliveryProvider).arg(orderObj->deliveryType).arg(orderObj->totalPriceForPos);
} else { } else {
QLOG_INFO()<<QString("[<<<<---SqlServer Database:Insert OrderId %1 Into tb_msr_customer_info Success--->>>>]").arg(orderObj->id); QLOG_INFO()<<QString("[<<<<---SqlServer Database:Insert OrderId %1 Into tb_msr_customer_info Success--->>>>]").arg(orderObj->id);
result = true; result = true;
......
...@@ -259,6 +259,8 @@ QString OrderObject::getChannelName() ...@@ -259,6 +259,8 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("预-MOD-隔日"); return QString::fromLocal8Bit("预-MOD-隔日");
}else if ( 8 == orderType ) { }else if ( 8 == orderType ) {
return QString::fromLocal8Bit("拼-MOD"); return QString::fromLocal8Bit("拼-MOD");
}else if ( 89 == orderType ) {
return QString::fromLocal8Bit("权益卡");
} else { } else {
if ( "4" == platformSource ) { if ( "4" == platformSource ) {
return QString::fromLocal8Bit("微信-MOD"); return QString::fromLocal8Bit("微信-MOD");
...@@ -272,6 +274,8 @@ QString OrderObject::getChannelName() ...@@ -272,6 +274,8 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("预-美团-当日"); return QString::fromLocal8Bit("预-美团-当日");
} else if ( 11 == orderType ) { } else if ( 11 == orderType ) {
return QString::fromLocal8Bit("预-美团-隔日"); return QString::fromLocal8Bit("预-美团-隔日");
} else if ( 89 == orderType ) {
return QString::fromLocal8Bit("权益卡");
} else { } else {
return QString::fromLocal8Bit("美团-MOD"); return QString::fromLocal8Bit("美团-MOD");
} }
...@@ -295,6 +299,8 @@ QString OrderObject::getChannelName() ...@@ -295,6 +299,8 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("预-饿了么-当日"); return QString::fromLocal8Bit("预-饿了么-当日");
} else if ( 11 == orderType ) { } else if ( 11 == orderType ) {
return QString::fromLocal8Bit("预-饿了么-隔日"); return QString::fromLocal8Bit("预-饿了么-隔日");
} else if ( 89 == orderType ) {
return QString::fromLocal8Bit("权益卡");
} else { } else {
return QString::fromLocal8Bit("饿了么"); return QString::fromLocal8Bit("饿了么");
} }
...@@ -311,6 +317,8 @@ QString OrderObject::getChannelName() ...@@ -311,6 +317,8 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("预-MOP-隔日"); return QString::fromLocal8Bit("预-MOP-隔日");
} else if ( 8 == orderType ) { } else if ( 8 == orderType ) {
return QString::fromLocal8Bit("拼-MOP"); return QString::fromLocal8Bit("拼-MOP");
} else if ( 89 == orderType ) {
return QString::fromLocal8Bit("权益卡");
} else if (10 == orderType) { } else if (10 == orderType) {
return QString::fromLocal8Bit("星时刻"); return QString::fromLocal8Bit("星时刻");
} else { } else {
...@@ -328,13 +336,15 @@ QString OrderObject::getChannelName() ...@@ -328,13 +336,15 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("预-美团-当日"); return QString::fromLocal8Bit("预-美团-当日");
} else if ( 11 == orderType ) { } else if ( 11 == orderType ) {
return QString::fromLocal8Bit("预-美团-隔日"); return QString::fromLocal8Bit("预-美团-隔日");
} else if ( 89 == orderType ) {
return QString::fromLocal8Bit("权益卡");
} else { } else {
return QString::fromLocal8Bit("美团-MOP"); return QString::fromLocal8Bit("美团-MOP");
} }
} else if ( "EC-MOP" == channel || "EC_WECHAT_MOP" == channel ) { } else if ( "EC-MOP" == channel || "EC_WECHAT_MOP" == channel ) {
return QString::fromLocal8Bit("电商MOP"); return QString::fromLocal8Bit("电商MOP");
} else{ } else {
return QString::fromLocal8Bit("未知"); return QString::fromLocal8Bit("未知");
} }
......
...@@ -114,6 +114,8 @@ class OrderObject : public QObject ...@@ -114,6 +114,8 @@ class OrderObject : public QObject
Q_PROPERTY (QString callBackUrl READ getCallBackUrl WRITE setCallBackUrl) Q_PROPERTY (QString callBackUrl READ getCallBackUrl WRITE setCallBackUrl)
Q_PROPERTY (bool skipPrint READ getSkipPrint WRITE setSkipPrint) Q_PROPERTY (bool skipPrint READ getSkipPrint WRITE setSkipPrint)
Q_PROPERTY (QJsonObject pluginOptions READ getPluginOptions WRITE setPluginOptions) Q_PROPERTY (QJsonObject pluginOptions READ getPluginOptions WRITE setPluginOptions)
Q_PROPERTY (int totalPriceForPos READ getTotalPriceForPos WRITE setTotalPriceForPos )
public: public:
OrderObject(QObject *parent=0) OrderObject(QObject *parent=0)
...@@ -294,6 +296,7 @@ public: ...@@ -294,6 +296,7 @@ public:
QString sbkAppPayValue; QString sbkAppPayValue;
QString sbkAppRefundPayValue; QString sbkAppRefundPayValue;
bool backupPosFlag; bool backupPosFlag;
int totalPriceForPos;
QString getChannelName(); QString getChannelName();
...@@ -584,6 +587,9 @@ public: ...@@ -584,6 +587,9 @@ public:
inline QJsonObject getPluginOptions()const{return pluginOptions;} inline QJsonObject getPluginOptions()const{return pluginOptions;}
inline void setPluginOptions(const QJsonObject& v){pluginOptions = v;} inline void setPluginOptions(const QJsonObject& v){pluginOptions = v;}
inline int getTotalPriceForPos()const{return totalPriceForPos;}
inline void setTotalPriceForPos(const int& v){totalPriceForPos = v;}
}; };
#endif // ORDEROBJECT_H #endif // ORDEROBJECT_H
...@@ -74,7 +74,8 @@ void DetailForm::InitData(OrderObject *orderObject) ...@@ -74,7 +74,8 @@ void DetailForm::InitData(OrderObject *orderObject)
ui->detailLab3->setText(orderObject->riderName.isEmpty() ? QString::fromLocal8Bit("暂未指定") : QString::fromLocal8Bit("[姓名]%1 [电话]%2") ui->detailLab3->setText(orderObject->riderName.isEmpty() ? QString::fromLocal8Bit("暂未指定") : QString::fromLocal8Bit("[姓名]%1 [电话]%2")
.arg(orderObject->riderName, orderObject->riderPhone)); .arg(orderObject->riderName, orderObject->riderPhone));
//TODO //TODO
ui->detailLab4->setText(Penny2Dollar(orderObject->totalPrice));
ui->detailLab4->setText( Penny2Dollar(orderObject->totalPrice) + " TotalPriceForPos: " + Penny2Dollar(orderObject->totalPriceForPos) );
//先隐藏发票信息 //先隐藏发票信息
ui->detailSlab6->setText(QString::fromLocal8Bit("三方订单号")); ui->detailSlab6->setText(QString::fromLocal8Bit("三方订单号"));
ui->detailLab6->setText(orderObject->thirdPartyOrderId); ui->detailLab6->setText(orderObject->thirdPartyOrderId);
......
...@@ -7,8 +7,8 @@ IDI_ICON ICON DISCARDABLE "logo.ico" ...@@ -7,8 +7,8 @@ IDI_ICON ICON DISCARDABLE "logo.ico"
#endif #endif
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
//***每次修改后编译发版必须变更版本号(preDefine.h中APP_VERSION 需要一致)***// //***每次修改后编译发版必须变更版本号(preDefine.h中APP_VERSION 需要一致)***//
FILEVERSION 2,2022,11,30 FILEVERSION 2,2023,2,23
PRODUCTVERSION 2,2022,11,30 PRODUCTVERSION 2,2023,2,23
//*************************************************************************// //*************************************************************************//
FILEFLAGSMASK 0x3fL FILEFLAGSMASK 0x3fL
#ifdef _DEBUG #ifdef _DEBUG
...@@ -27,12 +27,12 @@ VS_VERSION_INFO VERSIONINFO ...@@ -27,12 +27,12 @@ VS_VERSION_INFO VERSIONINFO
VALUE "CompanyName", "ShangHai.Freemud Co., Ltd." VALUE "CompanyName", "ShangHai.Freemud Co., Ltd."
VALUE "FileDescription", "Delivery Order Plugin Application" VALUE "FileDescription", "Delivery Order Plugin Application"
VALUE "InternalName", "fmTakeout.exe" VALUE "InternalName", "fmTakeout.exe"
VALUE "LegalCopyright", "Copyright (C)2014-2022" VALUE "LegalCopyright", "Copyright (C)2014-2023"
VALUE "OriginalFilename", "fmTakeout.exe" VALUE "OriginalFilename", "fmTakeout.exe"
VALUE "ProductName", "Delivery Order Plugin" VALUE "ProductName", "Delivery Order Plugin"
//***每次修改后编译发版必须变更版本号(preDefine.h中APP_VERSION 需要一致)***// //***每次修改后编译发版必须变更版本号(preDefine.h中APP_VERSION 需要一致)***//
VALUE "ProductVersion", "2.2022.11.30" VALUE "ProductVersion", "2.2023.2.23"
VALUE "FileVersion", "2.2022.11.30" VALUE "FileVersion", "2.2023.2.23"
//*************************************************************************// //*************************************************************************//
END END
END END
......
...@@ -166,9 +166,7 @@ void MainForm::MyShow() ...@@ -166,9 +166,7 @@ void MainForm::MyShow()
connect(m_resultForm, &QListWidget::itemClicked, this, &MainForm::onSearchResultItemClicked); connect(m_resultForm, &QListWidget::itemClicked, this, &MainForm::onSearchResultItemClicked);
m_dishesForm = new dishesForm(this); m_dishesForm = new dishesForm(this);
m_bunisStatusForm = new BStatusForm(this); m_bunisStatusForm = new BStatusForm(this);
m_dailyReportForm =new DailyReportForm(this); m_dailyReportForm =new DailyReportForm(this);
//变更此 "日结" 按钮 为"自测" 按钮; //变更此 "日结" 按钮 为"自测" 按钮;
//ui->mainBtnDayReport->hide(); //ui->mainBtnDayReport->hide();
...@@ -185,7 +183,6 @@ void MainForm::MyShow() ...@@ -185,7 +183,6 @@ void MainForm::MyShow()
void MainForm::_Init() void MainForm::_Init()
{ {
//this->setWindowFlags(this->windowFlags() | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);
this->setWindowFlags(this->windowFlags() | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | Qt::Tool); this->setWindowFlags(this->windowFlags() | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | Qt::Tool);
QLOG_INFO()<<QString::fromLocal8Bit("MainForm _Init Size(width:%1,height:%2)").arg( this->width() ).arg( this->height() ); QLOG_INFO()<<QString::fromLocal8Bit("MainForm _Init Size(width:%1,height:%2)").arg( this->width() ).arg( this->height() );
// 显示托盘 // 显示托盘
...@@ -206,8 +203,7 @@ void MainForm::_Init() ...@@ -206,8 +203,7 @@ void MainForm::_Init()
foreach(QTableWidget *table, m_tableList) foreach(QTableWidget *table, m_tableList)
{ {
table->hide(); table->hide();
if(table == ui->mainTableFinsh /*|| if( table == ui->mainTableFinsh )
table == ui->mainTableReserve*/)
{ {
for(int i=0; i<5; i++) for(int i=0; i<5; i++)
{ {
...@@ -352,6 +348,7 @@ void MainForm::onOrderClear(const QString &orderId, const int &oldstatus) ...@@ -352,6 +348,7 @@ void MainForm::onOrderClear(const QString &orderId, const int &oldstatus)
// 过期订单数据,主界面需要清除界面上订单记录 [订单号添加换行符用于比对查找]; // 过期订单数据,主界面需要清除界面上订单记录 [订单号添加换行符用于比对查找];
int tempOrderIdLen = orderId.length(); int tempOrderIdLen = orderId.length();
QString tempOrderId = orderId.left( tempOrderIdLen -5 ).append( "\r\n" ).append( orderId.right(5) ); QString tempOrderId = orderId.left( tempOrderIdLen -5 ).append( "\r\n" ).append( orderId.right(5) );
if(!table->item(i, 1)->text().compare(tempOrderId)) if(!table->item(i, 1)->text().compare(tempOrderId))
{ {
QLOG_INFO() << QString("[<<<<---MainForm::onOrderClear: Find orderId:%1, tempOrderId:%2 Then Clear Ui Item --->>>>]").arg(orderId).arg(tempOrderId); QLOG_INFO() << QString("[<<<<---MainForm::onOrderClear: Find orderId:%1, tempOrderId:%2 Then Clear Ui Item --->>>>]").arg(orderId).arg(tempOrderId);
...@@ -500,6 +497,7 @@ void MainForm::onChangeOrderStatus(OrderObject *orderObject, int oldStatus) ...@@ -500,6 +497,7 @@ void MainForm::onChangeOrderStatus(OrderObject *orderObject, int oldStatus)
{ {
tabBtn = _GetTabBtnByOrderStatus(oldStatus); tabBtn = _GetTabBtnByOrderStatus(oldStatus);
table = findChild<QTableWidget*>(tabBtn->property("tableName").toString()); table = findChild<QTableWidget*>(tabBtn->property("tableName").toString());
for(int i=0; i<table->rowCount(); i++) for(int i=0; i<table->rowCount(); i++)
{ {
// 订单状态改变,主界面需要先移除Old Item后, 再添加New Item; [订单号添加换行符用于比对查找]; // 订单状态改变,主界面需要先移除Old Item后, 再添加New Item; [订单号添加换行符用于比对查找];
......
...@@ -45,7 +45,8 @@ ...@@ -45,7 +45,8 @@
//#define APP_VERSION "2.2022.8.1" //#define APP_VERSION "2.2022.8.1"
//#define APP_VERSION "2.2022.8.18" //#define APP_VERSION "2.2022.8.18"
//#define APP_VERSION "2.2022.10.20" //#define APP_VERSION "2.2022.10.20"
#define APP_VERSION "2.2022.11.30" //#define APP_VERSION "2.2022.11.30"
#define APP_VERSION "2.2023.2.23"
//修正版本号时,切记修正 FmTakeout.rc 中的版本号 //修正版本号时,切记修正 FmTakeout.rc 中的版本号
......
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