mirror of
https://gitee.com/hzchunfen/erp.git
synced 2025-12-01 14:40:44 +00:00
feat: #20220801 用户新增,查询接口
This commit is contained in:
parent
b11abca9a1
commit
5316f6463f
@ -6,29 +6,44 @@ use App\Http\Controllers\Controller;
|
|||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Faker\Generator as Faker;
|
use Faker\Generator as Faker;
|
||||||
|
use Illuminate\Support\Facades\Validator;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
|
use App\Http\Resources\UsersResource;
|
||||||
|
|
||||||
class UsersController extends Controller
|
class UsersController extends Controller
|
||||||
{
|
{
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
|
$users = User::query()->where('id', '<>', 1)->paginate();
|
||||||
|
|
||||||
|
return UsersResource::collection($users);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function store(Request $request)
|
public function store(Request $request, Faker $faker)
|
||||||
{
|
{
|
||||||
$request->validate([
|
$validator = Validator::make($request->all(), [
|
||||||
'name' => 'required|string|unique:users|max:255',
|
'name' => 'required|string|unique:users,name|max:255',
|
||||||
'password' => 'required|string|min:8|confirmed',
|
'password' => 'required|string|min:8|confirmed',
|
||||||
|
'email' => 'email',
|
||||||
]);
|
]);
|
||||||
|
if ($validator->fails()) {
|
||||||
|
$this->setValidatorFailResponse($validator->getMessageBag()->getMessages());
|
||||||
|
|
||||||
|
return response($this->res, $this->res['httpCode']);
|
||||||
|
}
|
||||||
$user = new User();
|
$user = new User();
|
||||||
$user->name = $request->name;
|
$user->name = $request->name;
|
||||||
|
$user->email = \request('email', $faker->unique()->safeEmail);
|
||||||
$user->password = $request->password;
|
$user->password = $request->password;
|
||||||
|
$user->api_token = Str::random(60);
|
||||||
|
$user->save();
|
||||||
|
|
||||||
|
return new UsersResource($user);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function show($id)
|
public function show($id)
|
||||||
{
|
{
|
||||||
return User::query()->find($id);
|
return new UsersResource(User::query()->find($id));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function update()
|
public function update()
|
||||||
|
|||||||
19
app/Http/Resources/UsersResource.php
Normal file
19
app/Http/Resources/UsersResource.php
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Resources;
|
||||||
|
|
||||||
|
use Illuminate\Http\Resources\Json\JsonResource;
|
||||||
|
|
||||||
|
class UsersResource extends JsonResource
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Transform the resource into an array.
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Http\Request $request
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function toArray($request)
|
||||||
|
{
|
||||||
|
return parent::toArray($request);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -27,7 +27,7 @@ class User extends Authenticatable
|
|||||||
* @var array
|
* @var array
|
||||||
*/
|
*/
|
||||||
protected $hidden = [
|
protected $hidden = [
|
||||||
'password', 'remember_token', 'api_token',
|
'password', 'remember_token', 'api_token', 'email_verified_at',
|
||||||
];
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -13,5 +13,10 @@ class DatabaseSeeder extends Seeder
|
|||||||
{
|
{
|
||||||
// $this->call(UsersTableSeeder::class);
|
// $this->call(UsersTableSeeder::class);
|
||||||
factory(\App\Models\User::class)->create();
|
factory(\App\Models\User::class)->create();
|
||||||
|
$this->call([
|
||||||
|
MenusTableSeeder::class,
|
||||||
|
PermissionsTableSeeder::class,
|
||||||
|
RolesTableSeeder::class,
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,7 +12,7 @@ class RolesTableSeeder extends Seeder
|
|||||||
*/
|
*/
|
||||||
public function run()
|
public function run()
|
||||||
{
|
{
|
||||||
DB::table('permissions')->insert([
|
DB::table('roles')->insert([
|
||||||
['name' => '超级管理员', 'guard_name' => 'api'],
|
['name' => '超级管理员', 'guard_name' => 'api'],
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user