ExtendOrderService.php 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. namespace App\Services\Client;
  3. use App\Models\Order;
  4. use App\Models\Project;
  5. use Exception;
  6. class ExtendOrderService
  7. {
  8. /**
  9. * 获取加钟项目列表
  10. */
  11. public function getProjectList($projectId)
  12. {
  13. // 查询项目
  14. $project = Project::findOrFail($projectId);
  15. // 查询加钟分类的项目列表
  16. $projects = Project::where('state', 'enable')
  17. ->where('type', 'extend')
  18. ->where('agent_id', $project->agent_id)
  19. ->with(['category:id,name'])
  20. ->orderBy('sort', 'desc')
  21. ->get();
  22. return $projects;
  23. }
  24. /**
  25. * 加钟
  26. */
  27. public function extend($orderId)
  28. {
  29. // 查询原订单
  30. $order = Order::where('id', $orderId)
  31. ->where('user_id', auth()->id())
  32. ->firstOrFail();
  33. // 创建加钟订单
  34. $orderService = app(OrderService::class);
  35. return $orderService->createOrder(
  36. $order->address_id,
  37. $order->coach_id,
  38. $order->project_id,
  39. $order->agent_id,
  40. $order->use_balance,
  41. $orderId
  42. );
  43. }
  44. }