| | |
| | | use app\common\enum\order\OrderSourceEnum; |
| | | use app\common\enum\order\OrderTypeEnum; |
| | | use app\common\model\settings\Setting as SettingModel; |
| | | use app\api\service\points\PointsDeductService; |
| | | use app\api\service\points\ConsumptionDeductService; |
| | | use app\api\model\store\Store as StoreModel; |
| | | use app\api\service\user\UserService; |
| | | use app\common\enum\settings\DeliveryTypeEnum; |
| | |
| | | $delivery = $deliveryType[0]; |
| | | } |
| | | |
| | | $this->orderData['delivery'] = $supplier['productList'][0]['is_virtual'] == 1 || $supplier['productList'][0]['is_virtual'] == 2 ? 30 : $delivery; |
| | | $this->orderData['delivery'] = $supplier['productList'][0]['is_virtual'] == 1 || $supplier['productList'][0]['is_virtual'] == 2 || $supplier['productList'][0]['is_virtual'] == 3 ? 30 : $delivery; |
| | | }else{ |
| | | if($supplier['productList'][0]['is_virtual'] == 1 || $supplier['productList'][0]['is_virtual'] == 2){ |
| | | if($supplier['productList'][0]['is_virtual'] == 1 || $supplier['productList'][0]['is_virtual'] == 2 || $supplier['productList'][0]['is_virtual'] == 3){ |
| | | $this->orderData['delivery'] = 30; |
| | | }else { |
| | | $this->orderData['delivery'] = $this->params['supplier'][$supplier['shop_supplier_id']]['delivery']; |
| | |
| | | 'points_money' => $totalPointsMoney, |
| | | 'points_num' => $totalPoints, |
| | | 'is_real_use_points' => $this->params['is_use_points'], |
| | | 'is_real_use_consumption' => $this->params['is_use_consumption'], |
| | | 'product_reduce_money' => $totalProductReduce, |
| | | 'verify_data' => $verify_data, |
| | | 'booking_data' => $booking_data, |
| | |
| | | 'is_allow_points' => true, |
| | | // 是否使用积分抵扣 |
| | | 'is_use_points' => $this->params['is_use_points'], |
| | | // 是否允许使用消费抵扣 |
| | | 'is_allow_consumption' => true, |
| | | // 是否使用消费券抵扣 |
| | | 'is_use_consumption' => $this->params['is_use_consumption'], |
| | | // 是否使用计次卡 |
| | | 'counting_id' => isset($this->params['counting_id']) ? $this->params['counting_id'] : '', |
| | | // 支付方式 |
| | |
| | | } |
| | | } |
| | | |
| | | if(!empty($productList) && $productList[0]['is_virtual'] == 1){ |
| | | if(!empty($productList) && ($productList[0]['is_virtual'] == 1 || $productList[0]['is_virtual'] == 3)){ |
| | | //虚拟商品核销 by yj |
| | | $verify_data = [ |
| | | 'is_verify' => $productList[0]['is_verify'] && empty($productList[0]['virtual_auto']) ? 1 : 0, //必须是手动发货并且支持核销 |
| | |
| | | 'extract_store' => [], |
| | | // 是否允许使用积分抵扣 |
| | | 'is_allow_points' => false, |
| | | // 是否允许使用消费券抵扣 |
| | | 'is_allow_consumption' => false, |
| | | // 是否使用积分抵扣 |
| | | 'is_use_points' => $this->params['is_use_points'], |
| | | // 支付方式 |
| | |
| | | if ($commomOrder['is_allow_points'] && $commomOrder['is_real_use_points'] && $commomOrder['points_num'] > 0) { |
| | | $describe = "用户消费:{$this->model['order_no']}"; |
| | | $this->user->setIncPoints(-$commomOrder['points_num'], $describe,0,true,$status); |
| | | } |
| | | if ($commomOrder['is_allow_consumption'] && $commomOrder['is_real_use_consumption'] && $commomOrder['consumption_num'] > 0) { |
| | | $describe = "用户消费:{$this->model['order_no']}"; |
| | | $this->user->setIncConsumption(-$commomOrder['consumptions_num'], $describe,0,true,$status); |
| | | } |
| | | } |
| | | return $status; |
| | |
| | | return false; |
| | | } |
| | | // 计算订单商品实际抵扣的积分数量和金额 |
| | | $ProductDeduct = new PointsDeductService($productList); |
| | | $ProductDeduct = new ConsumptionDeductService($productList); |
| | | $ProductDeduct->setProductPoints($maxPointsNumCount, $actualPointsNum); |
| | | // 积分抵扣总金额 |
| | | $orderPointsMoney = helper::getArrayColumnSum($productList, 'points_money'); |