Skip to content
This repository was archived by the owner on Oct 15, 2023. It is now read-only.

Commit 8021730

Browse files
basic crud
1 parent 9f35a85 commit 8021730

File tree

1,694 files changed

+130284
-25383
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,694 files changed

+130284
-25383
lines changed

.env.example

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
APP_NAME=Laravel
1+
APP_NAME="Laravel Architect Ui"
22
APP_ENV=local
33
APP_KEY=
44
APP_DEBUG=true

app/Helper/ResponseHelper.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
class ResponseHelper
66
{
7-
public static function success($data, $message = 'success')
7+
public static function success($data = [], $message = 'success')
88
{
99
return response()->json([
1010
'result' => 1,
@@ -13,7 +13,7 @@ public static function success($data, $message = 'success')
1313
]);
1414
}
1515

16-
public static function fail($data, $message = 'fail')
16+
public static function fail($data = [], $message = 'fail')
1717
{
1818
return response()->json([
1919
'result' => 0,
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
<?php
2+
3+
namespace App\Http\Controllers\Backend\Admin;
4+
5+
use Hash;
6+
use App\Helper\ResponseHelper;
7+
use Illuminate\Http\Request;
8+
use App\Http\Controllers\Controller;
9+
use Yajra\DataTables\DataTables;
10+
use App\Models\{Role, AdminUser};
11+
use App\Http\Requests\{StoreAdminUser, UpdateAdminUser};
12+
13+
class AdminUsersController extends Controller
14+
{
15+
/**
16+
* Display a listing of the resource.
17+
*
18+
* @return \Illuminate\Http\Response
19+
*/
20+
public function index(Request $request)
21+
{
22+
if($request->ajax()) {
23+
$admin_users = AdminUser::anyTrash($request->trash);
24+
25+
return DataTables::of($admin_users)
26+
->addColumn('roles', function ($admin_user) {
27+
return $admin_user->getRoleNames()->reduce(function($carry, $each) {
28+
return "${carry}<span class='badge badge-primary mr-1'>${each}</span>";
29+
});
30+
})
31+
->addColumn('action', function ($admin_user) use ($request) {
32+
$detail_btn = '';
33+
$restore_btn = '';
34+
$edit_btn = '<a class="edit text text-primary mr-2" href="' . route('admin.admin-users.edit', ['admin_user' => $admin_user->id]) . '"><i class="far fa-edit fa-lg"></i></a>';
35+
36+
if ($request->trash == 1) {
37+
$restore_btn = '<a class="restore text text-warning mr-2" href="#" data-id="' . $admin_user->id . '"><i class="fa fa-trash-restore fa-lg"></i></a>';
38+
$trash_or_delete_btn = '<a class="destroy text text-danger mr-2" href="#" data-id="' . $admin_user->id . '"><i class="fa fa-minus-circle fa-lg"></i></a>';
39+
} else {
40+
$trash_or_delete_btn = '<a class="trash text text-danger mr-2" href="#" data-id="' . $admin_user->id . '"><i class="fas fa-trash fa-lg"></i></a>';
41+
}
42+
43+
return "${detail_btn} ${edit_btn} ${restore_btn} ${trash_or_delete_btn}";
44+
})
45+
->addColumn('plus-icon', function () {
46+
return null;
47+
})
48+
->rawColumns(['roles', 'action', 'plus-icon'])
49+
->make(true);
50+
}
51+
52+
return view('backend.admin.admin_users.index');
53+
}
54+
55+
/**
56+
* Show the form for creating a new resource.
57+
*
58+
* @return \Illuminate\Http\Response
59+
*/
60+
public function create()
61+
{
62+
$roles = Role::where('guard_name', config('custom_guards.default.admin'))->get();
63+
return view('backend.admin.admin_users.create', compact('roles'));
64+
}
65+
66+
/**
67+
* Store a newly created resource in storage.
68+
*
69+
* @param \Illuminate\Http\Request $request
70+
* @return \Illuminate\Http\Response
71+
*/
72+
public function store(StoreAdminUser $request)
73+
{
74+
$created = AdminUser::create([
75+
'name' => $request->name,
76+
'email' => $request->email,
77+
'password' => Hash::make($request->password)
78+
]);
79+
$created->syncRoles($request->roles);
80+
81+
return redirect()->route('admin.admin-users.index')->with('success', 'New Admin User Successfully Created.');
82+
}
83+
84+
/**
85+
* Display the specified resource.
86+
*
87+
* @param int $id
88+
* @return \Illuminate\Http\Response
89+
*/
90+
public function show(AdminUser $admin_user)
91+
{
92+
return view('backend.admin.admin_users.show', compact('admin_user'));
93+
}
94+
95+
/**
96+
* Show the form for editing the specified resource.
97+
*
98+
* @param int $id
99+
* @return \Illuminate\Http\Response
100+
*/
101+
public function edit(AdminUser $admin_user)
102+
{
103+
$roles = Role::where('guard_name', config('custom_guards.default.admin'))->get();
104+
return view('backend.admin.admin_users.edit', compact('admin_user', 'roles'));
105+
}
106+
107+
/**
108+
* Update the specified resource in storage.
109+
*
110+
* @param \Illuminate\Http\Request $request
111+
* @param int $id
112+
* @return \Illuminate\Http\Response
113+
*/
114+
public function update(UpdateAdminUser $request, AdminUser $admin_user)
115+
{
116+
$admin_user->name = $request->name;
117+
$admin_user->email = $request->email;
118+
if(! empty($request->password)) {
119+
$admin_user->password = Hash::make($request->password);
120+
}
121+
$admin_user->save();
122+
$admin_user->syncRoles($request->roles);
123+
124+
return redirect()->route('admin.admin-users.index')->with('success', 'Successfully Updated.');
125+
}
126+
127+
/**
128+
* Remove the specified resource from storage.
129+
*
130+
* @param int $id
131+
* @return \Illuminate\Http\Response
132+
*/
133+
public function destroy(AdminUser $admin_user)
134+
{
135+
$admin_user->delete();
136+
return ResponseHelper::success();
137+
}
138+
139+
public function trash(AdminUser $admin_user)
140+
{
141+
$admin_user->trash();
142+
return ResponseHelper::success();
143+
}
144+
145+
public function restore(AdminUser $admin_user)
146+
{
147+
$admin_user->restore();
148+
return ResponseHelper::success();
149+
}
150+
}

app/Http/Controllers/Backend/Admin/Auth/LoginController.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public function logout(Request $request)
5656
{
5757
$this->guard()->logout();
5858

59-
// $request->session()->invalidate();
59+
$request->session()->invalidate();
6060

6161
return $this->loggedOut($request) ?: redirect($this->redirectTo);
6262
}
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
<?php
2+
3+
namespace App\Http\Controllers\Backend\Admin;
4+
5+
use Hash;
6+
use App\Helper\ResponseHelper;
7+
use Illuminate\Http\Request;
8+
use App\Http\Controllers\Controller;
9+
use Yajra\DataTables\DataTables;
10+
use App\Models\{Role, User as ClientUser};
11+
use App\Http\Requests\{StoreClientUser, UpdateClientUser};
12+
13+
class ClientUsersController extends Controller
14+
{
15+
/**
16+
* Display a listing of the resource.
17+
*
18+
* @return \Illuminate\Http\Response
19+
*/
20+
public function index(Request $request)
21+
{
22+
if ($request->ajax()) {
23+
$client_users = ClientUser::anyTrash($request->trash);
24+
25+
return DataTables::of($client_users)
26+
->addColumn('roles', function ($client_user) {
27+
return $client_user->getRoleNames()->reduce(function ($carry, $each) {
28+
return "${carry}<span class='badge badge-primary mr-1'>${each}</span>";
29+
});
30+
})
31+
->addColumn('action', function ($client_user) use ($request) {
32+
$detail_btn = '';
33+
$restore_btn = '';
34+
$edit_btn = '<a class="edit text text-primary mr-2" href="' . route('admin.client-users.edit', ['client_user' => $client_user->id]) . '"><i class="far fa-edit fa-lg"></i></a>';
35+
36+
if ($request->trash == 1) {
37+
$restore_btn = '<a class="restore text text-warning mr-2" href="#" data-id="' . $client_user->id . '"><i class="fa fa-trash-restore fa-lg"></i></a>';
38+
$trash_or_delete_btn = '<a class="destroy text text-danger mr-2" href="#" data-id="' . $client_user->id . '"><i class="fa fa-minus-circle fa-lg"></i></a>';
39+
} else {
40+
$trash_or_delete_btn = '<a class="trash text text-danger mr-2" href="#" data-id="' . $client_user->id . '"><i class="fas fa-trash fa-lg"></i></a>';
41+
}
42+
43+
return "${detail_btn} ${edit_btn} ${restore_btn} ${trash_or_delete_btn}";
44+
})
45+
->addColumn('plus-icon', function () {
46+
return null;
47+
})
48+
->rawColumns(['roles', 'action', 'plus-icon'])
49+
->make(true);
50+
}
51+
52+
return view('backend.admin.client_users.index');
53+
}
54+
55+
/**
56+
* Show the form for creating a new resource.
57+
*
58+
* @return \Illuminate\Http\Response
59+
*/
60+
public function create()
61+
{
62+
$roles = Role::where('guard_name', config('custom_guards.default.user'))->get();
63+
return view('backend.admin.client_users.create', compact('roles'));
64+
}
65+
66+
/**
67+
* Store a newly created resource in storage.
68+
*
69+
* @param \Illuminate\Http\Request $request
70+
* @return \Illuminate\Http\Response
71+
*/
72+
public function store(StoreClientUser $request)
73+
{
74+
$created = ClientUser::create([
75+
'name' => $request->name,
76+
'email' => $request->email,
77+
'password' => Hash::make($request->password)
78+
]);
79+
$created->syncRoles($request->roles);
80+
81+
return redirect()->route('admin.client-users.index')->with('success', 'New User Successfully Created.');
82+
}
83+
84+
/**
85+
* Display the specified resource.
86+
*
87+
* @param int $id
88+
* @return \Illuminate\Http\Response
89+
*/
90+
public function show(ClientUser $client_user)
91+
{
92+
return view('backend.admin.client_users.show', compact('client_user'));
93+
}
94+
95+
/**
96+
* Show the form for editing the specified resource.
97+
*
98+
* @param int $id
99+
* @return \Illuminate\Http\Response
100+
*/
101+
public function edit(ClientUser $client_user)
102+
{
103+
$roles = Role::where('guard_name', config('custom_guards.default.user'))->get();
104+
return view('backend.admin.client_users.edit', compact('client_user', 'roles'));
105+
}
106+
107+
/**
108+
* Update the specified resource in storage.
109+
*
110+
* @param \Illuminate\Http\Request $request
111+
* @param int $id
112+
* @return \Illuminate\Http\Response
113+
*/
114+
public function update(UpdateClientUser $request, ClientUser $client_user)
115+
{
116+
$client_user->name = $request->name;
117+
$client_user->email = $request->email;
118+
if (! empty($request->password)) {
119+
$client_user->password = Hash::make($request->password);
120+
}
121+
$client_user->save();
122+
$client_user->syncRoles($request->roles);
123+
124+
return redirect()->route('admin.client-users.index')->with('success', 'Successfully Updated.');
125+
}
126+
127+
/**
128+
* Remove the specified resource from storage.
129+
*
130+
* @param int $id
131+
* @return \Illuminate\Http\Response
132+
*/
133+
public function destroy(ClientUser $client_user)
134+
{
135+
$client_user->delete();
136+
return ResponseHelper::success();
137+
}
138+
139+
public function trash(ClientUser $client_user)
140+
{
141+
$client_user->trash();
142+
return ResponseHelper::success();
143+
}
144+
145+
public function restore(ClientUser $client_user)
146+
{
147+
$client_user->restore();
148+
return ResponseHelper::success();
149+
}
150+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<?php
2+
3+
namespace App\Http\Controllers\Backend\Admin;
4+
5+
use Illuminate\Http\Request;
6+
use App\Http\Controllers\Controller;
7+
use App\Models\Permission;
8+
use Yajra\DataTables\DataTables;
9+
10+
class PermissionsController extends Controller
11+
{
12+
/**
13+
* Display a listing of the resource.
14+
*
15+
* @return \Illuminate\Http\Response
16+
*/
17+
public function index(Request $request)
18+
{
19+
if ($request->ajax()) {
20+
$permissions = Permission::where('guard_name', $request->guard);
21+
return DataTables::of($permissions)->make(true);
22+
}
23+
24+
return view('backend.admin.permissions.index');
25+
}
26+
}

0 commit comments

Comments
 (0)