Compare commits

..

No commits in common. "e1a0711082c02b59a1bb470982fbec97bce17876" and "b2b34a5f7644d64b49ec8253ff662ecb343226d5" have entirely different histories.

4 changed files with 9 additions and 19 deletions

View File

@ -5,7 +5,6 @@ namespace App\Http\Controllers;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
use App\Models\User; use App\Models\User;
use Illuminate\Support\Facades\Hash;
class AuthController extends Controller class AuthController extends Controller
{ {
@ -13,20 +12,19 @@ class AuthController extends Controller
public function login(Request $request) public function login(Request $request)
{ {
$request->validate([ $request->validate([
'nama' => 'required', 'nama' => 'required|string',
'password' => 'required', 'password' => 'required|int',
]); ]);
// cari user berdasarkan nama // Cek kredensial
$user = User::where('nama', $request->nama)->first(); if (!Auth::attempt($request->only('nama', 'password'))) {
if (!$user || !Hash::check($request->password, $user->password)) {
return response()->json([ return response()->json([
'message' => 'Nama atau password salah' 'message' => 'Login gagal, periksa kembali nama atau password.'
], 401); ], 401);
} }
// buat token Sanctum $user = User::where('nama', $request->nama)->first();
$token = $user->createToken('auth_token')->plainTextToken; $token = $user->createToken('auth_token')->plainTextToken;
return response()->json([ return response()->json([

View File

@ -8,7 +8,6 @@ use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable; use Illuminate\Notifications\Notifiable;
use Laravel\Sanctum\HasApiTokens; use Laravel\Sanctum\HasApiTokens;
class User extends Authenticatable class User extends Authenticatable
{ {
/** @use HasFactory<\Database\Factories\UserFactory> */ /** @use HasFactory<\Database\Factories\UserFactory> */
@ -50,6 +49,6 @@ class User extends Authenticatable
public function getAuthIdentifierName() public function getAuthIdentifierName()
{ {
return 'id'; return 'nama';
} }
} }

View File

@ -40,11 +40,6 @@ return [
'driver' => 'session', 'driver' => 'session',
'provider' => 'users', 'provider' => 'users',
], ],
'api' => [
'driver' => 'sanctum',
'provider' => 'users',
],
], ],
/* /*

View File

@ -8,10 +8,8 @@
use App\Http\Controllers\SalesController; use App\Http\Controllers\SalesController;
use App\Http\Controllers\UserController; use App\Http\Controllers\UserController;
use App\Http\Controllers\TransaksiController; use App\Http\Controllers\TransaksiController;
use App\Http\Controllers\LaporanController;
use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Route;
Route::prefix('api')->group(function () { Route::prefix('api')->group(function () {
// Backend API // Backend API
Route::apiResource('nampan', NampanController::class); Route::apiResource('nampan', NampanController::class);
@ -57,7 +55,7 @@ Route::prefix('api')->group(function () {
Route::delete('foto/reset/{user_id}', [FotoSementaraController::class, 'reset']); Route::delete('foto/reset/{user_id}', [FotoSementaraController::class, 'reset']);
Route::post('/login', [AuthController::class, 'login'])->middleware('guest')->name('login'); Route::post('/login', [AuthController::class, 'login'])->middleware('guest')->name('login');
Route::post('/logout', [AuthController::class, 'logout'])->middleware('auth:sanctum')->name('logout'); Route::post('/logout', [AuthController::class, 'logout'])->middleware('auth');
}); });
// Frontend SPA // Frontend SPA