FranchiseeAccountReceiveController.php 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Http\Resources\FranchiseeAccountReceiveResource;
  4. use App\Models\FranchiseeAccountReceive;
  5. use Illuminate\Http\JsonResponse;
  6. use Illuminate\Http\Request;
  7. class FranchiseeAccountReceiveController extends Controller
  8. {
  9. /**
  10. * Lista, na visão consolidada do Franqueador, os títulos a receber das
  11. * franquias (TBR gerada). É o mesmo registro que, do lado da franquia,
  12. * representa o "contas a pagar".
  13. */
  14. public function index(Request $request): JsonResponse
  15. {
  16. $query = FranchiseeAccountReceive::with(['unit', 'details'])
  17. ->orderByDesc('due_date')
  18. ->orderByDesc('id');
  19. if ($request->filled('status')) {
  20. $query->where('status', $request->query('status'));
  21. }
  22. if ($request->filled('unit_id')) {
  23. $query->where('unit_id', $request->query('unit_id'));
  24. }
  25. return $this->successResponse(
  26. payload: FranchiseeAccountReceiveResource::collection($query->get()),
  27. );
  28. }
  29. }