master
yixian 7 years ago
parent da0a77d339
commit ad33e29b3d

@ -1,75 +1,6 @@
/** /**
* Created by yixian on 2017-05-08 * Created by yixian on 2017-05-08
*/ */
function CashCoupon(id, minPay, cash, title, autoUse, group) {
this.getGroup = function () {
return group;
};
this.handleDiscount = function (price, originPrice, discounts, useCoupons) {
if (autoUse || useCoupons.indexOf(id) >= 0) {
var rate = 1;
if (window.currency == 'CNY') {
rate = parseFloat(window.exchange_rate);
}
var comparePrice = Decimal.mul(originPrice, rate).toFixed(2, Decimal.ROUND_FLOOR);
if (new Decimal(comparePrice).gte(Decimal.mul(minPay, rate).toFixed(2, Decimal.ROUND_FLOOR))) {
var nPrice = Decimal.sub(price, Decimal.mul(cash, rate).toFixed(2, Decimal.ROUND_FLOOR)).toFixed(2, Decimal.ROUND_FLOOR);
discounts.push({title: '满减', amount: Decimal.sub(price, nPrice).toFixed(2, Decimal.ROUND_FLOOR)});
return nPrice;
}
}
return new Decimal(price).toFixed(2, Decimal.ROUND_FLOOR);
}
}
function DiscountCoupon(id, minPay, percentage, title, autoUse, group) {
this.getGroup = function () {
return group;
};
this.handleDiscount = function (price, originPrice, discounts, useCoupons) {
if (autoUse || useCoupons.indexOf(id) >= 0) {
var rate = 1;
if (window.currency == 'CNY') {
rate = parseFloat(window.exchange_rate);
}
var comparePrice = Decimal.mul(originPrice, rate).toFixed(2, Decimal.ROUND_FLOOR);
if (new Decimal(comparePrice).gte(new Decimal(minPay))) {
var nPrice = Decimal.mul(price, percentage).mul(0.01).toFixed(2, Decimal.ROUND_FLOOR);
discounts.push({title: '折扣', amount: Decimal.sub(price, nPrice).toFixed(2, Decimal.ROUND_FLOOR)});
return nPrice;
}
}
return new Decimal(price).toFixed(2, Decimal.ROUND_FLOOR);
}
}
function BalanceCoupon(id, minPay, balance, title, autoUse, group) {
this.getGroup = function () {
return group;
};
this.handleDiscount = function (price, originPrice, discounts, useCoupons) {
if (autoUse || useCoupons.indexOf(id) >= 0) {
var rate = 1;
if (window.currency == 'CNY') {
rate = parseFloat(window.exchange_rate);
}
var comparePrice = Decimal.mul(originPrice, rate).toFixed(2, Decimal.ROUND_FLOOR);
if (new Decimal(comparePrice).gte(new Decimal(minPay))) {
var result = Decimal.sub(price, Decimal.mul(balance, rate));
var nPrice = Decimal.max(result, 0).toFixed(2, Decimal.ROUND_FLOOR);
var discountAmount = Decimal.sub(price, nPrice).toFixed(2, Decimal.ROUND_FLOOR);
if (discountAmount > 0) {
discounts.push({title: '抵扣', amount: discountAmount});
}
return nPrice;
}
}
return new Decimal(price).toFixed(2, Decimal.ROUND_FLOOR);
}
}
window.coupons = [];
$(function () { $(function () {
'use strict'; 'use strict';
var dataCache = {price: '0', coupons: [], coupon_groups: {}}; var dataCache = {price: '0', coupons: [], coupon_groups: {}};
@ -227,7 +158,7 @@ $(function () {
return; return;
} }
dataCache.paying = true; dataCache.paying = true;
var data = {amount: dataCache.price + '', original_number: true, currency: window.currency,device_id: window.cashier_phone}; var data = {price: dataCache.price + '', original_number: true, currency: window.currency,device_id: window.cashier_phone};
if (dataCache.remark) { if (dataCache.remark) {
data.description = dataCache.remark; data.description = dataCache.remark;
}else { }else {

Loading…
Cancel
Save