Pinjampro adalah aplikasi web yang dirancang untuk mengelola proses peminjaman barang dengan fitur pengguna dan admin. Sistem ini memungkinkan pengguna meminjam barang yang tersedia, sementara admin dapat mengelola barang, pengguna, dan aktivitas dalam sistem.
Menyimpan data pengguna yang dapat meminjam atau mengelola barang.
Kolom | Tipe Data | Deskripsi |
---|---|---|
id |
INT | Primary Key, Auto Increment |
name |
VARCHAR | Nama pengguna |
email |
VARCHAR | Email pengguna (unik) |
password |
VARCHAR | Password pengguna (dalam format hashed) |
role |
ENUM | Peran pengguna (admin atau user , Default: user ) |
Menyimpan data barang yang bisa dipinjam.
Kolom | Tipe Data | Deskripsi |
---|---|---|
id |
INT | Primary Key, Auto Increment |
name |
VARCHAR | Nama barang |
description |
TEXT | Deskripsi barang |
stock |
INT | Jumlah barang tersedia |
Mencatat informasi peminjaman barang.
Kolom | Tipe Data | Deskripsi |
---|---|---|
id |
INT | Primary Key, Auto Increment |
user_id |
INT | Foreign Key, Relasi ke users.id |
item_id |
INT | Foreign Key, Relasi ke items.id |
amount |
INT | Jumlah Barang yang dipinjam |
borrow_date |
DATE | Tanggal peminjaman |
return_date |
DATE | Tanggal pengembalian (NULL jika belum dikembalikan) |
status |
ENUM | Status (borrowed atau returned , Default: borrowed ) |
Menyimpan log aktivitas dalam sistem.
Kolom | Tipe Data | Deskripsi |
---|---|---|
id |
INT | Primary Key, Auto Increment |
action |
VARCHAR | Aksi yang dilakukan (contoh: "pinjam barang") |
user_id |
INT | Foreign Key, Relasi ke users.id |
item_id |
INT | Foreign Key, Relasi ke items.id |
amount |
INT | Jumlah Barang yang dipinjam |
timestamp |
TIMESTAMP | Waktu aktivitas dilakukan |
- Pengguna login ke sistem.
- Pengguna memilih barang yang ingin dipinjam.
- Sistem memeriksa ketersediaan barang (
stock > 0
). - Jika tersedia:
- Sistem mencatat data peminjaman di tabel
loans
. stock
barang dikurangi sesuai jumlah barang yang dipinjam.- Log aktivitas disimpan (opsional).
- Sistem mencatat data peminjaman di tabel
- Pengguna melihat daftar barang yang sedang dipinjam.
- Pengguna memilih barang yang ingin dikembalikan.
- Sistem memperbarui status di tabel
loans
menjadireturned
dan mengisireturn_date
. stock
barang bertambah 1.
Admin memiliki akses tambahan untuk:
- Menambah, mengedit, dan menghapus data barang.
- Melihat log aktivitas pengguna.
- Mengelola data pengguna (opsional).
- Form login untuk pengguna dan admin.
- Pengguna: Menampilkan daftar barang yang tersedia dan status peminjaman.
- Admin: Menampilkan statistik barang dan aktivitas peminjaman.
- Daftar barang yang bisa dipinjam.
- Tombol "Pinjam" dengan validasi ketersediaan barang.
- Daftar barang yang sedang dipinjam oleh pengguna.
- Tombol "Kembalikan" untuk mengembalikan barang.
- CRUD barang (Tambah, Edit, Hapus barang).
- Daftar log aktivitas pengguna.
- Role Management: Peran pengguna sebagai admin atau user.
- Peminjaman Barang: Meminjam barang dengan validasi ketersediaan stok.
- Pengembalian Barang: Mengembalikan barang dengan pembaruan status dan stok.
- CRUD Barang: Admin dapat mengelola data barang.
- Log Aktivitas (Opsional): Melacak aktivitas dalam sistem.
Proyek ini menggunakan lisensi MIT.