...
|
...
|
@@ -22,52 +22,59 @@ const payModel = require('../models/pay'); |
|
|
* @param bool $isAjax 是否是异步请求
|
|
|
* @return array 接口返回的数据
|
|
|
*/
|
|
|
exports.cartPay = (uid, cartType, orderInfo, limitProductCode, sku, skn, buyNumber, activityInfo) => {
|
|
|
exports.cartPay = (params) => {
|
|
|
let result = {};
|
|
|
let skuList = [];
|
|
|
let isLimitGoods = skn && sku && buyNumber; // 存在sku, skn 和buyNumber时为限购商品
|
|
|
let isLimitGoods = params.skn && params.sku && params.buyNumber; // 存在sku, skn 和buyNumber时为限购商品
|
|
|
let orderComputeAPI = null;
|
|
|
|
|
|
if (isLimitGoods) {
|
|
|
skuList.push({
|
|
|
type: 'limitcode',
|
|
|
limitproductcode: limitProductCode,
|
|
|
buy_number: buyNumber,
|
|
|
skn,
|
|
|
sku
|
|
|
limitproductcode: params.limitProductCode,
|
|
|
buy_number: params.buyNumber,
|
|
|
skn: params.skn,
|
|
|
sku: params.sku
|
|
|
});
|
|
|
|
|
|
result.isLimit = true;
|
|
|
}
|
|
|
|
|
|
// cookie保存的数据
|
|
|
if (orderInfo && !_.isEmpty(orderInfo)) {
|
|
|
orderInfo.paymentType = orderInfo.paymentType ? orderInfo.paymentType : '';
|
|
|
if (params.orderInfo && !_.isEmpty(params.orderInfo)) {
|
|
|
params.orderInfo.paymentType = params.orderInfo.paymentType ? params.orderInfo.paymentType : '';
|
|
|
orderComputeAPI = shoppingAPI.orderComputeAPI({
|
|
|
uid: uid,
|
|
|
cart_type: cartType,
|
|
|
delivery_way: orderInfo.deliveryId,
|
|
|
payment_type: orderInfo.paymentType,
|
|
|
coupon_code: orderInfo.couponCode,
|
|
|
use_yoho_coin: orderInfo.yohoCoin,
|
|
|
uid: params.uid,
|
|
|
cart_type: params.cartType,
|
|
|
delivery_way: params.orderInfo.deliveryId,
|
|
|
payment_type: params.orderInfo.paymentType,
|
|
|
coupon_code: params.orderInfo.couponCode,
|
|
|
use_yoho_coin: params.orderInfo.yohoCoin,
|
|
|
product_sku_list: skuList,
|
|
|
activityInfo: activityInfo
|
|
|
activityInfo: params.activityInfo
|
|
|
});
|
|
|
}
|
|
|
|
|
|
// 区分套餐量贩和普通商品
|
|
|
let cartPayAPI;
|
|
|
let cartPayAPIParams = {
|
|
|
uid: params.uid,
|
|
|
cart_type: params.cartType,
|
|
|
product_sku_list: skuList
|
|
|
};
|
|
|
|
|
|
if (activityInfo) {
|
|
|
cartPayAPI = shoppingAPI.cartPayAPI(uid, cartType, 0, skuList, activityInfo);
|
|
|
if (params.activityInfo) {
|
|
|
cartPayAPI = shoppingAPI.cartPayAPI(_.assign(cartPayAPIParams, {
|
|
|
activityInfo: params.activityInfo
|
|
|
}));
|
|
|
} else {
|
|
|
cartPayAPI = shoppingAPI.cartPayAPI(uid, cartType, 0, skuList);
|
|
|
cartPayAPI = shoppingAPI.cartPayAPI(cartPayAPIParams);
|
|
|
}
|
|
|
|
|
|
return Promise.all([
|
|
|
cartPayAPI, // 0. 订单数据
|
|
|
orderComputeAPI,
|
|
|
shoppingAPI.getValidCouponCount(uid) // 2. 有效优惠券
|
|
|
shoppingAPI.getValidCouponCount(params.uid) // 2. 有效优惠券
|
|
|
]).then(res => {
|
|
|
let pay = res[0];
|
|
|
let orderCompute = _.get(res[1], 'data', {});
|
...
|
...
|
@@ -89,10 +96,10 @@ exports.cartPay = (uid, cartType, orderInfo, limitProductCode, sku, skn, buyNumb |
|
|
|
|
|
result = Object.assign(
|
|
|
result,
|
|
|
paymentProcess.tranformPayment(pay.data, orderInfo, cartType, skuList, orderCompute),
|
|
|
paymentProcess.tranformPayment(pay.data, params.orderInfo, params.cartType, skuList, orderCompute),
|
|
|
|
|
|
{
|
|
|
coupon: paymentProcess.coupon(validCouponCount, orderInfo, orderCompute)
|
|
|
coupon: paymentProcess.coupon(validCouponCount, params.orderInfo, orderCompute)
|
|
|
}
|
|
|
);
|
|
|
|
...
|
...
|
@@ -348,12 +355,11 @@ exports.jitDetailData = (uid, cartType, skuList, orderCode, sessionKey, |
|
|
return paymentProcess.transformJit(_.get(result, 'data.package_list', []));
|
|
|
});
|
|
|
} else {
|
|
|
return shoppingAPI.cartPayAPI(
|
|
|
uid,
|
|
|
cartType,
|
|
|
0,
|
|
|
skuList
|
|
|
).then(result => {
|
|
|
return shoppingAPI.cartPayAPI({
|
|
|
uid: uid,
|
|
|
cart_type: cartType,
|
|
|
product_sku_list: skuList
|
|
|
}).then(result => {
|
|
|
return paymentProcess.transformJit(_.get(result, 'data.shopping_cart_data.package_list', []));
|
|
|
});
|
|
|
}
|
...
|
...
|
|