前端+后端:完整接入订单确认的优惠劵计算

This commit is contained in:
YunaiV
2019-04-20 01:22:39 +08:00
parent cb07eb3f71
commit bc2bf52039
8 changed files with 42 additions and 16 deletions

View File

@@ -35,13 +35,14 @@ export function confirmReceiving(orderId) {
});
}
export function getOrderConfirmCreateOrder(skuId, quantity) {
export function getOrderConfirmCreateOrder(skuId, quantity, couponCardId) {
return request({
url: '/order-api/users/order/confirm_create_order',
method: 'get',
params: {
skuId,
quantity,
couponCardId,
}
});
}
@@ -109,13 +110,12 @@ export function updateCartSelected(skuIds, selected) {
});
}
export function getCartConfirmCreateOrder(skuId, quantity) {
export function getCartConfirmCreateOrder(couponCardId) {
return request({
url: '/order-api/users/cart/confirm_create_order',
method: 'get',
params: {
skuId,
quantity,
couponCardId
}
});
}

View File

@@ -125,6 +125,21 @@
},
methods: {
onCouponChange(index) {
// debugger;
let couponCardId = this.coupons[index].id;
if (this.from === 'direct_order') {
getOrderConfirmCreateOrder(this.skuId, this.quantity, couponCardId).then(data => {
// this.itemGroups = data.itemGroups;
this.fee = data.fee;
this.coupons[index].value = data.couponCardDiscountTotal; // 修改优惠劵减免的金额
})
} else if (this.from === 'cart') {
getCartConfirmCreateOrder(couponCardId).then(data => {
// this.itemGroups = data.itemGroups;
this.fee = data.fee;
this.coupons[index].value = data.couponCardDiscountTotal; // 修改优惠劵减免的金额
})
}
this.chosenCoupon = index;
this.showCouponPopup = false;
},
@@ -205,7 +220,7 @@
endAt: card.validEndTime / 1000,
// description: '述信息,优惠券可用时展示',
reason: card.unavailableReason,
value: 0, // TODO ,需要服务端算
value: 0,
valueDesc: card.preferentialType === 1 ? card.priceOff / 100 : card.percentOff / 10.0,
unitDesc: card.preferentialType === 1 ? '元' : '折'
})
@@ -228,6 +243,12 @@
this.itemGroups = data.itemGroups;
this.fee = data.fee;
// 获得优惠劵列表
this.coupons = this.convertCouponList(data.couponCards.filter(function (element) {
return element.available;
}));
this.disabledCoupons = this.convertCouponList(data.couponCards.filter(function (element) {
return !element.available;
}));
})
} else if (this.from === 'cart') {
getCartConfirmCreateOrder().then(data => {