| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- <?php
- namespace App\Http\Controllers;
- use App\Services\UnitFinancialService;
- use App\Http\Requests\UnitFinancialRequest;
- use App\Http\Resources\UnitFinancialResource;
- use Illuminate\Http\JsonResponse;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\Auth;
- class UnitFinancialController extends Controller
- {
- public function __construct(
- protected UnitFinancialService $service,
- ) {}
- public function show(Request $request): JsonResponse
- {
- $item = $this->service->getByUnitId($request->integer('unit_id'));
- return $this->successResponse(payload: $item ? new UnitFinancialResource($item) : null);
- }
- //
- public function showMe(): JsonResponse
- {
- $unitId = Auth::user()?->load('units')->units->first()?->id;
- if (!$unitId) {
- return $this->errorResponse(message: 'Unidade não encontrada', code: 404);
- }
- $item = $this->service->getByUnitId($unitId);
- return $this->successResponse(payload: $item ? new UnitFinancialResource($item) : null);
- }
- public function upsert(UnitFinancialRequest $request): JsonResponse
- {
- $validated = $request->validated();
- $unitId = $validated['unit_id'];
- unset($validated['unit_id']);
- $item = $this->service->upsert($unitId, $validated);
- return $this->successResponse(payload: new UnitFinancialResource($item), message: __('messages.updated'));
- }
- }
|