|
|
|
|
/**
|
|
|
|
|
* 外卖计算餐盒费
|
|
|
|
|
*/
|
|
|
|
|
var getBoxFee = function(order) {
|
|
|
|
|
var boxFee = 0.0;
|
|
|
|
|
if (order) {
|
|
|
|
|
for (var key in order.dishes) {
|
|
|
|
|
var dish = order.dishes[key];
|
|
|
|
|
if (!dish.isSuit) { // 非套餐模式计算餐盒费
|
|
|
|
|
if (dish.boxPrice) {
|
|
|
|
|
boxFee = parseFloat(boxFee + dish.boxPrice * dish.num);
|
|
|
|
|
}
|
|
|
|
|
} else { // 套餐模式计算餐盒费
|
|
|
|
|
console.log(dish);
|
|
|
|
|
var specs = dish.specs;
|
|
|
|
|
for (var ckey in specs) {
|
|
|
|
|
var cValues = specs[ckey];
|
|
|
|
|
var suitDetails = cValues.suitDetails;
|
|
|
|
|
for (var i = 0; i < suitDetails.length; i++) {
|
|
|
|
|
var tDetail = suitDetails[i];
|
|
|
|
|
if (tDetail.boxPrice) {
|
|
|
|
|
boxFee = parseFloat(boxFee + dish.boxPrice * dish.num);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return boxFee.toFixed(2);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 外卖计算配送费
|
|
|
|
|
*/
|
|
|
|
|
var getDeliverFee = function(store) {
|
|
|
|
|
var deliverFee = 0.0;
|
|
|
|
|
if (store) {
|
|
|
|
|
if (store.deliverFee) {
|
|
|
|
|
deliverFee = store.deliverFee;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return deliverFee.toFixed(2);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 订单封装增加餐盒费+配送费
|
|
|
|
|
*/
|
|
|
|
|
var getTotal = function(order) {
|
|
|
|
|
var total = 0.0;
|
|
|
|
|
var memberAmount = 0.0;
|
|
|
|
|
for (var key in order.dishes) {
|
|
|
|
|
var dish = order.dishes[key];
|
|
|
|
|
total = total + dish.amount;
|
|
|
|
|
console.log("订单总金额:", dish);
|
|
|
|
|
memberAmount = memberAmount + dish.memberAmount;
|
|
|
|
|
}
|
|
|
|
|
console.log("订单总金额:", total);
|
|
|
|
|
if (order.busMode == 1) { // 外带
|
|
|
|
|
total = total + parseFloat(order.boxFee);
|
|
|
|
|
memberAmount = memberAmount + parseFloat(order.boxFee);
|
|
|
|
|
} else if (order.busMode == 2) { // 外卖
|
|
|
|
|
total = total + parseFloat(order.boxFee) + parseFloat(order.distributionFee);
|
|
|
|
|
memberAmount = memberAmount + parseFloat(order.boxFee) + parseFloat(order.distributionFee);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
console.log("订单总金额:", total);
|
|
|
|
|
order.totalCash = parseFloat(total).toFixed(2);
|
|
|
|
|
order.totalMemberCash = parseFloat(memberAmount).toFixed(2);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 规则
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
var getDefaultOrderTicket = function() {
|
|
|
|
|
var orderTicket = {};
|
|
|
|
|
orderTicket.sumCount = 0;
|
|
|
|
|
orderTicket.sumMoney = 0;
|
|
|
|
|
orderTicket.storeName = "";
|
|
|
|
|
orderTicket.storeId = "";
|
|
|
|
|
orderTicket.storeNo = "";
|
|
|
|
|
orderTicket.people = 1;
|
|
|
|
|
orderTicket.ext2 = "";
|
|
|
|
|
orderTicket.discount = 0;
|
|
|
|
|
orderTicket.openId = wx.getStorageSync("openId");
|
|
|
|
|
orderTicket.orderList = [];
|
|
|
|
|
return orderTicket;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
module.exports = {
|
|
|
|
|
getBoxFee: getBoxFee,
|
|
|
|
|
getDeliverFee: getDeliverFee,
|
|
|
|
|
getTotal: getTotal,
|
|
|
|
|
getDefaultOrderTicket: getDefaultOrderTicket
|
|
|
|
|
}
|