Skip to content

Commit

Permalink
Create User Update&Destroy
Browse files Browse the repository at this point in the history
초안 작성
  • Loading branch information
kimchanhyung98 committed Apr 3, 2024
1 parent 1a9d60f commit b32f613
Show file tree
Hide file tree
Showing 3 changed files with 75 additions and 2 deletions.
34 changes: 34 additions & 0 deletions app/Http/Controllers/User/UserDestroyController.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<?php

namespace App\Http\Controllers\User;

use App\Http\Controllers\Controller;
use App\Http\Resources\MessageResource;
use Exception;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;

class UserDestroyController extends Controller
{
public function __invoke(Request $request)
{
$user = Auth::user();

try {
DB::beginTransaction();
$user->update(['deleted_reason' => $request->deleted_reason]);
$user->tokens()->delete();
$user->delete();
DB::commit();
} catch (Exception $e) {
DB::rollBack();
logger($e);
abort($e->getCode(), __('user.destroy_denied'));
}

return new MessageResource([
'message' => __('user.destroy'),
]);
}
}
37 changes: 37 additions & 0 deletions app/Http/Controllers/User/UserUpdateController.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<?php

namespace App\Http\Controllers\User;

use App\Http\Controllers\Controller;
use App\Http\Resources\MessageResource;
use Exception;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;

class UserUpdateController extends Controller
{
public function __invoke(Request $request)
{
$user = Auth::user();

try {
DB::beginTransaction();
$user->update([
'name' => $request->name,
'nickname' => $request->nickname,
'email' => $request->email,
// 'password' => $request->password ? bcrypt($request->password) : $user->password,
]);
DB::commit();
} catch (Exception $e) {
DB::rollBack();
logger($e);
abort($e->getCode(), __('user.update_denied'));
}

return new MessageResource([
'message' => __('user.update'),
]);
}
}
6 changes: 4 additions & 2 deletions routes/api.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
use App\Http\Controllers\Account\SignUpController;
use App\Http\Controllers\PostController;
use App\Http\Controllers\User\UserController;
use App\Http\Controllers\User\UserDestroyController;
use App\Http\Controllers\User\UserUpdateController;
use Illuminate\Support\Facades\Route;

/*
Expand All @@ -32,8 +34,8 @@

Route::middleware('auth:sanctum')->group(static function () {
Route::get('/', UserController::class);
// Route::put('/', UserUpdateController::class);
// Route::delete('/', UserDeleteController::class);
Route::put('/', UserUpdateController::class);
Route::delete('/', UserDestroyController::class);
});
});

Expand Down

0 comments on commit b32f613

Please sign in to comment.