<?php namespace App\Http\Controllers; use App\StoreDevice; use Illuminate\Http\Request; class StoreDeviceController extends Controller { public function receiveNotification(Request $request) { $this->validate($request, [ 'firebase_token' => 'required', 'device_name' => 'required' ]); $device = StoreDevice::query() // ->join('stores', 'stores.id', '=', 'store_devices.store_id') ->where('store_devices.store_id', $request->user()->id) ->where('device_name', $request->device_name) ->where('store_devices.firebase_token', $request->firebase_token) ->select('store_devices.*') ->first(); if ($device) { if ($device->status == 0) { $device->update(['status' => true]); return response()->json([], 200); } if ($device->status == 1) { $device->update(['status' => false]); return response()->json([], 200); } } else { StoreDevice::create([ 'device_name' => $request->device_name, 'firebase_token' => $request->firebase_token, 'status' => true, 'store_id' => $request->user()->id ]); return response()->json(['message' => 'Dispositivo adicionado com Sucesso'], 201); } } }