| | |
| | | |
| | | namespace app\api\service\order\paysuccess\type; |
| | | |
| | | use app\api\model\user\User as UserModel; |
| | | use app\common\enum\order\OrderPayTypeEnum; |
| | | use app\common\enum\user\balanceLog\BalanceLogSceneEnum; |
| | | use app\common\model\user\BalanceLog as BalanceLogModel; |
| | | use app\common\service\BaseService; |
| | | use app\common\model\supplier\member\Order as MemberOrderModel; |
| | | use app\common\service\supplier\MemberService; |
| | |
| | | { |
| | | // 订单模型 |
| | | public $model; |
| | | // 当前用户信息 |
| | | private $user; |
| | | |
| | | /** |
| | | * 构造函数 |
| | |
| | | { |
| | | // 实例化订单模型 |
| | | $this->model = MemberOrderModel::getPayDetail($orderNo); |
| | | // 获取用户信息 |
| | | $this->user = UserModel::detail($this->model['user_id']); |
| | | } |
| | | |
| | | /** |
| | |
| | | if (!$status) { |
| | | return false; |
| | | } |
| | | |
| | | // 激活年卡 |
| | | $memberService = new MemberService(); |
| | | $result = $memberService->activateMember($this->model['order_id']); |
| | | |
| | | if (!$result) { |
| | | $this->error = '激活年卡失败'; |
| | | return false; |
| | |
| | | 'pay_type' => $payType, |
| | | 'pay_time' => time(), |
| | | ]; |
| | | |
| | | // 余额支付 |
| | | if ($this->model['price'] > 0) { |
| | | // 更新用户余额 |
| | | (new UserModel())->where('user_id', '=', $this->user['user_id']) |
| | | ->dec('balance', $this->model['price']) |
| | | ->update(); |
| | | // 余额日志 |
| | | BalanceLogModel::add(BalanceLogSceneEnum::CONSUME, [ |
| | | 'user_id' => $this->user['user_id'], |
| | | 'money' => -$this->model['price'], |
| | | ], ['描述' => '支付年卡']); |
| | | } |
| | | if ($payType == OrderPayTypeEnum::WECHAT || $payType == OrderPayTypeEnum::ALIPAY) { |
| | | $order['transaction_id'] = $payData['transaction_id']; |
| | | } |
| | | |
| | | return $this->model->save($order); |
| | | } |
| | | /** |
| | | * 返回shop_supplier_id |
| | | * $pay_status 兼容支付宝支付 |
| | | */ |
| | | public function isExistSupplier() |
| | | { |
| | | return 0; |
| | | } |
| | | } |