Commit 52084c97 by wuyang.zou

PCS插件

<1> PCS插件 拉取订单数据无效,重试 3次
<2> PCS插件 订单号后五位进行换行展示;
<2> PCS插件 针对权益单进行跳过存储;

Version: 4.2023.2.23
parent f40d6891
......@@ -68,6 +68,9 @@ private:
QString orderId;
int pullErrorCount;
QString callBackUrl;
bool skipPrint;
QJsonObject pushOptions;
}PullOrderInfo;
typedef struct ORDER_OPERATION
......@@ -90,7 +93,10 @@ private:
QString storeId; //门店编号
QString remark; //备注:入机出错信息
QString checkNo; //小票号:入机成功时的小票号;
QString failCode; // 入机/存储 错误码 (成功时都给 "");
QString pluginVersion; //该订单入机后, 汇报给OMS对应程序的版本号;
int reqResult; //向OMS请求汇报结果;
}RepOMSRecordOrderInfo;
//定义门店的营业状态;
......@@ -117,6 +123,8 @@ private:
int m_eleStoreStatus;
int m_mopStoreStatus;
int m_modStoreStatus;
int m_mtModStoreStatus;
int m_existNoAckNotice;
bool m_bLastHeartIsError;
int m_orderCount;
int m_o2ofulfillmentOrderCount;
......@@ -229,7 +237,7 @@ signals:
* 参数:1 [ele开关店状态] 2[MOD开关店状态] 3[MOP开关店状态]
* 返回:Null
* */
void doUpdateStoreStatus(int eleStoreStatus,int modStoreStatus,int mopStoreStatus);
void doUpdateStoreStatus(int eleStoreStatus, int modStoreStatus, int mopStoreStatus, int mtStoreStatus, int existNoAckNotice);
/* 功能:设置主界面门店信息
......@@ -337,7 +345,8 @@ public slots:
* 参数:[1]订单编号
* 返回:是否成功
* */
bool _PullOrderDetail(const QString &orderId, const QString& channel, const QString &callBackUrl, const bool &skipErrorDisplay = false );
bool _PullOrderDetail( const QString& orderId, const QString& channel, const QString& callBackUrl, const bool& skipPrint = false, const QJsonObject& pushOptins = QJsonObject(),
const bool& skipErrorDisplay = false );
/* 功能:拉取订单
* 参数:NULL
* 返回:是否成功
......@@ -448,6 +457,13 @@ public slots:
* */
void onGetOrderDetails(const QString &orderId);
/* 功能:获取 EC-MOP 订单详情
* 参数: OrderId, Channel
* 返回:NULL
* */
void onGetEcMopOrderDetails(const QString &orderId, const QString &channel);
/* 功能:搜索订单
* 参数:[1]搜索内容
* 返回:NULL
......@@ -470,7 +486,7 @@ public slots:
* 参数:[1]订单号
* 返回:NULL
* */
void onProcessReTryInputOrder(const QString& orderId);
void onProcessRetryInputOrder(const QString& orderId);
/* 功能:获取门店营业状态
* 参数:NULL
......
......@@ -124,8 +124,17 @@ bool QtRedisClient::pushOrder2Redis(const OrderObject* orderObj ){
orderStatusObj.insert( "ARRIVEAHEAD", orderObj->inAdvanceTakemeal );
}
QJsonDocument orderStatusDoc = QJsonDocument(orderStatusObj);
cmdString.append(orderStatusDoc.toJson());
if ( !m_pRedisConnectOperat ) {
QLOG_INFO() << QString("[<<<<---QtRedisClient::pushOrder2Redis orderId:%1 m_pRedisConnectOperat Pointer Is Null, Wait Retry Init --->>>>]").arg(orderObj->id);
return bPushOrderSuc;
}
if ( !m_pRedisConnectOperat->isConnected() ) {
QLOG_INFO() << QString("[<<<<---QtRedisClient::pushOrder2Redis orderId:%1 m_pRedisConnectOperat Disconnet, Wait Retry Init --->>>>]").arg(orderObj->id);
return bPushOrderSuc;
}
try {
auto result = m_pRedisConnectOperat->command(cmdString);
QVariant val = result.result().value();
......
......@@ -138,6 +138,8 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("预-MOD-隔日");
} else if ( 8 == orderType ) {
return QString::fromLocal8Bit("拼-MOD");
} else if ( 89 == orderType ) {
return QString::fromLocal8Bit("权益卡");
} else {
if ( "4" == platformSource ) {
return QString::fromLocal8Bit("微信-MOD");
......@@ -151,6 +153,8 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("预-美团-当日");
} else if ( 11 == orderType ) {
return QString::fromLocal8Bit("预-美团-隔日");
} else if ( 89 == orderType ) {
return QString::fromLocal8Bit("权益卡");
} else {
return QString::fromLocal8Bit("美团-MOD");
}
......@@ -174,6 +178,8 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("预-饿了么-当日");
} else if ( 11 == orderType ) {
return QString::fromLocal8Bit("预-饿了么-隔日");
} else if ( 89 == orderType ) {
return QString::fromLocal8Bit("权益卡");
} else {
return QString::fromLocal8Bit("饿了么");
}
......@@ -193,6 +199,8 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("拼-MOP");
} else if (10 == orderType) {
return QString::fromLocal8Bit("星时刻");
} else if ( 89 == orderType ) {
return QString::fromLocal8Bit("权益卡");
} else {
if ( "5" == platformSource ) {
return QString::fromLocal8Bit("口碑-MOP");
......@@ -206,6 +214,8 @@ QString OrderObject::getChannelName()
return QString::fromLocal8Bit("预-美团-当日");
} else if ( 11 == orderType ) {
return QString::fromLocal8Bit("预-美团-隔日");
} else if ( 89 == orderType ) {
return QString::fromLocal8Bit("权益卡");
} else {
return QString::fromLocal8Bit("美团-MOP");
}
......
......@@ -25,32 +25,129 @@ void AlertForm::SetContent(AlertForm::Type type, const QString &msg)
ui->alertBtnOk->show();
ui->alertLabOk->show();
ui->alertLabIng->hide();
// ui->alertLabWarn->hide();
ui->alertLabError->hide();
break;
case MSGERROR:
ui->alertBtnOk->show();
ui->alertLabOk->hide();
ui->alertLabIng->hide();
// ui->alertLabWarn->hide();
ui->alertLabError->show();
break;
case LOADING:
ui->alertBtnOk->hide();
ui->alertLabOk->hide();
ui->alertLabIng->show();
// ui->alertLabWarn->hide();
ui->alertLabError->hide();
break;
case BRIEF_TIPS:
ui->alertBtnOk->hide();
ui->alertLabOk->hide();
ui->alertLabIng->show();
// ui->alertLabWarn->hide();
ui->alertLabError->hide();
break;
case SYNCDATA:
ui->alertBtnOk->hide();
ui->alertLabOk->hide();
ui->alertLabIng->show();
// ui->alertLabWarn->hide();
ui->alertLabError->hide();
m_timer->stop();
m_timer->start(20000);
break;
case WARNNING:
ui->alertBtnOk->show();
ui->alertLabOk->hide();
ui->alertLabIng->hide();
// ui->alertLabWarn->show();
ui->alertLabError->hide();
break;
case ACK_MSG:
ui->alertBtnOk->show();
ui->alertLabOk->hide();
ui->alertLabIng->hide();
// ui->alertLabWarn->show();
ui->alertLabError->hide();
break;
}
if ( type == WARNNING ) {
ui->alertLabMsg->hide();
QStringList mopExceptInfoList = msg.split(';');
if ( mopExceptInfoList.size() >4 ) {
/*
ui->alertLabWarn1->setText( mopExceptInfoList[0] );
ui->alertLabWarn1->setAlignment(Qt::AlignCenter);
QFont font1 ( "Microsoft YaHei", 14, QFont::Bold);
ui->alertLabWarn1->setFont(font1);
ui->alertLabWarn1->show();
ui->alertLabWarn_space->show();
ui->alertLabWarn2->setText( mopExceptInfoList[1] );
ui->alertLabWarn2->setAlignment(Qt::AlignLeft);
QPalette palette2;
palette2.setColor(QPalette::WindowText,Qt::red);
ui->alertLabWarn2->setPalette(palette2);
ui->alertLabWarn2->show();
ui->alertLabWarn3->setText( mopExceptInfoList[2] );
ui->alertLabWarn3->setAlignment(Qt::AlignLeft);
QPalette palette3;
palette3.setColor(QPalette::WindowText,Qt::black);
ui->alertLabWarn3->setPalette(palette3);
ui->alertLabWarn3->show();
ui->alertLabWarn4->setText( mopExceptInfoList[3] );
ui->alertLabWarn4->setAlignment(Qt::AlignLeft);
ui->alertLabWarn4->setPalette(palette2);
ui->alertLabWarn4->show();
ui->alertLabWarn5->setText( mopExceptInfoList[4] );
ui->alertLabWarn5->setAlignment(Qt::AlignLeft);
ui->alertLabWarn5->setPalette(palette3);
ui->alertLabWarn5->show();
*/
} else {
ui->alertLabMsg->setText(msg);
}
} else if ( type == ACK_MSG) {
/*
ui->alertLabWarn_space->hide();
ui->alertLabWarn1->hide();
ui->alertLabWarn2->hide();
ui->alertLabWarn3->hide();
ui->alertLabWarn4->hide();
ui->alertLabWarn5->hide();
*/
ui->alertLabMsg->hide();
} else {
/*
ui->alertLabWarn_space->hide();
ui->alertLabWarn1->hide();
ui->alertLabWarn2->hide();
ui->alertLabWarn3->hide();
ui->alertLabWarn4->hide();
ui->alertLabWarn5->hide();
*/
ui->alertLabMsg->setText(msg);
}
ui->alertLabMsg->setText(msg);
if(!m_timer->isActive())
m_timer->start(20000);
if ( type == WARNNING || type == ACK_MSG ) {
m_timer->stop();
} else if ( type == BRIEF_TIPS ) {
if(!m_timer->isActive() )
m_timer->start(3000);
} else {
if(!m_timer->isActive() )
m_timer->start(20000);
}
return;
}
......
......@@ -23,7 +23,10 @@ public:
SUCCESS=0,
MSGERROR,
LOADING,
SYNCDATA
BRIEF_TIPS,
SYNCDATA,
WARNNING,
ACK_MSG
}Type;
/* 功能:设置显示内容
......
......@@ -14,7 +14,7 @@ DetailForm::DetailForm(QWidget *parent) :
connect(this, &DetailForm::processOrder, &FlowControl::GetInstance(), &FlowControl::onProcessOrder);
connect(this, &DetailForm::processRejectOrder, &FlowControl::GetInstance(), &FlowControl::onProcessRejectOrder);
connect(this, &DetailForm::processRepealOrder, &FlowControl::GetInstance(), &FlowControl::onProcessRepealOrder);
connect(this, &DetailForm::processReTryInputOrder, &FlowControl::GetInstance(), &FlowControl::onProcessReTryInputOrder);
connect(this, &DetailForm::processRetryInputOrder, &FlowControl::GetInstance(), &FlowControl::onProcessRetryInputOrder);
m_rejectForm=NULL;
m_refuseForm=NULL;
......@@ -152,7 +152,9 @@ void DetailForm::InitData(OrderObject *orderObject)
CouponsObject* tempCouponObj = orderObject->coupList[coupNum];
ui->detailTable0->insertRow(pNum);
QString tempName = tempCouponObj->name.length()?tempCouponObj->name:QString::fromLocal8Bit("券");
ui->detailTable0->setItem(pNum, 0, new QTableWidgetItem(tempName)); // 券名
tempName.append("\r\n");
tempName.append(tempCouponObj->code);
ui->detailTable0->setItem(pNum, 0, new QTableWidgetItem(tempName)); // 券名+券号码
ui->detailTable0->item(pNum, 0)->setTextAlignment(Qt::AlignCenter);
ui->detailTable0->setItem(pNum, 1, new QTableWidgetItem(QString('-'))); // 券价格
ui->detailTable0->item(pNum, 1)->setTextAlignment(Qt::AlignCenter);
......@@ -365,9 +367,35 @@ void DetailForm::on_detailBtn0_clicked()
{
QLOG_INFO()<<QString("[<<<<---DetailForm::on_detailBtn0_clicked: begin:--->>>>]")<<QString("重新录单")<< m_orderObject->id;
if(m_orderObject) {
emit processReTryInputOrder(m_orderObject->id);
emit processRetryInputOrder(m_orderObject->id);
this->hide();
} else {
QLOG_ERROR()<<QString("[<<<<---DetailForm::on_detailBtn0_clicked: m_orderObject point is NULL--->>>>]");
}
}
void DetailForm::hideDetailAllFrom()
{
QLOG_INFO()<<QString("[<<<<---DetailForm::hideDetailAllFrom: begin:--->>>>]");
if ( m_refuseForm && m_refuseForm->isVisible() ) {
//delete m_refuseForm;
//m_refuseForm = NULL;
m_refuseForm->hideSelectProductFrom();
m_refuseForm->reject();
}
/*
if ( m_printTicketSelectForm && m_printTicketSelectForm->isVisible() ) {
m_printTicketSelectForm->reject();
m_printTicketSelectForm->hide();
}
*/
QLOG_INFO()<<QString("[<<<<---DetailForm::hideDetailAllFrom: middle:--->>>>]");
this->hide();
QLOG_INFO()<<QString("[<<<<---DetailForm::hideDetailAllFrom: Finished:--->>>>]");
}
......@@ -58,7 +58,7 @@ signals:
* 参数:[1]订单编号
* 返回:NULL
* */
void processReTryInputOrder(const QString& orderId);
void processRetryInputOrder(const QString& orderId);
private slots:
/* 功能:处理订单按钮点击
......@@ -81,6 +81,13 @@ private slots:
* */
void on_detailBtn0_clicked();
public slots:
/* 功能:退单和录单同时进行时,优先录单,在 mainFrom 最小化时,会调用 DetailForm 最小化,其内部的子对象需要释放,否则会引发程序崩溃退出;
* 参数:NULL
* 返回:NULL
* */
void hideDetailAllFrom();
};
#endif // DETAILFORM_H
......@@ -19,6 +19,7 @@ FloatForm::FloatForm(QWidget *parent) :
m_bReminding = false;
m_bStoreStatus = true; //程序启动后,初始化为开店状态;
m_bExistNoAckNotice = false; //程序启动后,初始化为不存在[NoAckNotice];
QPixmap imgStoreBusiStat(":StoreBusinessStatus.png");
m_imgStoreBusiStatSize = imgStoreBusiStat.size();
......@@ -191,8 +192,14 @@ void FloatForm::onShow()
m_raiseTimer.start();
}
void FloatForm::onHide()
{
hide();
m_raiseTimer.start();
}
void FloatForm::onLockFloatForm(){
QLOG_INFO()<<QString("[<<<----FloatForm::onLockFloatForm : Lock Float Form --->>>>]");
if( this->isEnabled() ){
this->setEnabled(false);
}
......@@ -200,75 +207,96 @@ void FloatForm::onLockFloatForm(){
void FloatForm::onUnLockFloatForm(){
QLOG_INFO()<<QString("[<<<----FloatForm::onUnLockFloatForm : unLock Float Form --->>>>]");
if( !this->isEnabled() ){
this->setEnabled(true);
}
}
void FloatForm::onUpdateStoreStatus(int eleStoreStatus, int modStoreStatus,int mopStoreStatus){
QLOG_INFO()<<QString("[<<<----FloatForm::onUpdateStoreStatus:eleStoreStatus, modStoreStatus, mopStoreStatus: --->>>>]")<<eleStoreStatus <<modStoreStatus <<mopStoreStatus ;
RefreshStoreStatus(eleStoreStatus, modStoreStatus,mopStoreStatus);
void FloatForm::onUpdateStoreStatus(int eleStoreStatus, int modStoreStatus, int mopStoreStatus, int mtStoreStatus, int existNoAckNotice){
QLOG_INFO()<<QString("[<<<----FloatForm::onUpdateStoreStatus: eleStoreStatus: %1, modStoreStatus: %2, mopStoreStatus: %3, mtStoreStatus: %4, existNoAckNotice:%5 --->>>>]")
.arg(eleStoreStatus).arg(modStoreStatus).arg(mopStoreStatus).arg(mtStoreStatus).arg(existNoAckNotice);
m_bExistNoAckNotice = existNoAckNotice;
RefreshStoreStatus( eleStoreStatus, modStoreStatus, mopStoreStatus, mtStoreStatus );
}
void FloatForm::RefreshStoreStatus(int eleStoreStatus, int modStoreStatus,int mopStoreStatus){
void FloatForm::RefreshStoreStatus(int eleStoreStatus, int modStoreStatus, int mopStoreStatus, int mtStoreStatus){
QLOG_INFO()<<QString("[<<<----FloatForm::RefreshStoreStatus:--->>>>]");
int titleLab_w = 35, titleLab_h = 14, statusLab_w = 30, statusLab_h = 14;
int first_x = 15, first_y = 35, col_interval = 15, row_interval = 10;
//准备MOD门店营业状态Label;
this->ui->Mod1Lable->resize(56, 14); //图片源文件大小
this->ui->Mod1Lable->move(10, 40); //左边距10像素;
this->ui->Mod1Lable->setPixmap(QPixmap(":ModTitle.png"));
this->ui->Mod2Lable->resize(44, 20); //图片源文件大小
this->ui->Mod2Lable->move(70, 36); // 在 Mod1Lable 基础上 x+4; y-4;
this->ui->Mod1Lable->move( first_x, first_y); //左边距 first_x 像素; 上边距: first_y 像素;
this->ui->Mod1Lable->setPixmap( QPixmap(":ModTitle.png").scaled(titleLab_w, titleLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
this->ui->Mod2Lable->move( first_x + titleLab_w + col_interval, first_y );
if(1 == modStoreStatus){
this->ui->Mod2Lable->setPixmap(QPixmap(":StoreOn.png"));
this->ui->Mod2Lable->setPixmap( QPixmap(":StoreOn.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
}else if(2 == modStoreStatus){
this->ui->Mod2Lable->setPixmap(QPixmap(":StoreOff.png"));
this->ui->Mod2Lable->setPixmap( QPixmap(":StoreOff.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
}else {
this->ui->Mod2Lable->setPixmap(QPixmap(":StoreDef.png"));
this->ui->Mod2Lable->setPixmap( QPixmap(":StoreDef.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
}
//准备Eleme门店营业状态Label;
this->ui->Eleme1Lable->resize(43, 14); //图片源文件大小
this->ui->Eleme1Lable->move(10, 66); //左边距10像素;高度距离上面一个标签 高度 + 10 像素间隔;
this->ui->Eleme1Lable->setPixmap(QPixmap(":ElemeTitle.png"));
this->ui->Eleme2Lable->resize(44, 20); //图片源文件大小
this->ui->Eleme2Lable->move(70, 62); // x 与 Mod1Lable 对齐; y-4;
this->ui->Eleme1Lable->move( first_x, first_y + 1* ( titleLab_h + row_interval ) );
this->ui->Eleme1Lable->setPixmap( QPixmap(":ElemeTitle.png").scaled(titleLab_w, titleLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
this->ui->Eleme2Lable->move(first_x + titleLab_w + col_interval, first_y + 1* ( statusLab_h + row_interval ) );
if(1 == eleStoreStatus){
this->ui->Eleme2Lable->setPixmap(QPixmap(":StoreOn.png"));
this->ui->Eleme2Lable->setPixmap( QPixmap(":StoreOn.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
}else if(2 == eleStoreStatus){
this->ui->Eleme2Lable->setPixmap(QPixmap(":StoreOff.png"));
this->ui->Eleme2Lable->setPixmap( QPixmap(":StoreOff.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
} else {
this->ui->Eleme2Lable->setPixmap(QPixmap(":StoreDef.png"));
this->ui->Eleme2Lable->setPixmap( QPixmap(":StoreDef.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
}
//准备Mop门店营业状态Label;
this->ui->Mop1Lable->resize(56, 14); //图片源文件大小
this->ui->Mop1Lable->move(10, 92); //左边距10像素;高度距离上面一个标签 高度 + 10 像素间隔;
this->ui->Mop1Lable->setPixmap(QPixmap(":MopTitle.png"));
this->ui->Mop2Lable->resize(44, 20); //图片源文件大小
this->ui->Mop2Lable->move(70, 88); // x 与 Mod1Lable 对齐; y-4;
this->ui->Mop1Lable->move(first_x, first_y + 2* ( titleLab_h + row_interval ) );
this->ui->Mop1Lable->setPixmap( QPixmap(":MopTitle.png").scaled(titleLab_w, titleLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
this->ui->Mop2Lable->move(first_x + titleLab_w + col_interval, first_y + 2* ( statusLab_h + row_interval ) );
if(1 == mopStoreStatus){
this->ui->Mop2Lable->setPixmap(QPixmap(":StoreOn.png"));
this->ui->Mop2Lable->setPixmap( QPixmap(":StoreOn.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
} else if(2 == mopStoreStatus) {
this->ui->Mop2Lable->setPixmap(QPixmap(":StoreOff.png"));
this->ui->Mop2Lable->setPixmap( QPixmap(":StoreOff.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
} else {
this->ui->Mop2Lable->setPixmap( QPixmap(":StoreDef.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
}
//准备美团 门店营业状态Label;
this->ui->Mt1Lable->move(first_x, first_y + 3* ( titleLab_h + row_interval ) );
this->ui->Mt1Lable->setPixmap( QPixmap(":MtTitle.png").scaled(titleLab_w, titleLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
this->ui->Mt2Lable->move(first_x + titleLab_w + col_interval, first_y + 3* ( titleLab_h + row_interval ) );
if(1 == mtStoreStatus){
this->ui->Mt2Lable->setPixmap( QPixmap(":StoreOn.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
} else if(2 == mtStoreStatus) {
this->ui->Mt2Lable->setPixmap( QPixmap(":StoreOff.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
} else {
this->ui->Mt2Lable->setPixmap( QPixmap(":StoreDef.png").scaled(statusLab_w, statusLab_h, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
}
//准备订单管理状态Label; NomalOrderManager
this->ui->OrderManagerLable->move(3, 122);
if ( m_bExistNoAckNotice ) {
this->ui->OrderManagerLable->setPixmap( QPixmap(":SmallHorn.png").scaled(110, 30, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
} else {
this->ui->Mop2Lable->setPixmap(QPixmap(":StoreDef.png"));
this->ui->OrderManagerLable->setPixmap( QPixmap(":NomalOrderManager.png").scaled(110, 30, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
}
//准备订单管理状态Label;
this->ui->OrderManagerLable->resize(120, 36); //图片源文件大小; x缩小10像素;
this->ui->OrderManagerLable->move(2, 118); //左边距0像素;高度距离上面一个标签 高度 + 10 像素间隔;
this->ui->OrderManagerLable->setPixmap(QPixmap(":NomalOrderManager.png"));
}
void FloatForm::RefreshOrderManagerStatus(int existNewOrder){
QLOG_INFO()<<QString("[<<<----FloatForm::RefreshOrderManagerStatus:%1--->>>>]").arg(existNewOrder);
if(existNewOrder){ //有新订单;
this->ui->OrderManagerLable->resize(120, 36); //图片源文件大小; x缩小10像素;
this->ui->OrderManagerLable->move(2, 118); //左边距0像素;高度距离上面一个标签 高度 + 10 像素间隔;
this->ui->OrderManagerLable->setPixmap(QPixmap(":ComeNewOrder.png"));
this->ui->OrderManagerLable->move(3, 122);
this->ui->OrderManagerLable->setPixmap( QPixmap(":ComeNewOrder.png").scaled(110, 30, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
} else { //无新订单;
this->ui->OrderManagerLable->resize(120, 36); //图片源文件大小; x缩小10像素;
this->ui->OrderManagerLable->move(2, 118); //左边距0像素;高度距离上面一个标签 高度 + 10 像素间隔;
this->ui->OrderManagerLable->setPixmap(QPixmap(":NomalOrderManager.png"));
this->ui->OrderManagerLable->move(3, 122);
if ( m_bExistNoAckNotice ) {
this->ui->OrderManagerLable->setPixmap( QPixmap(":SmallHorn.png").scaled(110, 30, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
} else {
this->ui->OrderManagerLable->setPixmap( QPixmap(":NomalOrderManager.png").scaled(110, 30, Qt::IgnoreAspectRatio, Qt::SmoothTransformation) );
}
}
}
......@@ -39,6 +39,9 @@ private:
// 记录门店营业状态
bool m_bStoreStatus;
// 临时记录是否存在 未ACK的门店通知;
bool m_bExistNoAckNotice;
// 记录提示状态图片的大小
QSize m_imgRemindSize;
// 三个渠道的门店营业状态;
......@@ -97,6 +100,12 @@ public slots:
* */
void onShow();
/* 功能:隐藏窗口
* 参数:NULL
* 返回:NULL
* */
void onHide();
/* 功能:锁住窗口:enable(false);
* 参数:NULL
* 返回:NULL
......@@ -113,13 +122,14 @@ public slots:
* 参数:1 [ele开关店状态] 2[MOD开关店状态] 3[MOP开关店状态]
* 返回:NULL
* */
void onUpdateStoreStatus(int eleStoreStatus, int modStoreStatus,int mopStoreStatus);
void onUpdateStoreStatus(int eleStoreStatus, int modStoreStatus, int mopStoreStatus, int mtStoreStatus, int existNoAckNotice);
/* 功能:更新多渠道门店营业状态显示;
* 参数:1 [ele开关店状态] 2[MOD开关店状态] 3[MOP开关店状态]
* 返回:NULL
* */
void RefreshStoreStatus(int eleStoreStatus=0, int modStoreStatus=0,int mopStoreStatus=0);
void RefreshStoreStatus(int eleStoreStatus=0, int modStoreStatus=0, int mopStoreStatus=0, int mtStoreStatus=0);
/* 功能:新订单到POS更新悬浮框显示;
* 参数:1 [是否存在新订单]
......
......@@ -119,6 +119,45 @@
<string/>
</property>
</widget>
<widget class="QLabel" name="Mt1Lable">
<property name="geometry">
<rect>
<x>0</x>
<y>100</y>
<width>51</width>
<height>21</height>
</rect>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLabel" name="Mt2Lable">
<property name="geometry">
<rect>
<x>60</x>
<y>90</y>
<width>51</width>
<height>21</height>
</rect>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLabel" name="NoticeIconLabel">
<property name="geometry">
<rect>
<x>50</x>
<y>20</y>
<width>54</width>
<height>12</height>
</rect>
</property>
<property name="text">
<string/>
</property>
</widget>
</widget>
</item>
</layout>
......
......@@ -7,8 +7,8 @@ IDI_ICON ICON DISCARDABLE "logo.ico"
#endif
VS_VERSION_INFO VERSIONINFO
//***每次修改后编译发版必须变更版本号(preDefine.h中APP_VERSION 需要一致)***//
FILEVERSION 4,2022,8,1
PRODUCTVERSION 4,2022,8,1
FILEVERSION 4,2023,2,23
PRODUCTVERSION 4,2023,2,23
//*************************************************************************//
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
......@@ -27,12 +27,12 @@ VS_VERSION_INFO VERSIONINFO
VALUE "CompanyName", "ShangHai.Freemud Co., Ltd."
VALUE "FileDescription", "PMS Plugin Application"
VALUE "InternalName", "PmsPlugin.exe"
VALUE "LegalCopyright", "Copyright (C)2014-2022"
VALUE "LegalCopyright", "Copyright (C)2014-2023"
VALUE "OriginalFilename", "PmsPlugin.exe"
VALUE "ProductName", "PMS Plugin"
//***每次修改后编译发版必须变更版本号(preDefine.h中APP_VERSION 需要一致)***//
VALUE "ProductVersion", "4.2022.8.1"
VALUE "FileVersion", "4.2022.8.1"
VALUE "ProductVersion", "4.2023.2.23"
VALUE "FileVersion", "4.2023.2.23"
//*************************************************************************//
END
END
......
......@@ -110,6 +110,7 @@ int main(int argc, char *argv[])
qRegisterMetaType<AlertForm::Type>("AlertForm::Type");
QObject::connect(&w, &MainForm::showFloatForm, &f, &FloatForm::onShow);
QObject::connect(&w, &MainForm::hideFloatForm, &f, &FloatForm::onHide);
QObject::connect(&FlowControl::GetInstance(), &FlowControl::startRemind, &f, &FloatForm::onStartRemind);
......
......@@ -33,8 +33,24 @@ public:
* 返回:NULL
* */
void MyShow();
protected:
void mouseMoveEvent(QMouseEvent * event);
void mousePressEvent(QMouseEvent * event);
void mouseReleaseEvent(QMouseEvent * event);
private:
Ui::MainForm *ui;
// 记录左键按下去后是否移动过
bool m_bMouseMove;
// 记录左键是否按下去
bool m_bMousePress;
// 拖动前鼠标坐标
QPoint m_lastMousePos;
// 此次拖动一共移动的距离
QPoint m_absMove;
// 时间定时器
QTimer m_timeTimer;
......@@ -102,6 +118,12 @@ signals:
* */
void showFloatForm();
/* 功能:通知悬浮窗隐藏
* 参数:NULL
* 返回:NULL
* */
void hideFloatForm();
/* 功能:通知悬浮窗开始提示
* 参数:[1]提示类型 0新订单1退款申请
* 返回:NULL
......@@ -120,6 +142,12 @@ signals:
* */
void getOrderDetails(const QString& orderId);
/* 功能:获取 EC-MOP 订单详情
* 参数:NULL
* 返回:NULL
* */
void getEcMopOrderDetails(const QString& orderId, const QString& channel);
/* 功能:开启流程
* 参数:NULL
* 返回:NULL
......@@ -227,6 +255,13 @@ private slots:
* 返回:NULL
* */
void onNumDelete();
/* 功能:键盘获取EC-MOP订单详情处理
* 参数:NULL
* 返回:NULL
* */
void onDisplayEcMopOrder();
/* 功能:点击搜索结果订单对应动作
* 参数:NULL
* 返回:NULL
......
......@@ -31,3 +31,9 @@ void PadForm::on_padBtnClearn_clicked()
emit numClear();
hide();
}
void PadForm::on_padBtnEcMop_clicked()
{
hide();
emit getEcMopOrder();
}
......@@ -35,10 +35,17 @@ private slots:
* */
void on_padBtnClearn_clicked();
/* 功能: 电商-MOP 按钮 触发获取订单详情数据接口获取成功后,直接跳转到 订单详情界面; 获取失败后,直接弹窗提示;
* 参数:NULL
* 返回:NULL
* */
void on_padBtnEcMop_clicked();
signals:
void numClicked(const QString& num);
void numDelete();
void numClear();
void getEcMopOrder();
};
#endif // PADFORM_H
......@@ -19,7 +19,8 @@
//#define APP_VERSION "4.2022.3.3"
//#define APP_VERSION "4.2022.4.11"
//#define APP_VERSION "4.2022.4.28"
#define APP_VERSION "4.2022.8.1"
//#define APP_VERSION "4.2022.8.1"
#define APP_VERSION "4.2023.2.23"
//修正版本号时,切记修正 FmTakeout.rc 中的版本号
#define SERVER_PASSWORD "posoperator@freemud.cn"
......@@ -137,6 +138,16 @@
#define JSON_POSIPADDRESS "posAddress"
#define JSON_CHANNEL "channel"
#define JSON_CALL_BACK_URL "callBackUrl"
#define JSON_SKIP_PRINT "skipPrint"
#define JSON_PUSH_OPTIONS "options"
#define JSON_PUSH_PLUGIN_OPTIONS "pluginOptions"
#define JSON_PRINT_OPT "printOpt"
#define JSON_PRINT_OPT_ALL "all"
#define JSON_PRINT_OPT_SUM "summary"
#define JSON_PRINT_OPT_CUP "cup"
#define JSON_PRINT_OPT_SUB "subscribe"
#define JSON_PRINT_OPT_STR "street"
#define JSON_BUSINESSSTATUS "business_status"
#define JSON_CODE "code"
#define JSON_PAGENUMBER "pageNo"
......
......@@ -114,11 +114,82 @@ void RefuseForm::on_reason5_toggled(bool checked)
}
}
void RefuseForm::on_reason6_toggled(bool checked)
{
if(checked)
{
ui->refuseBtnOk->setEnabled(true);
m_reasonStr=QString::fromLocal8Bit("留言无法打印");
m_reasonCode=17;
}
}
void RefuseForm::on_reason7_toggled(bool checked)
{
if(checked)
{
ui->refuseBtnOk->setEnabled(true);
m_reasonStr=QString::fromLocal8Bit("生活馆到店退单");
m_reasonCode=20;
}
}
void RefuseForm::_Init()
{
qDebug() << __FUNCTION__;
clearAllRadioBtnCheck();
m_refundDishesList.clear();
m_refundDishesListString.clear();
ui->reasonNULL->toggle();
ui->refuseBtnOk->setEnabled(false);
}
void RefuseForm::clearAllRadioBtnCheck(){
QLOG_INFO() << QString("[<<<<---RefuseForm::clearAllRadioBtnCheck Clear All Check --->>>>]");
ui->reason1->setAutoExclusive(false);
ui->reason1->setChecked(false);
ui->reason1->setAutoExclusive(true);
ui->reason2->setAutoExclusive(false);
ui->reason2->setChecked(false);
ui->reason2->setAutoExclusive(true);
ui->reason3->setAutoExclusive(false);
ui->reason3->setChecked(false);
ui->reason3->setAutoExclusive(true);
ui->reason4->setAutoExclusive(false);
ui->reason4->setChecked(false);
ui->reason4->setAutoExclusive(true);
ui->reason5->setAutoExclusive(false);
ui->reason5->setChecked(false);
ui->reason5->setAutoExclusive(true);
/*
ui->reason6->setAutoExclusive(false);
ui->reason6->setChecked(false);
ui->reason6->setAutoExclusive(true);
ui->reason7->setAutoExclusive(false);
ui->reason7->setChecked(false);
ui->reason7->setAutoExclusive(true);
*/
}
void RefuseForm::hideSelectProductFrom(){
if ( m_refDishesForm && m_refDishesForm->isVisible() ) {
QLOG_INFO() << QString("[<<<<---RefuseForm::hideSelectProductFrom Before m_refDishesForm->reject(); --->>>>]");
m_refDishesForm->reject();
/*
if ( m_refDishesForm ) {
m_refDishesForm->deleteLater();
QLOG_INFO() << QString("[<<<<---RefuseForm::hideSelectProductFrom m_refDishesForm->deleteLater(); --->>>>]");
}
*/
QLOG_INFO() << QString("[<<<<---RefuseForm::hideSelectProductFrom After m_refDishesForm->reject(); --->>>>]");
} else {
QLOG_INFO() << QString("[<<<<---RefuseForm::hideSelectProductFrom Finished --->>>>]");
}
}
......@@ -51,6 +51,15 @@ private slots:
void on_reason5_toggled(bool checked);
void on_reason6_toggled(bool checked);
void on_reason7_toggled(bool checked);
public slots:
void clearAllRadioBtnCheck();
void hideSelectProductFrom();
private:
Ui::RefuseForm *ui;
......
run/skin/MopTitle.png

1.05 KB | W: | H:

run/skin/MopTitle.png

1.15 KB | W: | H:

run/skin/MopTitle.png
run/skin/MopTitle.png
run/skin/MopTitle.png
run/skin/MopTitle.png
  • 2-up
  • Swipe
  • Onion skin
......@@ -7,6 +7,7 @@
<file>fm.png</file>
<file>pickBtn_select.png</file>
<file>error.png</file>
<file>warn.png</file>
<file>ok.png</file>
<file>loading.gif</file>
<file>alert_bg.png</file>
......@@ -39,10 +40,12 @@
<file>ComeNewOrder.png</file>
<file>NomalOrderManager.png</file>
<file>ElemeTitle.png</file>
<file>MtTitle.png</file>
<file>ModTitle.png</file>
<file>MopTitle.png</file>
<file>StoreOff.png</file>
<file>StoreOn.png</file>
<file>StoreDef.png</file>
<file>SmallHorn.png</file>
</qresource>
</RCC>
\ No newline at end of file
......@@ -77,8 +77,8 @@ QWidget
}
#mainLabPlacard
{
color: #b9b9b9;
background-color: #262626;
color: rgb(255, 0, 0);
background-color: #303030;
}
#mainSlabStoreid,#mainSlabOpeStatus,#mainSlabNetStatus,#mainSlabVersion,#mainSlabCashier,
#mainSlabTime,#mainLabStoreid,#mainLabOpeStatus,#mainLabNetStatus,#mainLabVersion,#mainLabCashier
......@@ -505,13 +505,13 @@ QTabBar QToolButton::left-arrow:disabled {
color: #ffffff;
border-image: url(:numBtn_press.png);
}
#padBtnClearn
#padBtnClose
{
font: 11pt "微软雅黑";
color: rgb(98, 98, 98);
border-image: url(:numBtn_normal.png);
}
#padBtnClearn:pressed
#padBtnClose:pressed
{
color: #ffffff;
border-image: url(:numBtn_press.png);
......@@ -526,6 +526,17 @@ QTabBar QToolButton::left-arrow:disabled {
border-image: url(:numBtn_press.png);
image: url(:delBtn_press.png);
}
#padBtnEcMop
{
font: 11pt "微软雅黑";
color: rgb(98, 98, 98);
border-image: url(:numBtn_normal.png);
}
#padBtnEcMop:pressed
{
color: #ffffff;
border-image: url(:numBtn_press.png);
}
/*---------------------------------padForm[ end ]---------------------------------*/
/*---------------------------------alertForm[begin]---------------------------------*/
......@@ -541,6 +552,10 @@ QTabBar QToolButton::left-arrow:disabled {
{
border-image: url(:ok.png);
}
#alertLabWarn
{
border-image: url(:warn.png);
}
#alertLabMsg
{
color: rgb(129, 129, 129);
......@@ -561,6 +576,58 @@ QTabBar QToolButton::left-arrow:disabled {
}
/*---------------------------------alertForm[ end ]---------------------------------*/
/*---------------------------------noticeForm[begin]---------------------------------*/
#noticeWdg
{
border-image: url(:alert_bg.png);
}
#noticeLabError
{
border-image: url(:error.png);
}
#noticeLabOk
{
border-image: url(:ok.png);
}
#noticeLabWarn
{
border-image: url(:warn.png);
}
#noticeTitleLab
{
color: rgb(129, 129, 129);
}
#noticeBtnOk
{
color: #878787;
background-color: #ffffff;
border: 1px solid #878787;
border-radius: 4px;
}
#noticeBtnOk:pressed
{
color: #3de17b;
background-color: #ffffff;
border: 1px solid #3de17b;
border-radius: 4px;
}
#noticeBtnIgnore
{
color: #878787;
background-color: #ffffff;
border: 1px solid #878787;
border-radius: 4px;
}
#noticeBtnIgnore:pressed
{
color: #3de17b;
background-color: #ffffff;
border: 1px solid #3de17b;
border-radius: 4px;
}
/*---------------------------------noticeForm[ end ]---------------------------------*/
/*---------------------------------DetailForm[begin]---------------------------------*/
#DetailForm
{
......@@ -617,21 +684,21 @@ QTabBar QToolButton::left-arrow:disabled {
color: rgb(173, 223, 152);
}
#detailSlab0,#detailSlab1,#detailSlab2,#detailSlab3,#detailSlab4,
#detailSlab5,#detailSlab6,#detailSlab7,#detailSlab8
#detailSlab5,#detailSlab6,#detailSlab7,#detailSlab8,#detailSlab10
{
color: #a6a6a6;
background-color: #faf9f9;
border: 1px solid #ececec;
}
#detailLab0,#detailLab2,#detailLab3,#detailLab4,
#detailLab5,#detailLab6,#detailLab7,#detailLab8
#detailLab5,#detailLab6,#detailLab7,#detailLab10
{
border-top: 1px solid #ececec;
border-bottom: 1px solid #ececec;
color: #4d4d4d;
background-color: #faf9f9;
}
#detailLab1
#detailLab1,#detailLab8
{
color: rgb(190, 63, 0);
background-color: #faf9f9;
......@@ -740,7 +807,7 @@ QTabBar QToolButton::left-arrow:disabled {
background-color: rgb(222,184,135);
border-radius: 3px;
}
#reason1,#reason2,#reason3,#reason4,#reason5
#reason1,#reason2,#reason3,#reason4,#reason5,#reason6,#reason7
{
font: 14pt "微软雅黑";
}
......@@ -752,14 +819,37 @@ QTabBar QToolButton::left-arrow:disabled {
}
/*---------------------------------refuseForm[end]-------------------------------------*/
/*---------------------------------PrintTicketSelectForm[start]-------------------------------------*/
#PrintTicketSelectForm
{
background-color:rgb(245,245,245);
}
#ticketSelectLab0
{
font: 14pt "微软雅黑";
background-color:rgb(238, 122, 42);
}
#BtnOk,#BtnCancle
{
font: 14pt "微软雅黑";
color: rgb(255, 255, 255);
background-color: rgb(238,122,42);
border-radius: 3px;
}
#BtnOk:pressed,#BtnCancle:pressed
{
color: rgb(161, 161, 161);
background-color: rgb(222,184,135);
border-radius: 3px;
}
#summaryTicket,#cupTicket,#reserveTicket,#curbsideTicket,#allTicket
{
font: 14pt "微软雅黑";
}
#BtnOk:disabled
{
color: #3d3d3d;
background-color: rgb(230, 230, 230);
border-radius: 3px;
}
/*---------------------------------PrintTicketSelectForm[end]-------------------------------------*/
No preview for this file type
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