Commit bdf39390 by NitefullWind

1. 实现退款后弹窗提示。

parent 00bdc4d5
......@@ -176,14 +176,14 @@ void FMPePayPrivate::Init()
hash["amount"] = (int)(trans["refund_amount"].toDouble()+0.005);
hash[FMP_JKEY_FM_ORDERID] = trans[FMP_JKEY_FM_ORDERID].toVariant();
if (trans.contains("refund_amount") && (int)(trans["refund_amount"].toDouble()+0.005) != 0
&& trans.contains(FMP_JKEY_FM_ORDERID) && !trans[FMP_JKEY_FM_ORDERID].toString().isEmpty()
|| trans.contains(FMP_JKEY_PAY_TRANSID) && !trans[FMP_JKEY_PAY_TRANSID].toString().isEmpty()) {
connect(this, &FMPePayPrivate::finished, this, &FMPePayPrivate::confirmClicked);
connect(this, &FMPePayPrivate::error, this, &FMPePayPrivate::confirmClicked);
ControlRefundJson(trans);
return;
}
// if (trans.contains("refund_amount") && trans["refund_amount"].toInt() != 0
// && trans.contains(FMP_JKEY_FM_ORDERID) && !trans[FMP_JKEY_FM_ORDERID].toString().isEmpty()
// || trans.contains(FMP_JKEY_PAY_TRANSID) && !trans[FMP_JKEY_PAY_TRANSID].toString().isEmpty()) {
// connect(this, &FMPePayPrivate::finished, this, &FMPePayPrivate::confirmClicked);
// connect(this, &FMPePayPrivate::error, this, &FMPePayPrivate::confirmClicked);
// ControlRefundJson(trans);
// return;
// }
}
QJsonArray pos_products = _origin_request["products"].toArray();
QJsonArray products;
......@@ -204,6 +204,10 @@ void FMPePayPrivate::Init()
}
_payDialog->show();
if(_origin_request["fm_cmd"].toInt() == 10041 && !hash[FMP_JKEY_FM_ORDERID].toString().isEmpty()) {
_payDialog->confirmRefund();
}
}
void FMPePayPrivate::clearorder()
......@@ -681,8 +685,8 @@ void FMPePayPrivate::ControlRefundJson(const QJsonObject &trans)
emit apiError();
}
disconnect(this, &FMPePayPrivate::finished, this, &FMPePayPrivate::confirmClicked);
connect(this, &FMPePayPrivate::error, this, &FMPePayPrivate::confirmClicked);
// disconnect(this, &FMPePayPrivate::finished, this, &FMPePayPrivate::confirmClicked);
// connect(this, &FMPePayPrivate::error, this, &FMPePayPrivate::confirmClicked);
});
}
......
......@@ -20,7 +20,8 @@
FMPPayDialog::FMPPayDialog(FMPePayPrivate *control, QVariantHash basicinfo, QWidget *parent) :
_control(control),
QDialog(parent),
ui(new Ui::FMPPayDialog)
ui(new Ui::FMPPayDialog),
_isConfirmRefund(false)
{
ui->setupUi(this);
......@@ -166,6 +167,7 @@ FMPPayDialog::FMPPayDialog(FMPePayPrivate *control, QVariantHash basicinfo, QWid
ui->lineedit_code_refund->setFocus();
ui->lineedit_num_refund->setText(QString::number(basicinfo["amount"].toDouble() / 100));
ui->lineedit_num_refund->setEnabled(false);
ui->lineedit_code_refund->setText(basicinfo[FMP_JKEY_FM_ORDERID].toString());
}
if (basicinfo["fm_cmd"].toInt() == 10031 || basicinfo["fm_cmd"].toInt() == 10041) {
......@@ -185,6 +187,12 @@ int FMPPayDialog::getPayAmount() const
return amount;
}
void FMPPayDialog::confirmRefund()
{
_isConfirmRefund = true;
onBtnConfirmClicked();
}
void FMPPayDialog::show()
{
......@@ -422,6 +430,7 @@ void FMPPayDialog::setRefundSuccessView(QJsonObject json)
PlayAnimation(findChild<QWidget *>(_curt_btn->property("pageName").toString()), ui->wdg_success_main, RightToLeft);
ui->btn_success_confirm->setFocus();
_wnd_close_timer->start(1000);
}
void FMPPayDialog::setPayView()
......@@ -613,23 +622,26 @@ void FMPPayDialog::onBtnConfirmClicked()
_wait->setFocus();
}
if((ui->lineedit_num->text() == "" && ui->lineedit_num_refund->text() == "") ||
(ui->lineedit_num->text().toDouble() < 0.01 && ui->lineedit_num_refund->text().toDouble() < 0.01)||
(ui->lineedit_code->text() == "" && ui->lineedit_code_refund->text() == "") ||
(ui->lineedit_code->text().size() < 15 && ui->lineedit_code_refund->text().size() < 15)
)
{
// if (!_is_api) {
// ui->lineedit_num->clear();
// ui->lineedit_num_refund->clear();
// }
ui->lineedit_code->clear();
ui->lineedit_code_refund->clear();
_wait->SetContent(FMPPayWait::ERRORS, QString::fromLocal8Bit("金额或条码错误\n请重新输入"));
_wait->show();
_current_LineEdit->setFocus();
return;
if(_isConfirmRefund) {
_isConfirmRefund = false;
} else {
if((ui->lineedit_num->text() == "" && ui->lineedit_num_refund->text() == "") ||
(ui->lineedit_num->text().toDouble() < 0.01 && ui->lineedit_num_refund->text().toDouble() < 0.01)||
(ui->lineedit_code->text() == "" && ui->lineedit_code_refund->text() == "") ||
(ui->lineedit_code->text().size() < 15 && ui->lineedit_code_refund->text().size() < 15)
)
{
// if (!_is_api) {
// ui->lineedit_num->clear();
// ui->lineedit_num_refund->clear();
// }
ui->lineedit_code->clear();
ui->lineedit_code_refund->clear();
_wait->SetContent(FMPPayWait::ERRORS, QString::fromLocal8Bit("金额或条码错误\n请重新输入"));
_wait->show();
_current_LineEdit->setFocus();
return;
}
}
......
......@@ -42,6 +42,8 @@ public:
int getPayAmount() const;
void confirmRefund();
public slots:
void showErrorMsg(QString errormsg);
......@@ -128,6 +130,7 @@ private:
QPoint _mMovePosition;
QTimer *_wnd_close_timer;
int _seconds;
bool _isConfirmRefund;
};
#endif // DIALOG_H
......@@ -5,7 +5,7 @@
#define VER_MINOR 1
#define VER_REVISION 0
#define VER_BUILD 25
#define VER_BUILD 27
//! Convert version numbers to string
#define _STR(S) #S
......
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