Commit 5d373f53 by gujin.wang

修改会员支付时,会员余额扣减的计算方式

parent 5d2afec4
...@@ -34,7 +34,7 @@ QByteArray TaskCoupon::doTask() ...@@ -34,7 +34,7 @@ QByteArray TaskCoupon::doTask()
p.price = applyProducts[i].toObject()["price"].toInt(); p.price = applyProducts[i].toObject()["price"].toInt();
p.coupon_discount_amount = applyProducts[i].toObject()["coupon_discount_amount"].toInt(); p.coupon_discount_amount = applyProducts[i].toObject()["coupon_discount_amount"].toInt();
p.pid = applyProducts[i].toObject()["pid"].toString(); p.pid = applyProducts[i].toObject()["pid"].toString();
p.consume_num = applyProducts[i].toObject()["consume_num"].toString().toDouble(); p.consume_num = applyProducts[i].toObject()["consume_num"].toInt();
c.applyProducts.push_back(p); c.applyProducts.push_back(p);
} }
c.code = couponOb["code"].toString(); c.code = couponOb["code"].toString();
...@@ -72,7 +72,7 @@ void TaskCoupon::packageServerReq() ...@@ -72,7 +72,7 @@ void TaskCoupon::packageServerReq()
for(int i = 0; i < clientArr.size(); i++) for(int i = 0; i < clientArr.size(); i++)
{ {
QJsonObject product; QJsonObject product;
product["consumeNum"] = clientArr[i].toObject()["consume_num"].toString().toDouble(); product["consumeNum"] = clientArr[i].toObject()["consume_num"].toInt();
product["price"] = clientArr[i].toObject()["price"]; product["price"] = clientArr[i].toObject()["price"];
product["productId"] = clientArr[i].toObject()["pid"]; product["productId"] = clientArr[i].toObject()["pid"];
products.append(product); products.append(product);
......
...@@ -45,7 +45,7 @@ void TaskFinal::packageServerReq() ...@@ -45,7 +45,7 @@ void TaskFinal::packageServerReq()
foreach(auto p , getPosJsonValue("products").toArray()) foreach(auto p , getPosJsonValue("products").toArray())
{ {
QJsonObject product; QJsonObject product;
product["consumeNum"] = p.toObject()["consume_num"].toString().toDouble(); product["consumeNum"] = p.toObject()["consume_num"].toInt();
product["price"] = p.toObject()["price"]; product["price"] = p.toObject()["price"];
product["productId"] = p.toObject()["pid"]; product["productId"] = p.toObject()["pid"];
......
...@@ -179,7 +179,7 @@ void TaskPay::packageServerReq() ...@@ -179,7 +179,7 @@ void TaskPay::packageServerReq()
{ {
QJsonObject obj = clientArray[i].toObject(); QJsonObject obj = clientArray[i].toObject();
QJsonObject serverObj; QJsonObject serverObj;
serverObj["consumeNum"] = obj["consume_num"].toString().toDouble(); serverObj["consumeNum"] = obj["consume_num"].toInt();
serverObj["price"] = obj["price"].toInt(); serverObj["price"] = obj["price"].toInt();
serverObj["productId"] = obj["pid"]; serverObj["productId"] = obj["pid"];
products.push_back(serverObj); products.push_back(serverObj);
...@@ -188,7 +188,7 @@ void TaskPay::packageServerReq() ...@@ -188,7 +188,7 @@ void TaskPay::packageServerReq()
QJsonArray payList; QJsonArray payList;
//余额支付详情 //余额支付详情
QJsonObject balance; QJsonObject balance;
balance["amount"] = session()->data("codeAmount").toDouble(); balance["amount"] = session()->data("codeAmount").toInt();
balance["transId"] = getPosJsonValue("trans_id"); balance["transId"] = getPosJsonValue("trans_id");
balance["typeModeFlag"] = 20001; balance["typeModeFlag"] = 20001;
balance["code"] = ""; balance["code"] = "";
......
...@@ -24,4 +24,4 @@ void FMCouponWidget::paintEvent(QPaintEvent *event) ...@@ -24,4 +24,4 @@ void FMCouponWidget::paintEvent(QPaintEvent *event)
opt.init(this); opt.init(this);
QPainter p(this); QPainter p(this);
style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
} }
\ No newline at end of file
...@@ -66,7 +66,8 @@ void FMVipOrder::initWnd(Session *se) ...@@ -66,7 +66,8 @@ void FMVipOrder::initWnd(Session *se)
void FMVipOrder::on_pay_btn_clicked() void FMVipOrder::on_pay_btn_clicked()
{ {
session()->addData("payCouponMap", orderInfo->selectCouponMap); session()->addData("payCouponMap", orderInfo->selectCouponMap);
int codeAmount = orderInfo->getPayAmount(ui->pay_edit->text()); //int codeAmount = orderInfo->getPayAmount(ui->pay_edit->text());
int codeAmount = ui->pay_edit->text().toDouble() * 100;
session()->addData("codeAmount", codeAmount); session()->addData("codeAmount", codeAmount);
session()->addData("isUseScore", orderInfo->isUseScore()); session()->addData("isUseScore", orderInfo->isUseScore());
...@@ -86,49 +87,68 @@ void FMVipOrder::on_pay_chk_clicked(bool checked) ...@@ -86,49 +87,68 @@ void FMVipOrder::on_pay_chk_clicked(bool checked)
void FMVipOrder::onItemClicked(QListWidgetItem *item) void FMVipOrder::onItemClicked(QListWidgetItem *item)
{ {
QString code = item->data(Qt::UserRole).toString(); QString code = item->data(Qt::UserRole).toString();
if(orderInfo->couponMap()[code].typeModeFlag == 20003) //代金券 // if(orderInfo->couponMap()[code].typeModeFlag == 20003) //代金券
// {
// // 如果代金券已被选中则取消,否则选中
// if(orderInfo->selectCouponMap.contains(code)) {
// ui->coupon_page->itemWidget(item)->setStyleSheet("#FMCouponWidget{background-color: rgb(255, 255, 255); border: none; border-left: 5 solid rgb(255, 170, 37);}");
// orderInfo->selectCouponMap.remove(code);
// orderInfo->enoughCoupon(); // 计算一下当前代金券金额
// }else{
// if(orderInfo->couponMap()[code].compatible_flag == 0)
// {
// FMMsgWnd::WarningWnd(QString::fromLocal8Bit("请注意该券不能与其他券叠加使用!"), this);
// return ;
// }
// ui->coupon_page->itemWidget(item)->setStyleSheet("#FMCouponWidget{background-color: rgb(255, 255, 255); border: none; border-image: url(:/coupon_select.png);}");
// orderInfo->selectCouponMap[code] = orderInfo->couponMap()[code];
// if(orderInfo->enoughCoupon())
// {
// FMMsgWnd::WarningWnd(QString::fromLocal8Bit("请注意代金券总额已超过待付金额!"), this);
// }
// }
// }
// else if(orderInfo->couponMap()[code].typeModeFlag == 20004) //商品券
// {
// if(orderInfo->selectCouponMap.contains(code))
// {
// ui->coupon_page->itemWidget(item)->setStyleSheet("#FMCouponWidget{background-color: rgb(255, 255, 255); border: none; border-left: 5 solid rgb(255, 170, 37);}");
// orderInfo->selectCouponMap.remove(code);
// orderInfo->enoughCoupon();
// }
// else
// {
// if(orderInfo->couponMap()[code].compatible_flag == 0)
// {
// FMMsgWnd::WarningWnd(QString::fromLocal8Bit("请注意该券不能与其他券叠加使用!"), this);
// return ;
// }
// ui->coupon_page->itemWidget(item)->setStyleSheet("#FMCouponWidget{background-color: rgb(255, 255, 255); border: none; border-image: url(:/coupon_select.png);}");
// orderInfo->selectCouponMap[code] = orderInfo->couponMap()[code];
// if(orderInfo->enoughCoupon())
// {
// FMMsgWnd::WarningWnd(QString::fromLocal8Bit("请注意代金券总额已超过待付金额!"), this);
// }
// }
// }
if(orderInfo->selectCouponMap.contains(code))
{ {
// 如果代金券已被选中则取消,否则选中 ui->coupon_page->itemWidget(item)->setStyleSheet("#FMCouponWidget{background-color: rgb(255, 255, 255); border: none; border-left: 5 solid rgb(255, 170, 37);}");
if(orderInfo->selectCouponMap.contains(code)) { orderInfo->selectCouponMap.remove(code);
ui->coupon_page->itemWidget(item)->setStyleSheet("#FMCouponWidget{background-color: rgb(255, 255, 255); border: none; border-left: 5 solid rgb(255, 170, 37);}"); orderInfo->enoughCoupon();
orderInfo->selectCouponMap.remove(code);
orderInfo->enoughCoupon(); // 计算一下当前代金券金额
}else{
if(orderInfo->couponMap()[code].compatible_flag == 0)
{
FMMsgWnd::WarningWnd(QString::fromLocal8Bit("请注意该券不能与其他券叠加使用!"), this);
return ;
}
ui->coupon_page->itemWidget(item)->setStyleSheet("#FMCouponWidget{background-color: rgb(255, 255, 255); border: none; border-image: url(:/coupon_select.png);}");
orderInfo->selectCouponMap[code] = orderInfo->couponMap()[code];
qDebug() << orderInfo->selectCouponMap[code].disAmount;
if(orderInfo->enoughCoupon())
{
FMMsgWnd::WarningWnd(QString::fromLocal8Bit("请注意代金券总额已超过待付金额!"), this);
}
}
} }
else if(orderInfo->couponMap()[code].typeModeFlag == 20004) //商品券 else
{ {
if(orderInfo->selectCouponMap.contains(code)) if(orderInfo->couponMap()[code].compatible_flag == 0)
{ {
ui->coupon_page->itemWidget(item)->setStyleSheet("#FMCouponWidget{background-color: rgb(255, 255, 255); border: none; border-left: 5 solid rgb(255, 170, 37);}"); FMMsgWnd::WarningWnd(QString::fromLocal8Bit("请注意该券不能与其他券叠加使用!"), this);
orderInfo->selectCouponMap.remove(code); return;
orderInfo->enoughCoupon();
} }
else ui->coupon_page->itemWidget(item)->setStyleSheet("#FMCouponWidget{background-color: rgb(255, 255, 255); border: none; border-image: url(:/coupon_select.png);}");
orderInfo->selectCouponMap[code] = orderInfo->couponMap()[code];
if(orderInfo->enoughCoupon())
{ {
if(orderInfo->couponMap()[code].compatible_flag == 0) FMMsgWnd::WarningWnd(QString::fromLocal8Bit("请注意代金券总额已超过待付金额!"), this);
{
FMMsgWnd::WarningWnd(QString::fromLocal8Bit("请注意该券不能与其他券叠加使用!"), this);
return ;
}
ui->coupon_page->itemWidget(item)->setStyleSheet("#FMCouponWidget{background-color: rgb(255, 255, 255); border: none; border-image: url(:/coupon_select.png);}");
orderInfo->selectCouponMap[code] = orderInfo->couponMap()[code];
if(orderInfo->enoughCoupon())
{
FMMsgWnd::WarningWnd(QString::fromLocal8Bit("请注意代金券总额已超过待付金额!"), this);
}
} }
} }
setWillPayText(); setWillPayText();
......
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