JWD_NETWORK/ │ ├── public/ # HANYA file yang bisa diakses via browser │ ├── index.php # front controller (routing sederhana) │ ├── .htaccess # optional (pretty URL) │ ├── assets/ │ │ ├── css/ │ │ │ ├── bootstrap.min.css │ │ │ ├── app.css # global css │ │ │ ├── member.css # sidebar hitam │ │ │ └── admin.css # topbar admin │ │ ├── js/ │ │ │ ├── bootstrap.bundle.min.js │ │ │ └── app.js │ │ └── img/ │ └── uploads/ # optional (bukti transfer dll) │ ├── app/ │ ├── config/ │ │ ├── config.php # base_url, timezone, env │ │ └── database.php # setting DB manual (host, db, user, pass) │ │ │ ├── core/ │ │ ├── App.php # bootstrapping │ │ ├── Router.php # router sederhana (?r=...) │ │ ├── Controller.php # base controller │ │ ├── Auth.php # login session helper │ │ ├── Db.php # koneksi PDO singleton │ │ ├── CSRF.php # token (optional) │ │ └── Helpers.php # redirect(), e(), rupiah(), dll │ │ │ ├── middleware/ │ │ ├── RequireLogin.php │ │ ├── RequireAdmin.php │ │ └── RequireMember.php │ │ │ ├── controllers/ │ │ ├── AuthController.php # login/logout (admin & member) │ │ ├── Admin/ │ │ │ ├── DashboardController.php │ │ │ ├── MembersController.php │ │ │ ├── PackagesController.php │ │ │ ├── PinsController.php # PIN Aktivasi Plan A (kalau dipakai) │ │ │ ├── ApprovalsController.php # approve join/aktivasi │ │ │ └── ReportsController.php │ │ └── Member/ │ │ ├── DashboardController.php │ │ ├── NetworkController.php # tree kiri/kanan │ │ ├── RegisterController.php # daftar downline pakai PIN │ │ ├── WalletController.php # saldo + mutasi │ │ └── ReportsController.php # bonus sponsor/pairing/matching/daily/reward │ │ │ ├── services/ # LOGIKA BISNIS (inti MLM) │ │ ├── MemberService.php │ │ ├── BinaryService.php # placement kiri/kanan, hitung upline │ │ ├── WalletService.php │ │ ├── Bonus/ │ │ │ ├── SponsorBonusService.php │ │ │ ├── PairingBonusService.php │ │ │ ├── MatchingBonusService.php │ │ │ ├── DailyBonusService.php │ │ │ ├── RewardPointService.php │ │ │ └── RoyaltyGlobalService.php │ │ └── Runner/ │ │ ├── RunPairing.php # proses pairing per hari/per run │ │ ├── RunDailyBonus.php # proses bonus harian │ │ └── RunRoyalty.php # proses royalty bulanan │ │ │ ├── models/ # query DB sederhana (optional) │ │ ├── Member.php │ │ ├── Wallet.php │ │ └── Transaction.php │ │ │ ├── views/ │ │ ├── layouts/ │ │ │ ├── auth.php # layout login │ │ │ ├── admin.php # layout admin (topbar) │ │ │ └── member.php # layout member (sidebar hitam) │ │ ├── partials/ │ │ │ ├── admin_topbar.php │ │ │ ├── member_sidebar.php │ │ │ └── flash.php │ │ ├── auth/ │ │ │ └── login.php │ │ ├── admin/ │ │ │ ├── dashboard.php │ │ │ ├── members_list.php │ │ │ ├── reports.php │ │ │ └── approvals.php │ │ └── member/ │ │ ├── dashboard.php │ │ ├── network.php │ │ ├── wallet.php │ │ └── reports.php │ │ │ └── logs/ │ └── app.log │ ├── storage/ │ ├── cache/ │ └── exports/ # export laporan (csv/xls) optional │ ├── database/ │ ├── schema.sql # DB manual import │ └── seed.sql # optional │ ├── scripts/ # jalan manual via browser/cli │ ├── run_pairing.php # panggil Runner/RunPairing.php │ ├── run_daily_bonus.php # panggil Runner/RunDailyBonus.php │ └── run_royalty.php # panggil Runner/RunRoyalty.php │ └── README.md