
O-Stock
O-Stock: Solusi Terbaik untuk Pengelolaan Stok Perusahaan Anda
O-Stock adalah aplikasi pengelolaan stok yang dirancang untuk memudahkan Anda dalam mengelola data stok dan penjualan di seluruh cabang perusahaan Anda. Dengan fitur lengkap dan antarmuka yang intuitif, O-Stock membantu Anda mengoptimalkan pengelolaan inventaris dan memaksimalkan efisiensi bisnis Anda.
Requirements
Versions & Features
O-Stock hadir dalam dua versi: Free dan Premium. Berikut adalah perbedaan utama antara kedua versi tersebut:
Versi Free
- Pengelolaan Data Lengkap: Kelola data konsumen, salesman, supplier, dan produk dengan mudah dan terintegrasi dalam satu platform.
- Stok Penjualan & Alokasi: Pantau stok produk dan kelola alokasi dengan efisien.
- Cetak Invoice: Buat dan cetak invoice penjualan dengan cepat dan akurat.
- Kartu Stok: Tinjau stok produk saat ini untuk memastikan ketersediaan barang.
Versi Premium
- Mutasi Antar Cabang: Kelola mutasi stok antar cabang dengan mudah untuk menjaga keseimbangan stok.
- Retur Penjualan: Proses retur penjualan dengan fitur yang lengkap untuk memudahkan pengelolaan.
- Export Data: Ekspor data ke Microsoft Excel untuk analisis lebih lanjut dan pelaporan.
- Histori Kartu Stok: Lihat histori lengkap masuk dan keluarnya stok untuk pelacakan yang lebih baik.
- Notifikasi Email: Dapatkan notifikasi penting melalui email untuk keamanan dan pemberitahuan akun.
- Pemulihan & Perubahan Akun: Fitur pemulihan password dan perubahan email untuk kenyamanan pengguna.
[!NOTE] Source Code O-Stock Versi Premium tersedia di Karyakarsa.
Getting Started
Anda perlu melakukan sedikit konfigurasi di bawah ini sebelum mulai menjalankan web O-Stock:
-
Unduh file ZIP source code o-stock atau jalankan perintah berikut di terminal Anda:
git clone https://github.com/josephines1/o-stock.git -
Ekstrak file ZIP dan letakkan folder o-stock di dalam folder htdocs (misalnya D:\xampp\htdocs).
-
Buka folder o-stock di Visual Studio Code.
-
Di Visual Studio Code, buka terminal dengan memilih
Terminal > New Terminaldi menu bagian atas, atau tekan ctrl + ` -
Jalankan perintah berikut untuk menginstal package yang dibutuhkan:
composer install -
Setelah instalasi selesai, salin file
envdan beri nama menjadi.env-
Atur nama aplikasi:
APP_NAME = "Nama Aplikasi" -
Ubah environment menjadi development:
CI_ENVIRONMENT = development -
Atur Base URL:
app.baseURL = 'http://localhost:8080/' -
Konfirgurasikan database. Sesuaikan dengan database milik Anda:
database.default.hostname = localhost database.default.database = o-stock database.default.username = root database.default.password = database.default.DBDriver = MySQLi database.default.DBPrefix = database.default.port = 3306 -
Pastikan tidak ada tanda "#" pada baris yang telah dikonfigurasi.
-
-
Buka file
vendor\myth\auth\src\Filters\RoleFilter.php. Modifikasi functionbefore(baris 18 - 46) menjadi seperti berikut ini.public function before(RequestInterface $request, $arguments = null) { /* * Jika tidak ada pengguna yang login, arahkan mereka ke formulir login. */ if (!$this->authenticate->check()) { session()->set('redirect_url', current_url()); return redirect($this->reservedRoutes['login']); } /* * Jika tidak ada argumen yang diberikan, lanjutkan ke proses berikutnya. */ if (empty($arguments)) { return; } /* * Periksa setiap izin yang diminta */ foreach ($arguments as $group) { /* * Jika pengguna berada dalam grup yang memiliki izin, lanjutkan. */ if ($this->authorize->inGroup($group, $this->authenticate->id())) { return; } } /* * Jika pengguna tidak memiliki izin dan loginnya bersifat senyap (silent login) */ if ($this->authenticate->silent()) { /* * Arahkan ke URL yang tersimpan di sesi atau ke URL landing */ $redirectURL = session('redirect_url') ?? route_to($this->landingRoute); unset($_SESSION['redirect_url']); return redirect()->to($redirectURL)->with('error', lang('Auth.notEnoughPrivilege')); } /* * Jika pengguna tidak memiliki izin dan login tidak bersifat senyap, arahkan ke halaman utama */ return redirect()->to(base_url()); } -
Buka file
vendor\myth\auth\src\Config\Auth.php.-
Atur defaultUserGroup (baris 19)
public $defaultUserGroup = 'cabang'; -
Atur tampilan auth (baris 76 - 83)
public $views = [ 'login' => 'App\Views\auth\login', 'register' => 'Myth\Auth\Views\register', 'forgot' => 'Myth\Auth\Views\forgot', 'reset' => 'Myth\Auth\Views\reset', 'emailForgot' => 'Myth\Auth\Views\emails\forgot', 'emailActivation' => 'Myth\Auth\Views\emails\activation', ]; -
Atur activeResetter (baris 201)
public $activeResetter = null;
-
-
Buka XAMPP Control Panel Anda dan start server Apache dan MySQL.
-
Buka
localhost/phpmyadmindi browser, lalu buat database baru dengan namao-stockatau sesuaikan dengan nama database yang Anda inginkan. -
Buka kembali terminal di Visual Studio Code, jalankan perintah migrate dan seed.
-
Migrate
php spark migrate -2024-07-27-125132_create_ostock_tables php spark migrate -2024-07-27-134447_create_auth_tables -
Seed
php spark db:seed KantorSeeder php spark db:seed SalesmanSeeder php spark db:seed KonsumenSeeder php spark db:seed SupplierSeeder php spark db:seed KategoriProdukSeeder php spark db:seed ProdukSeeder php spark db:seed UserSeeder php spark db:seed AuthGroupsSeeder php spark db:seed AuthGroupsUsersSeeder
-
-
Mulai server dengan menjalankan perintah berikut ini di terminal.
php spark serve -
Selesai! Akses web melalui
http://localhost:8080.
First Usage
Login
Setelah melakukan instalasi dan konfigurasi O-Stock, Anda dapat melakukan login pada aplikasi dengan email dan password sebagai berikut.
Pusat
Email: [email protected]
Password: password
Cabang 1
Email: [email protected]
Password: password
Cabang 2
Email: [email protected]
Password: password
Tambahkan Stok Awal
Setelah berhasil melakukan login, Anda dapat mencoba menambahkan stok awal produk, untuk selanjutnya melakukan pencatatan penjualan, alokasi, mutasi, dan retur.
Services
Layanan di bawah ini tersedia pada aplikasi O-Stock.
Layanan Utama
Pengelolaan Data
- Kelola data konsumen, salesman, supplier, kantor & cabang, kategori produk, dan produk dengan mudah dalam satu platform terintegrasi.
Pengelolaan Stok dalam Penjualan, Alokasi, Mutasi, dan Retur
- Atur stok produk untuk penjualan, alokasi, mutasi antar cabang, dan proses retur penjualan dengan efisien.
Cetak Invoice
- Fitur untuk mencetak invoice dari penjualan yang telah tercatat sehingga memudahkan pembuatan dan pengelolaan dokumen penjualan yang akurat.
Kartu Stok
- Tinjau dan pantau histori masuk dan keluarnya stok untuk memastikan transparansi dan akurasi dalam pengelolaan stok dengan riwayat yang lengkap.
Export Data Histori Stok ke Microsoft Excel
- Ekspor data histori stok ke format Excel untuk pelaporan dan analisis lebih lanjut.
Menambahkan User tanpa Batas
- Tambah akun pengguna tanpa batas, baik untuk pusat maupun cabang.
Kelola Profil
- Ubah foto profil, username, nama, dan informasi profil lainnya.
Lupa & Ubah Password
- Fitur untuk memulihkan password dan mengubah password melalui halaman profil sehingga dapat meningkatkan keamanan dan kemudahan akses akun pengguna.
Ubah Email
- Ubah alamat email dengan verifikasi melalui sistem email sehingga memastikan email pengguna selalu diperbarui dan akurat untuk komunikasi dan pemulihan akun.
Versi Free
- Pengelolaan data
- Stok dalam penjualan dan alokasi
- Cetak invoice
- Kartu stok saat ini
- Menambahkan user tanpa limit
- Kelola profil
- Ubah password
Versi Premium
- Mutasi antar cabang
- Retur penjualan
- Export data ke Microsoft Excel
- Kartu stok dengan histori
- Integrasi notifikasi email
- Fitur pemulihan password melalui email
- Ubah email dengan verifikasi
Database
Berikut ini adalah struktur table database untuk aplikasi O-Stock.

Multilevel Auth
Pengguna yang terdaftar terdiri dari 2 jenis, yaitu role Pusat dan Cabang.
-
Pusat dapat melakukan:
- Lihat, Tambah, Edit, dan Hapus Data Salesman, Konsumen, Pusat & Cabang, dan User.
- Lihat, Tambah, Edit, dan Hapus Data Supplier, Kategori Produk, dan Produk.
- Lihat Data Penjualan.
- Lihat, Tambah, dan Edit Data Alokasi.
- Lihat Data Mutasi.
- Lihat Data Retur.
- Lihat Kartu Stok dan Tambah & Edit Data Stok Awal Produk.
- Kelola Profil.
-
Cabang dapat melakukan:
- Lihat dan Tambah Data Salesman.
- Lihat, Tambah, dan Edit Data Konsumen.
- Lihat Data Supplier, Kategori Produk, dan Produk.
- Lihat dan Tambah Data Penjualan.
- Lihat, Tambah, dan Update Status Data Mutasi.
- Lihat dan Tambah Data Retur.
- Lihat Kartu Stok.
- Kelola Profil.
Tech
Teknologi dalam aplikasi ini:
- CodeIgniter 4 - a flexible application development framework.
- Myth/Auth - a flexible, Powerful, Secure auth package for CodeIgniter 4.
- Tabler.io - a free and open source web application UI kit based on Bootstrap 5.
- jQuery - a fast, small, and feature-rich JavaScript library.
