Edit File: MenuService.php
<?php namespace App\Services\Store; use App\Models\Store; use App\Models\StoreMenuCategory; use Auth; class MenuService { public function get_menus() { $user = Auth::user(); $store = Store::where('user_id', $user->id) ->first(); $menus = StoreMenuCategory::where('store_id', $store->id)->get(); return $menus; } public function postMenu(array $data) { $store = Auth::user()->store; $menu = new StoreMenuCategory(); $menu->name = [ 'ar' => $data['name_ar'], 'en' => $data['name_en'], ]; $menu->store_id = $store->id; $menu->image = $data['image']; $menu->save(); $store->updateCacheWithProducts(); return $menu; } public function get_edit_menu($id) { $user = Auth::user(); $store = Store::where('user_id', $user->id) ->first(); $menu = StoreMenuCategory::find($id); return $menu; } public function postEditMenu($id) { $store = Auth::user()->store; $menu = StoreMenuCategory::find($id); $menu->available == 'true' ? $available = 'true' : $available = 'false'; $menu->update(['available' => $available]); $store->updateCacheWithProducts(); return $menu->refresh(); } public function deleteMenu($id) { $menu = StoreMenuCategory::find($id); if ($menu->products()->count() > 0) { $msg = trans('stores_dashboard.can_not_delete_menu_have_products'); return ['failMsg' => $msg]; } $menu->delete(); $msg = trans('auth.deleted_success'); $store = Store::find($menu->store_id); $store->updateCacheWithProducts(); return $msg; } }
Back to File Manager