添加 管理员控制器
This commit is contained in:
parent
92eb3d5459
commit
75b5803285
78
app/Http/Controllers/Admin/Admin/AdminController.php
Normal file
78
app/Http/Controllers/Admin/Admin/AdminController.php
Normal file
@ -0,0 +1,78 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Admin\Admin;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class AdminController extends Controller
|
||||
{
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index(Admin $admin)
|
||||
{
|
||||
$admin = $admin->simplePaginate(10);
|
||||
return $this->success($admin);
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
|
||||
// password required
|
||||
$this->validate($request, [
|
||||
'password' => 'required',
|
||||
]);
|
||||
|
||||
$admin = Admin::create($request->all());
|
||||
return $this->success($admin);
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @param \App\Models\Admin\Admin $Admin
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function show(Admin $admin)
|
||||
{
|
||||
return $this->success($admin);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \App\Models\Admin\Admin $Admin
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function update(Request $request, Admin $admin)
|
||||
{
|
||||
//
|
||||
$admin->update($request->all());
|
||||
|
||||
return $this->updated($admin);
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param \App\Models\Admin\Admin $Admin
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function destroy(Admin $admin)
|
||||
{
|
||||
// soft delete Admin
|
||||
$admin->delete();
|
||||
return $this->deleted($admin);
|
||||
}
|
||||
}
|
@ -1,76 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin\Client;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Client\Balance;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class BalanceController extends Controller
|
||||
{
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index($client)
|
||||
{
|
||||
// list all balance log
|
||||
$balances = Balance::clientId($client)->orderBy('created_at', 'desc')->simplePaginate(10);
|
||||
|
||||
return $this->success($balances);
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
// add balance to client
|
||||
$balance = new Balance();
|
||||
$balance->addBalance($request->client, $request->amount);
|
||||
|
||||
return $this->created();
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @param \App\Models\Client\Balance $balance
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function show(Balance $balance)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \App\Models\Client\Balance $balance
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function update(Request $request, Balance $balance)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param \App\Models\Client\Balance $balance
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function destroy(Balance $balance)
|
||||
{
|
||||
//
|
||||
$balance = new Balance();
|
||||
$balance->subtractBalance($request->client, $request->amount);
|
||||
|
||||
return $this->created();
|
||||
}
|
||||
}
|
@ -1,81 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin\Client;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Client\Client;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class ClientController extends Controller
|
||||
{
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$clients = Client::simplePaginate(50);
|
||||
return $this->success($clients);
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
$client = new Client();
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required|string|max:255',
|
||||
'email' => 'required|string|email|max:255|unique:clients',
|
||||
'owner_id' => 'required|integer',
|
||||
]);
|
||||
|
||||
|
||||
$client = Client::create($request->all());
|
||||
return $this->success($client);
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @param \App\Models\Client\Client $client
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function show(Client $client)
|
||||
{
|
||||
//
|
||||
return $this->success($client);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \App\Models\Client\Client $client
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function update(Request $request, Client $client)
|
||||
{
|
||||
//
|
||||
$client->update($request->all());
|
||||
return $this->updated($client);
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param \App\Models\Client\Client $client
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function destroy(Client $client)
|
||||
{
|
||||
//
|
||||
$client->delete();
|
||||
return $this->deleted($client);
|
||||
}
|
||||
}
|
@ -1,65 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin\Client\Group;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Client\Group\Group;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class GroupController extends Controller
|
||||
{
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @param \App\Models\Client\Group\Group $group
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function show(Group $group)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \App\Models\Client\Group\Group $group
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function update(Request $request, Group $group)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param \App\Models\Client\Group\Group $group
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function destroy(Group $group)
|
||||
{
|
||||
//
|
||||
}
|
||||
}
|
@ -1,65 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin\Client\Group;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Client\Group\Upgrade;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class UpgradeController extends Controller
|
||||
{
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @param \App\Models\Client\Group\Upgrade $upgrade
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function show(Upgrade $upgrade)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \App\Models\Client\Group\Upgrade $upgrade
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function update(Request $request, Upgrade $upgrade)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param \App\Models\Client\Group\Upgrade $upgrade
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function destroy(Upgrade $upgrade)
|
||||
{
|
||||
//
|
||||
}
|
||||
}
|
@ -1,65 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin\Client;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Client\Withdraw;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class WithdrawController extends Controller
|
||||
{
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @param \App\Models\Client\Withdraw $withdraw
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function show(Withdraw $withdraw)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \App\Models\Client\Withdraw $withdraw
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function update(Request $request, Withdraw $withdraw)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param \App\Models\Client\Withdraw $withdraw
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function destroy(Withdraw $withdraw)
|
||||
{
|
||||
//
|
||||
}
|
||||
}
|
@ -2,10 +2,36 @@
|
||||
|
||||
namespace App\Models\Admin;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Support\Str;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
|
||||
class Admin extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
use HasFactory, SoftDeletes;
|
||||
|
||||
protected $fillable = [
|
||||
'name', 'email', 'password',
|
||||
];
|
||||
|
||||
protected $hidden = [
|
||||
'password'
|
||||
];
|
||||
|
||||
|
||||
// protect password
|
||||
public function setPasswordAttribute($value)
|
||||
{
|
||||
$this->attributes['password'] = bcrypt($value);
|
||||
}
|
||||
|
||||
// before create admin, generate api_token
|
||||
public static function boot()
|
||||
{
|
||||
parent::boot();
|
||||
self::creating(function ($admin) {
|
||||
$admin->api_token = Str::random(60);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,11 @@
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
Route::name('admin.')->middleware(['admin'])->group(function () {
|
||||
Route::apiResource('admins', Admin\Admin\AdminController::class);
|
||||
|
||||
Route::apiResource('users', Admin\User\UserController::class);
|
||||
|
||||
|
||||
// Route::resource('users.fields', v1\User\FieldsController::class)->only(['index']);
|
||||
|
||||
// sub routes for clients
|
||||
|
Loading…
Reference in New Issue
Block a user