Commit 11222179 by NitefllWind

1.支付页面输入金额默认为待付,只能用户输入进行修改。增加显示积分可抵扣的金额。

parent 58466bdf
...@@ -185,30 +185,12 @@ void FMVipDispatcher::onServerResponsed(const QJsonObject &rspObj) ...@@ -185,30 +185,12 @@ void FMVipDispatcher::onServerResponsed(const QJsonObject &rspObj)
int status = rspObj["statusCode"].toInt(); int status = rspObj["statusCode"].toInt();
int prompt = rspObj["prompt"].toInt(); int prompt = rspObj["prompt"].toInt();
// if(status == 100) {
// if(isLastOne && prompt == 0) {
// FMMsgWnd msgWnd;
// msgWnd.show(FMMsgWnd::T_Success, "操作成功");
// QMessageBox msgBox(_vindow);
// msgBox.setWindowTitle("提示");
// msgBox.setText("操作成功");
// msgBox.setAttribute(Qt::WA_QuitOnClose, false);
// msgBox.exec();
// }
// }
if(status != 100) { if(status != 100) {
if(prompt == 0) if(prompt == 0)
{ {
QString msg = rspObj["msg"].toString(); QString msg = rspObj["msg"].toString();
FMMsgWnd msgWnd; FMMsgWnd msgWnd;
msgWnd.show(FMMsgWnd::T_Failure, msg); msgWnd.show(FMMsgWnd::T_Failure, msg);
// QMessageBox msgBox;
// msgBox.setWindowTitle("错误");
// msgBox.setText(msg);
// msgBox.setAttribute(Qt::WA_QuitOnClose, false);
// msgBox.exec();
} }
requestSuccess = false; requestSuccess = false;
_vindow = 0; _vindow = 0;
......
...@@ -193,7 +193,6 @@ void FMVipForward::pay(const QJsonObject &job, QJsonObject &fmjob) ...@@ -193,7 +193,6 @@ void FMVipForward::pay(const QJsonObject &job, QJsonObject &fmjob)
_sessionForward = job["forward"].toObject(); _sessionForward = job["forward"].toObject();
QJsonObject transObj; QJsonObject transObj;
// transObj["account"] = job["fm_open_id"];
transObj["account"] = sessionData("fm_open_id"); transObj["account"] = sessionData("fm_open_id");
transObj["codeAmount"] = sessionDataInt("codeAmount"); transObj["codeAmount"] = sessionDataInt("codeAmount");
transObj["isUseScore"] = sessionDataInt("isUseScore"); transObj["isUseScore"] = sessionDataInt("isUseScore");
......
...@@ -27,12 +27,16 @@ FMVipOrder::FMVipOrder(QDialog *parent) : ...@@ -27,12 +27,16 @@ FMVipOrder::FMVipOrder(QDialog *parent) :
ui->balance_label->setText(orderInfo->getAmountStr()); ui->balance_label->setText(orderInfo->getAmountStr());
ui->price_label->setText(orderInfo->getNeedPayStr()); ui->price_label->setText(orderInfo->getNeedPayStr());
ui->pay_chk->setText(QString("使用积分抵扣 %1 元").arg(orderInfo->getScoreAmount()));
if(standard_amount > 0) { if(standard_amount > 0) {
ui->standard_label->setText(QString("满%1元可享受储值金满额支付优惠").arg(standard_amount)); ui->standard_label->setText(QString("满 %1 元可享受储值金满额支付优惠").arg(standard_amount));
} }
ui->pay_edit->setText(orderInfo->getPayAmountStr()); ui->pay_edit->setText(orderInfo->getNeedPayStr());
ui->pay_edit->setFocus(); ui->pay_edit->setFocus();
ui->pay_edit->selectAll();
} }
FMVipOrder::~FMVipOrder() FMVipOrder::~FMVipOrder()
...@@ -57,7 +61,7 @@ void FMVipOrder::on_coupon_next_btn_clicked() ...@@ -57,7 +61,7 @@ void FMVipOrder::on_coupon_next_btn_clicked()
void FMVipOrder::on_pay_btn_clicked() void FMVipOrder::on_pay_btn_clicked()
{ {
qDebug() << __FUNCTION__; qDebug() << __FUNCTION__;
QString codeAmountStr = orderInfo->getTotalPayStr(); QString codeAmountStr = orderInfo->getPayAmountStr(ui->pay_edit->text());
FMVipForward::instance()->addSessionData("codeAmount", codeAmountStr); FMVipForward::instance()->addSessionData("codeAmount", codeAmountStr);
ui->pay_btn->setEnabled(false); ui->pay_btn->setEnabled(false);
...@@ -71,17 +75,6 @@ void FMVipOrder::on_pay_chk_clicked(bool checked) ...@@ -71,17 +75,6 @@ void FMVipOrder::on_pay_chk_clicked(bool checked)
{ {
qDebug() << __FUNCTION__ << checked; qDebug() << __FUNCTION__ << checked;
orderInfo->setIsUseScore(checked);
ui->pay_edit->setText(orderInfo->getPayAmountStr());
int is = checked ? 1 : 0; int is = checked ? 1 : 0;
FMVipForward::instance()->addSessionData("isUseScore", QString::number(is)); FMVipForward::instance()->addSessionData("isUseScore", QString::number(is));
} }
void FMVipOrder::on_pay_edit_textEdited(const QString &text)
{
orderInfo->setEditPayAmount(text);
// ui->pay_edit->setText(orderInfo->getPayAmountStr());
}
...@@ -24,9 +24,6 @@ public slots: ...@@ -24,9 +24,6 @@ public slots:
void on_pay_btn_clicked(); void on_pay_btn_clicked();
void on_pay_chk_clicked(bool checked); void on_pay_chk_clicked(bool checked);
private slots:
void on_pay_edit_textEdited(const QString &text);
private: private:
class OrderInfo class OrderInfo
{ {
...@@ -46,10 +43,6 @@ private: ...@@ -46,10 +43,6 @@ private:
_score = _scoreStr.toInt() / 100.0; _score = _scoreStr.toInt() / 100.0;
_needPay = _needPayStr.toInt() / 100.0; _needPay = _needPayStr.toInt() / 100.0;
isUseScore = false;
editPayAmount = MIN(_amount, _needPay);
setPays();
} }
QString getAmountStr() QString getAmountStr()
...@@ -62,65 +55,20 @@ private: ...@@ -62,65 +55,20 @@ private:
return DOUBLE_STR(_needPay); return DOUBLE_STR(_needPay);
} }
void setEditPayAmount(const QString amountText) QString getScoreAmount()
{
editPayAmount = amountText.toDouble();
setPays();
}
void setIsUseScore(bool isUse)
{ {
isUseScore = isUse; return DOUBLE_STR(_score);
setPays();
} }
void setPays() QString getPayAmountStr(QString amountStr)
{
if(isUseScore)
{ {
// 积分付只有两种情况 1.全部待付 2.全部积分 int payAmount = amountStr.toInt() * 100;
if(_score > _needPay) { return QString::number(payAmount);
pay_score = _needPay;
pay_amount = 0.0;
}else{
pay_score = _score;
double tempAmount = MIN((_needPay - pay_score), _amount);
pay_amount = MIN(tempAmount, editPayAmount);
}
}else{
pay_score = 0.0;
double tempAmount = MIN(_needPay, _amount);
pay_amount = MIN(tempAmount, editPayAmount);
}
}
double getPayAmount()
{
return pay_amount;
}
QString getPayAmountStr()
{
return DOUBLE_STR(pay_amount);
}
QString getTotalPayStr()
{
double totalPay = pay_amount + pay_score;
return QString::number((int)(totalPay*100));
} }
private: private:
QString _amountStr, _scoreStr, _needPayStr; QString _amountStr, _scoreStr, _needPayStr;
double _amount, _score, _needPay; double _amount, _score, _needPay;
// 三种支付方式支付金额
double pay_amount, pay_score, pay_discount;
double editPayAmount;
bool isUseScore;
}; };
private: private:
......
...@@ -74,8 +74,6 @@ int FMVipWnd::exec() ...@@ -74,8 +74,6 @@ int FMVipWnd::exec()
::AttachThreadInput(dwCurID,dwForeID,FALSE); ::AttachThreadInput(dwCurID,dwForeID,FALSE);
// this->setFocus();
return QDialog::exec(); return QDialog::exec();
} }
......
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