get(); if (empty($result)) { return Result::error("没有菜单",0,[]); } $result = $result->toArray(); foreach ($result as $key=>$val){ $result[$key]['icon'] = isset($val['icon']) && $val['icon']?PublicData::getImageUrl($val['icon']):''; $result[$key]['selected_icon'] = isset($val['selected_icon']) && $val['selected_icon']?PublicData::getImageUrl($val['selected_icon']):''; } return Result::success($result); } /** * @param array $data * @return array */ public function getMenuInfo(array $data): array { $result = Menu::where(['id'=>$data['id']])->first(); if (empty($result)) { return Result::error("没有菜单",0,[]); } $result = $result->toArray(); $result['icon'] = isset($result['icon']) && $result['icon']?PublicData::getImageUrl($result['icon']):''; $result['selected_icon'] = isset($result['selected_icon']) && $result['selected_icon']?PublicData::getImageUrl($result['selected_icon']):''; return Result::success($result); } /** * @param array $data * @return array */ public function updateMenu(array $data): array { $where = [ 'id'=>$data['id'] ]; unset($data['id']); $data['icon'] = isset($data['icon']) && $data['icon']?PublicData::saveImageUrl($data['icon']):''; $data['selected_icon'] = isset($data['selected_icon']) && $data['selected_icon']?PublicData::saveImageUrl($data['selected_icon']):''; $result = Menu::where($where)->update($data); if($result){ return Result::success($data); }else{ return Result::error($data); } } /** * @param array $data * @return array */ public function delMenu(array $data): array { $result = Menu::where(['id'=>$data['id']])->delete(); if($result){ return Result::success($data); }else{ return Result::error($data); } } /** * @param array $data * @return array */ public function addMenu(array $data): array { $data['icon'] = isset($data['icon']) && $data['icon']?PublicData::saveImageUrl($data['icon']):''; $data['selected_icon'] = isset($data['selected_icon']) && $data['selected_icon']?PublicData::saveImageUrl($data['selected_icon']):''; $result = Menu::insertGetId($data); if($result){ return Result::success($data); }else{ return Result::error($data); } } /** * @param array $data * @return array */ public function getRecursionMenu(array $data): array { //根据角色查询权限信息 $roleWhere = [ 'role_user.user_id'=>$data['user_id'] ]; $roleInfo = RoleUser::where($roleWhere) ->leftJoin('role', 'role.id', '=', 'role_user.role_id') ->first(); if(empty($roleInfo)){ return Result::error("没有权限",0); } $roleArr = json_decode($roleInfo['rule']); $result = Menu::whereIn('id',$roleArr)->get(); if (empty($result)) { return Result::error("没有菜单",0,[]); } $result = $result->toArray(); foreach ($result as $key=>$val){ $result[$key]['icon'] = isset($val['icon']) && $val['icon']?PublicData::getImageUrl($val['icon']):''; $result[$key]['selected_icon'] = isset($val['selected_icon']) && $val['selected_icon']?PublicData::getImageUrl($val['selected_icon']):''; } return Result::success($result); } /** * 获取所有的权限 * @param array $data * @return array */ public function getAllMenuList(array $data): array { $result = Menu::get(); if($result){ return Result::success($result); }else{ return Result::error("没有权限",0,[]); } } }