where('resident_id', $request->user()->id) ->orderByDesc('created_at') ->get(); return $this->ok($orders); } public function store(Request $request): JsonResponse { $request->validate([ 'store_id' => 'required|exists:partner_stores,uuid', ]); $partnerStore = PartnerStore::where('uuid', $request->store_id)->firstOrFail(); // Enforce LGU constraint: Resident and Store must belong to the same tenant if ($partnerStore->tenant_id !== $request->user()->tenant_id) { return $this->fail('The selected store does not belong to your LGU.', null, 403); } $order = QrPurchaseOrder::create([ 'resident_id' => $request->user()->id, 'store_id' => $partnerStore->owner_user_id, 'tenant_id' => $request->user()->tenant_id, 'amount' => config('qr.default_retail_price_per_code_centavos', 1000) / 100.0, ]); return $this->created($order->load('store.storePartnerProfile'), 'QR Reservation created successfully'); } }