success($data); } /** * 收银台用户充值 * @param Request $request * @param UserServices $userServices * @param UserRechargeServices $userRechargeServices * @return mixed * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\ModelNotFoundException */ public function recharge(Request $request, UserServices $userServices, UserRechargeServices $userRechargeServices) { [$uid, $price, $recharId, $payType, $authCode] = $request->postMore([ ['uid', 0], ['price', 0], ['rechar_id', 0], [['pay_type', 'd'], 2], //2=用户扫码支付,3=付款码扫码支付 ['auth_code', ''] ], true); if (!$authCode && $payType == 3) { return $this->fail('缺少付款码二维码CODE'); } if (!$price || $price <= 0) { return $this->fail('充值金额不能为0元!'); } $storeMinRecharge = sys_config('store_user_min_recharge'); if ($price < $storeMinRecharge) return $this->fail('充值金额不能低于' . $storeMinRecharge); if (!$userServices->userExist($uid)) { return $this->fail('用户不存在'); } $re = $userRechargeServices->recharge($uid, $price, $recharId, (int)$payType, 'store', $this->cashierInfo, $authCode); if ($re) { $msg = $re['msg']; unset($re['msg']); return $this->success($msg, $re); } return $this->fail('充值失败'); } }