for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* Created by PhpStorm.
* User: arthur
* Date: 04.10.18
* Time: 16:17.
*/
namespace Modules\User\Services;
use Modules\Authorization\Entities\Role;
use Modules\User\Contracts\UserServiceContract;
use Modules\User\Entities\User;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
class UserService implements UserServiceContract
{
public function all()
return User::all();
}
public function find($id): ?User
if ($id instanceof User)
return $id;
$user = User::find($id);
if ($user === null)
throw new NotFoundHttpException();
return $user;
return $user
Illuminate\Database\Eloquent\Collection
Modules\User\Entities\User|null
public function findByIdentityId($id): ?User
return User::where('identity_id', $id)->first();
public function update($id, $data): ?User
$user = $this->find($id);
$user->update($data);
public function create($data): User
$user = User::create($data);
$user->assignRole(Role::USER);
public function delete($id): bool
return User::destroy($id);
return Modules\User\Entities\User::destroy($id)
integer
boolean
public function newUser($data): User
$user = new User($data);
public function setRoles($id, array $roles): void
if (!in_array(Role::USER, $roles))
$roles[] = Role::USER;
$this->find($id)->syncRoles($roles);