Local.php 949 B

12345678910111213141516171819202122232425262728293031323334
  1. <?php
  2. namespace App\Http\Controllers\Gateway;
  3. use App\Components\Helpers;
  4. use App\Models\Goods;
  5. use App\Models\Order;
  6. use App\Models\User;
  7. use Auth;
  8. use Illuminate\Http\JsonResponse;
  9. use Response;
  10. class Local extends AbstractPayment {
  11. public function purchase($request): JsonResponse {
  12. $amount = $request->input('amount');
  13. $order = Order::find($request->input('oid'));
  14. $goods = Goods::query()->whereStatus(1)->whereId($request->input('goods_id'))->first();
  15. $user = Auth::getUser();
  16. if($user && $goods){
  17. User::query()->whereId($user->id)->decrement('credit', $amount * 100);
  18. // 记录余额操作日志
  19. Helpers::addUserCreditLog($user->id, $order->oid, $user->credit, $user->credit - $amount, -1 * $amount,
  20. '购买商品:'.$goods->name);
  21. }
  22. $this->postPayment($order->oid, '余额');
  23. return Response::json(['status' => 'success', 'message' => '购买完成!']);
  24. }
  25. public function notify($request): void { }
  26. }