Files
freeu-project/app/Http/Controllers/Admin/PrincipalGroupsController.php
Ritikesh yadav c661166e1d first commit
2024-03-28 14:52:40 +05:30

104 lines
3.8 KiB
PHP

<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use App\Models\Admin\UserGroup;
use App\Models\User;
use Illuminate\Http\Request;
use App\Models\Admin\PrincipalGroupsLink;
class PrincipalGroupsController extends Controller
{
public function index()
{
$checkRole = User::with('manyRoles.roles')->where('id', \Auth::user()->id)->get();
$totalRolesAssigned = array();
foreach ($checkRole as $data) {
foreach ($data->manyRoles as $role) {
array_push($totalRolesAssigned, $role->roles->name);
}
}
// echo "<pre>";
// print_r($totalRolesAssigned);
// die;
$principalGroupLinks = PrincipalGroupsLink::has('users')->with('groups')->get();
// $principalGroupLinks = PrincipalGroupsLink::with('users')->get();
return view('Admin.principal_groups_link.index', compact('principalGroupLinks'));
}
public function create()
{
$principals = User::all();
$prinipalGroups = UserGroup::all();
return view('Admin.principal_groups_link.create', compact('principals', 'prinipalGroups'));
}
public function store(Request $request)
{
$validated = $request->validate([
'principal_xid' => ['required'],
'principal_group_xid' => ['required'],
]);
$addPrincipalGroupsLink = PrincipalGroupsLink::create([
'principal_xid' => $request->principal_xid,
'principal_group_xid' => $request->principal_group_xid,
]);
if($addPrincipalGroupsLink){
return response()->json(['status'=>200,'message'=>'Principal Group Link Added Successfully.']);
}else{
return response()->json(['status'=>200,'message'=>'Error Creating Principal Group Link.']);
}
// $request->session()->flash('message', 'Prinicpal Group Link Added successfully');
// return redirect()->route('admin.principal_groups_link')->with('success', 'Permission created successfully.');
}
public function edit(Request $request, $id)
{
$principalGroupLink = PrincipalGroupsLink::find($id);
$principals = User::all();
$prinipalGroups = UserGroup::all();
return view('Admin.principal_groups_link.edit', compact('principalGroupLink', 'principals', 'prinipalGroups'));
}
public function update(Request $request, $id)
{
// $data = PrincipalGroupsLink::find($id);
$request->validate([
'principal_xid' => ['required'],
'principal_group_xid' => ['required'],
]);
// $data->principal_xid = $request->input("principal_xid", $data->principal_xid);
// $data->principal_group_xid = $request->input("principal_group_xid", $data->principal_group_xid);
// $data->save();
$updatePrincipalGroupsLink = PrincipalGroupsLink::where('id',$id)->update([
'principal_xid' => $request->principal_xid,
'principal_group_xid' => $request->principal_group_xid,
]);
if($updatePrincipalGroupsLink){
return response()->json(['status'=>200,'message'=>'Principal Group Link Updated Successfully.']);
}else{
return response()->json(['status'=>400,'message'=>'Error Updating Principal Group Link.']);
}
// $request->session()->flash('message', 'Prinicpal Group Link updated successfully');
// return redirect()->route('admin.principal_groups_link')->with('success', ' Prinicpal Group Link updated successfully.');
}
public function delete(Request $request, $id)
{
$Project = PrincipalGroupsLink::where('id', $id)->delete();
$request->session()->flash('message', 'Prinicpal Group Link Deleted successfully');
return redirect()->back()->with(['success' => 'Prinicpal Group Link Deleted Successfully.']);
}
}