Kasir/app/Http/Controllers/UserController.php

73 lines
1.7 KiB
PHP

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\User;
use Illuminate\Support\Facades\Auth;
class UserController extends Controller
{
public function index()
{
$users = User::all();
return response()->json(
$users
);
}
public function store(Request $request)
{
$request->validate([
'nama' => 'required|string|unique:users',
'password' => 'required|min:6',
'role' => 'required|in:owner,kasir',
]);
User::create([
'nama' => $request->nama,
'password' => $request->password,
'role' => $request->role,
]);
return response()->json([
'message' => 'User berhasil ditambahkan'
], 200);
}
public function update(Request $request, $id)
{
$user = User::findOrFail($id);
$request->validate([
'nama' => 'required|string|unique:users,nama,' . $id,
'password' => 'nullable|min:6',
'role' => 'required|in:owner,kasir',
]);
$data = [
'nama' => $request->nama,
'role' => $request->role,
];
if ($request->filled('password')) {
$data['password'] = $request->password;
}
$user->update($data);
return response()->json(['message' => 'User berhasil diupdate', 'user' => $user], 200);
}
public function destroy($id)
{
$user = User::findOrFail($id);
$user->delete();
return response()->json([
'message' => 'User berhasil dihapus'
], 200);
}
}