ASEP JAHIT · VERSI 1.0.1
Ruang kerja siap dipasang.
Paket mandiri PHP untuk hosting Anda. Data awal kosong; tidak ada password bawaan atau data contoh.
1. Persiapan hosting
- Gunakan domain dengan HTTPS dan PHP 8.1 atau lebih baru.
- Aktifkan ekstensi PDO MySQL, cURL, dan session. Gunakan MySQL 5.7+/8 atau MariaDB 10.3+.
- Di hPanel / cPanel, buat database dan user database. Simpan nama database, username, dan password.
- Buat folder baru, misalnya
public_html/asep-jahit/. Jangan timpa folder keuangan NexaCell. - Upload dan ekstrak seluruh isi ZIP ke folder itu. File
index.html,api.php, dan folderassetsharus sejajar.
2. Hubungkan database
Salin config.example.php menjadi config.php, lalu ubah nilainya:
<?php return [ 'dsn' => 'mysql:host=localhost;dbname=NAMA_DATABASE;charset=utf8mb4', 'user' => 'USER_DATABASE', 'password' => 'PASSWORD_DATABASE', 'setup_key' => 'KODE-RAHASIA-ACAK-MINIMAL-24-KARAKTER', ];
Isi setup_key dengan kode rahasia acak buatan Anda, minimal 24 karakter. Jangan gunakan contoh ini. File config.php tidak disertakan agar tidak tertimpa saat pembaruan.
AJ_CONFIG ke path lengkap file tersebut. Jika environment tidak tersedia, config.php di folder aplikasi dilindungi aturan .htaccess. Pastikan .htaccess aktif.3. Instalasi pertama
- Buka
https://domain-anda/asep-jahit/setup.php. - Masukkan setup_key dari config.php, nama, username, dan password Developer minimal 10 karakter.
- Klik Selesaikan instalasi. Tabel database dibuat otomatis; tidak perlu impor SQL manual.
- Hapus file
setup.phpdari hosting sesudah berhasil. - Buka alamat folder aplikasi, masuk sebagai Developer, lalu tambah akun Admin melalui Pengaturan → Kelola akun.
4. Alur pencatatan
Dropdown input utama memiliki dua bagian: Pemasukan dan Pengeluaran. Untuk biaya overhead, pilih Pengeluaran lalu kategori Tidak terduga / biaya overhead. Form ongkos jahit dan potong ada di halaman Ongkos, khusus Developer.
| Form | Perhitungan |
|---|---|
| Pemasukan | Total harga masuk ke pemasukan pelanggan. Jumlah barang masuk ke rekap unit, bukan nilai rupiah. |
| Pengeluaran | Total harga masuk ke belanja/pengeluaran. Jenis Maklun atau Full order. Keterangan wajib. |
| Overhead | Pengeluaran tidak terduga, dicatat terpisah. Keterangan wajib. |
| Ongkos jahit & potong | Form terpisah. Harga per barang × jumlah barang dihitung server. Otomatis menjadi pengeluaran usaha dan pendapatan ongkos Developer pencatat. |
Selisih usaha = pemasukan pelanggan − pengeluaran belanja − ongkos jahit − ongkos potong − overhead.
Kartu Pendapatan ongkos saya dan tab Pendapatan saya hanya menampilkan ongkos yang diinput akun Developer tersebut. Jika ada beberapa Developer, masing-masing mempunyai rekap sendiri. Total ongkos usaha tetap mencakup semua Developer. Mengedit ongkos tidak memindahkan pendapatan ke editor lain.
Nominal dicatat sebagai rupiah bulat. Semua catatan langsung diperhitungkan sesuai tanggal input. Belum ada sistem piutang, cicilan, atau status pembayaran. Jika uang belum diterima, jangan catat sebagai pemasukan aktual.
5. Hak akses
| Fitur | Developer | Admin |
|---|---|---|
| Pemasukan, pengeluaran, overhead: tambah/edit/hapus | Ya | Ya |
| Melihat ongkos & detail | Ya | Ya |
| Menginput/edit/hapus ongkos | Ya | Tidak |
| Laporan & ekspor CSV | Ya | Ya |
| Kelola akun, Turnstile, jejak perubahan, cadangan JSON | Ya | Tidak |
Hak akses divalidasi server. Hapus data menghapus pengaruhnya dari laporan, tetapi jejak perubahan tetap disimpan.
6. Aktifkan Cloudflare Turnstile
- Buka Cloudflare Dashboard → Turnstile → Add widget.
- Nama: Asep Jahit. Pilih Managed. Masukkan hostname domain saja, misalnya
jahit.contoh.com, tanpa https dan path. - Salin Site Key dan Secret Key. Jangan bagikan Secret Key.
- Masuk Developer → Pengaturan → Keamanan login. Isi key dan hostname.
- Aktifkan Turnstile, klik Uji captcha, selesaikan verifikasi, lalu Simpan keamanan. Server memvalidasi captcha sebelum menyimpan.
- Tetap buka sesi Developer. Uji login di jendela Incognito terlebih dahulu.
Jika salah konfigurasi sampai tidak bisa login, melalui phpMyAdmin jalankan:
UPDATE aj_settings SET value='{"turnstile":false,"site_key":"","secret":"","hostname":""}' WHERE id=1;7. PWA & pembaruan
- Buka melalui HTTPS. Di Pengaturan, pilih Pasang aplikasi. Jika prompt belum tersedia, gunakan menu Chrome → Instal aplikasi / Tambahkan ke layar utama. iPhone: Safari → Bagikan → Tambahkan ke Layar Utama.
- Indikator “sudah terpasang” berlaku saat aplikasi dibuka dalam mode standalone. Browser tidak selalu memberi informasi apakah PWA terpasang ketika situs dibuka di tab biasa.
- Versi baru dipasang dengan mengupload seluruh file paket terbaru, sambil mempertahankan config.php dan database. Jangan jalankan setup lagi.
- Aplikasi memeriksa perubahan kode setiap 60 detik selama aktif dan saat dibuka kembali. Banner Pembaruan siap dipasang tampil ketika kode berubah. Simpan formulir lalu klik Perbarui.
- Halaman pembaruan menampilkan overlay. Tidak ada cronjob yang diperlukan. Ini pendeteksi pembaruan, bukan pengunggah kode otomatis.
- Data sensitif tidak di-cache. Saat offline, aplikasi menunjukkan petunjuk sambungkan kembali; penyimpanan offline belum didukung.
8. Pengecekan sebelum digunakan
- Buat transaksi uji pemasukan Rp1.000.000, pengeluaran Rp100.000, ongkos jahit Rp200.000, potong Rp50.000, overhead Rp25.000.
- Total pengeluaran harus Rp375.000, selisih Rp625.000. Developer pencatat melihat pendapatan ongkos Rp250.000.
- Masuk Admin: ongkos tetap terlihat dan tidak ada input/edit/hapus ongkos.
- Coba edit/hapus transaksi uji; laporan langsung dihitung ulang. Pastikan periode tanggal sesuai.
- Hapus catatan uji melalui detail masing-masing. Backup database secara berkala dari panel hosting. Cadangan JSON aplikasi hanya berisi transaksi dan audit, belum mendukung restore otomatis.
Paket ini belum terhubung ke hosting Anda. Aktifkan backup database hosting dan uji login/PWA/Turnstile pada domain sebenarnya sebelum dipakai untuk operasional.