Commit Graph

368 Commits

Author SHA1 Message Date
Yoga Pangestu
2978d34e9e feat: Ensure order totals are non-negative, improve voucher deduction validation, and add pessimistic locking for stock updates. 2025-12-17 04:21:37 +07:00
Yoga Pangestu
4b1566c1a2 feat: Add gross and net profit calculations to dashboard analysis and refactor metric retrieval. 2025-12-16 21:16:48 +07:00
Yoga Pangestu
14e79054c0 feat: Implement dynamic product filtering by outlet, enforce purchase total integrity, add concurrency locks for stock updates, and improve item management. 2025-12-16 19:34:34 +07:00
Yoga Pangestu
6b09c09d3e refactor: centralize request notification handling into a new trait and apply it to Livewire components. 2025-12-15 21:32:12 +07:00
Yoga Pangestu
d266acae85 refactor(article): merubah cara mengirim notifikasi setelah create dan update 2025-12-15 21:16:18 +07:00
Yoga Pangestu
ad30631544 chore: run pint 2025-12-15 21:10:18 +07:00
Yoga Pangestu
96ed2c3ac4 feat: Implement StockActivityLogService and refactor stock activity logging across stock opname, order, and purchase modules to utilize it. 2025-12-15 21:09:41 +07:00
Yoga Pangestu
fb5e920a11 refactor(traits): Update trait imports to a new namespace structure and remove unused traits for improved organization and maintainability. 2025-12-14 17:02:21 +07:00
Yoga Pangestu
e995391719 refactor(forms): Integrate WithSortOrder trait into various forms and streamline sort order handling after deletions for improved code maintainability. 2025-12-14 16:54:26 +07:00
Yoga Pangestu
44b7358768 feat(datatable): Filter Vouchers, Purchases, and Stock Opname by user outlets for enhanced data visibility and management. 2025-12-14 16:25:37 +07:00
Yoga Pangestu
c1acb637b9 feat(outlet): Implement user auto-assignment to new outlets based on roles for improved management efficiency. 2025-12-14 16:18:55 +07:00
Yoga Pangestu
d7e870720f refactor(forms): Update store methods in various forms to set sort_order to 1 and increment existing entries for improved ordering consistency. 2025-12-14 16:12:24 +07:00
Yoga Pangestu
a37135da2d fix(perfume): Change concentration property type from string to int for improved type safety and consistency. 2025-12-14 16:11:25 +07:00
Yoga Pangestu
9e9a01d67e fix(brands): Update modal title from 'Ubah Kategori' to 'Ubah Merek' for accurate representation in BrandsTable component. 2025-12-14 16:11:11 +07:00
Yoga Pangestu
7e7ff93184 refactor(user): Update redirectRoute calls in Create and Edit components to use navigate parameter for improved navigation consistency. 2025-12-14 16:05:33 +07:00
Yoga Pangestu
a7427f145f refactor(helpers, forms, livewire): Rename functions for clarity and consistency, update currency and date formatting across various components to improve maintainability and user experience. 2025-12-14 15:49:53 +07:00
Yoga Pangestu
2a1b9bbd49 fix(concentration): Update concentration property to use EAU_DE_PERFUME constant for improved clarity and maintainability. 2025-12-14 14:38:50 +07:00
Yoga Pangestu
8aa25b662a feat(notification): Implement URL-based toast notifications for bottle, perfume, and product creation and updates, enhancing user feedback and navigation. 2025-12-14 14:33:20 +07:00
Yoga Pangestu
3916ef436e feat(cart, article, product): Introduce new Cart component, enhance Article and Product components with detail views, and update routing for improved navigation. 2025-12-14 12:40:54 +07:00
Yoga Pangestu
ffba4df0dc refactor(modal): Simplify modal ID handling by replacing if statements with short-circuit evaluation across multiple components. 2025-12-14 10:33:48 +07:00
Yoga Pangestu
1f29e4193d refactor(tier): Restructure tier management by introducing a new Index component, enhancing validation logic, and removing the old Tier component for improved clarity and maintainability. 2025-12-14 10:29:39 +07:00
Yoga Pangestu
470cc2240f refactor(formula): Change formulas property type to dynamic and update collection usage for improved data handling. 2025-12-14 08:02:43 +07:00
ifanprima130206
6b005ba109 feat(show-page): Add show product and article details page 2025-12-13 21:40:47 +07:00
Yoga Pangestu
a097f7ee15 refactor(formula): Enhance formula data management by switching to Collection for formulas and adding volume validation rule. 2025-12-11 22:53:27 +07:00
Yoga Pangestu
92b069eef5 feat(outlet, user): Implement URL-based toast notifications for creation and updates. 2025-12-11 22:22:46 +07:00
Yoga Pangestu
d2f101d49a fix(voucher): Correctly handle empty nullable fields in voucher form and refactor voucher management with Livewire 3 navigation and delete authorization. 2025-12-11 21:39:30 +07:00
Yoga Pangestu
ff775920ef feat(article): add article views column to datatable, refresh after article deletion, and correct 'Cuplikasn' typo in article form. 2025-12-11 19:53:57 +07:00
Yoga Pangestu
1c356d9fcc fix(perfume feature): Update perfume feature edit modal title from 'Ubah Kategori' to 'Ubah Keunggulan Parfum'. 2025-12-11 19:48:41 +07:00
Yoga Pangestu
7c7e26414b refactor(form): add return type declarations to Livewire form methods, adjust property types, and remove unused methods and docblocks. 2025-12-11 19:12:50 +07:00
Yoga Pangestu
784e50c00d refactor(datatable): Standardize Livewire datatable component paths and fix select query 2025-12-11 19:12:28 +07:00
Yoga Pangestu
a855fae353 refactor: standardize string concatenation, add type hints, and clean up docblocks across Livewire components and helpers. 2025-12-11 18:43:17 +07:00
Yoga Pangestu
acc107bbfb refactor: Add return type hints, implement authorization checks, and optimize formula data management across Livewire components. 2025-12-11 18:42:03 +07:00
Yoga Pangestu
99ca332f1c refactor: Enhance Livewire components and forms with type hints and authorization checks, and add new feature tests. 2025-12-11 18:39:06 +07:00
Yoga Pangestu
c3771287f4 feat: implement payroll slip PDF export with new Livewire method and views. 2025-12-11 15:09:53 +07:00
Yoga Pangestu
81a9753620 feat(perfume. bottle): implementasi testing
- kasih return type
- ubah array to collection di audit
- mengubah waktu refresh tabel menjadi 30 detik
2025-12-11 11:15:59 +07:00
Yoga Pangestu
f205aefbdc refactor(perfume, table): mengubah waktu refresh table menjadi 30 detik 2025-12-11 09:36:01 +07:00
Yoga Pangestu
c037accd33 feat(product): implementasi testing
- kasih return type
- ubah array to collection di audit
- mengubah waktu refresh tabel menjadi 30 detik
2025-12-11 09:35:39 +07:00
Yoga Pangestu
0c7ab27a78 refactor(brand): menambahkan return type 2025-12-10 14:19:11 +07:00
Yoga Pangestu
ba27aa4048 refactor(category): menambahkan return type dan menambahkan beberapa fungsi test 2025-12-10 14:13:34 +07:00
Yoga Pangestu
4d3cef520b feat(article): implementasi testing
- kasih return type
- kasih otorisasi untuk delete
-  type di otorisasi table
2025-12-10 13:48:41 +07:00
Yoga Pangestu
07fd37f193 fix(component): menyesuaikan path pemanggilan component 2025-12-10 13:28:47 +07:00
Yoga Pangestu
77d91b977f feat(faq): implemntasi testing
- kasih return type
- menyesuaikan factory
- mengganti modalName
- menyesuaikan seeder
- menyesuaikan panggil component
2025-12-10 13:26:44 +07:00
Yoga Pangestu
c75d750de0 feat(breadcat): membuat fitur hapus
- implementasi testing
- use HashableId di model
- kasih return type
- menyesuaikan factory
- menyesuaikan modalname
- menambahkan permission untuk delet
2025-12-10 13:25:47 +07:00
Yoga Pangestu
fb01f6ce6c feat(choose us & perfume feature): implementasi testing
- memperbaiki pemanggilan component karena sebelumnya dirubah path nya
- kasih return type
- kasih HasFactory doi model
2025-12-10 11:57:42 +07:00
Yoga Pangestu
224ea30a2a feat(setting): implementasi maintenance mode
- membuat config baru untuk secret key
- implementasi test
- menyesuaikan validasi
- kasih return type
2025-12-10 11:38:44 +07:00
Yoga Pangestu
2b5983fb2a fix(user): memperbaiki attach role dan mengubha tipe data prop gender ke int
- kasih otorisasi saat delete dan reset password
- memperbaiki testnya
- kasih kondisi untuk data kosong jangan di tampilkan di view
2025-12-10 08:36:29 +07:00
Yoga Pangestu
d365c6c8f8 fix(outlet): salah permission untuk delete, malah kasih 'create outlet' 2025-12-10 08:30:28 +07:00
Yoga Pangestu
1580ed9be0 fix(outlet): ganti otorisasi 2025-12-09 21:13:43 +07:00
Yoga Pangestu
565505aa64 refactor(outlet): kasih kondisi ketika opening hours empty dan kasih return type untuk traitnya 2025-12-09 21:11:10 +07:00
Yoga Pangestu
0d5d47849a refactor: tier 2025-12-09 20:45:41 +07:00
Yoga Pangestu
f75c5c6300 refactor(formula): memindahkan otorisasi ke atas 2025-12-09 20:44:10 +07:00
Yoga Pangestu
5399505808 refactor(formula): merubah dari array menjadi collection dan menyesuaikan semua nya tentang fitur tersebut 2025-12-09 18:18:31 +07:00
Yoga Pangestu
a99d7863b9 refactor(user): memisahkan menjadi tangung jawab " kecil
- menghapus map dan toArray()
- menyesuaikan view dengan perubahan tersebut
- menyesuaikan testing
- kasih return type
2025-12-09 15:52:38 +07:00
Yoga Pangestu
977b191ccb refactor(outlet): menjadikan kode nya clean code
- menyesuaikan testing
- menghapus route untuk delete karena tidak lewat route
- menyesuaikan tipe prop dan lainnya
2025-12-09 13:32:33 +07:00
Yoga Pangestu
23a2bd580c refactor(tier): memindahkan file tiers.blade.php ke dalam folder tier dan mengubah namanya menjadi index.blade.php dan menyesuaiakn test dan component nya 2025-12-09 09:25:18 +07:00
Yoga Pangestu
8dcc57673d refactor(auth): menggunakan class form, menyesuaikan view dan test atas pemindahan tersebut 2025-12-08 15:16:07 +07:00
Yoga Pangestu
d27195a053 feat(brand): implementasi testing dan fix table untuk validasi unik 2025-12-08 13:42:47 +07:00
Yoga Pangestu
c46702a490 feat(category): implementasi testingdan menghapus validasi string untuk description 2025-12-08 13:32:12 +07:00
Yoga Pangestu
a4dfdfdc6a fix(customer): kasih whereHas('order') untuk top member 2025-12-08 13:11:11 +07:00
Yoga Pangestu
bd57eada37 fic(voucher): convert string kosong ke null 2025-12-08 11:25:45 +07:00
Yoga Pangestu
b2069964f5 fix(voucher): set value untuk tags. menghapus fungsi sanitizeIntegers() dan unset available_count saat update 2025-12-08 11:07:59 +07:00
Yoga Pangestu
eef87d176f feat(tier): implementasi test dan memperbaiki after create and update di component nya 2025-12-08 10:04:38 +07:00
Yoga Pangestu
44b8f2a9d8 refactor(user): memperbaiki dan menyesuaikan user test
- menjadikan address bertipe nullable string
- memasukan key resign_date ke crud
2025-12-07 22:12:50 +07:00
Yoga Pangestu
129d4184df refactor: hapus selected outlets untuk ringkasan dan analiss 2025-12-07 20:19:02 +07:00
Yoga Pangestu
4078201b03 feat(voucher): menambahkan beberapa kolom baru
- membuat class enum IsShow
- menyesuaikan seeder
- menambahkan input kolom baru ke form
- membuat handle crud nya
2025-12-05 19:26:04 +07:00
Yoga Pangestu
f874c36486 refactor(voucher): menyesuaikanroute dan penempatan file di dalam folder, serta membuat fungsi untuk voucher 2025-12-05 19:07:26 +07:00
Yoga Pangestu
1aa8f3da42 refactor(home): membuat layouting
- memperbaiki custom js
- menyimpan menu untuk header di view service dan di foreach
- menghapus file yang tidak berguna
- membuat halaman outlet
2025-12-05 14:20:56 +07:00
Yoga Pangestu
358ca2d932 Merge branch 'homepage' of https://github.com/pangestuyoga/pangestu-yadiparfum 2025-12-04 13:58:23 +07:00
ifanprima130206
4afaa3a878 feat(homepage): New Homepage 2025-12-03 22:28:45 +07:00
Yoga Pangestu
cf2c90b8d0 chore(login & register): menghapus return type 2025-12-03 21:08:41 +07:00
Yoga Pangestu
bbab732bd2 refactor(register): memisahkan tanggung jawab menjadi masing" fungsi dan memberikan return type 2025-12-03 21:04:19 +07:00
Yoga Pangestu
ebf6cd78ea refactor(login): memecah fungsi login menjadi beberapa bagian untuk clean code
- menyesuaikan pesan toast
- menambahkan tanda required di form label
2025-12-03 20:37:41 +07:00
Yoga Pangestu
67c060476d feat(analysis): default outlet 2025-12-01 19:52:01 +07:00
Yoga Pangestu
7f7d597116 fest(auth): implementasi fitur lupa kata sandi 2025-11-27 08:54:41 +07:00
Yoga Pangestu
9b25af9ef0 feat(stock opname): implementasi module/fitur stock opname 2025-11-24 17:02:25 +07:00
Yoga Pangestu
9d021b31c5 refactor: remove WhatsApp settings and related components 2025-11-22 23:13:51 +07:00
Yoga Pangestu
86325dabde feat(account-settings): consolidate account, profile, and password management into a single component and update routing 2025-11-22 22:34:41 +07:00
Yoga Pangestu
d0c41e9d89 feat(faqs): migrate FAQ management to information section and update routing 2025-11-21 23:14:45 +07:00
Yoga Pangestu
d6f26163f6 refactor(price-requests): migrate price request management to information section and update routing 2025-11-21 23:11:49 +07:00
Yoga Pangestu
8e1238a2dd feat(broadcast): implement broadcast management 2025-11-21 21:58:24 +07:00
Yoga Pangestu
fb424c4192 chore: run pint 2025-11-21 15:30:50 +07:00
Yoga Pangestu
396440eda7 feat(price request): membuat enum status
- membuat datatables
- membuat logika untuk handle approve dan reject
- casting dan scope model
- membuat badge di sidebar untuk counting data yang belum disetujui
- menyesuaikan logika untuk mengajukan harga beli dengan skema table yang baru
- menyesuaikan skema table yang baru
- menyesuaikan parameter yang dikriim untuk pengajuan
- menyesuaikan logika table
- membuat permission
2025-11-21 14:58:49 +07:00
Yoga Pangestu
dd70c72c92 refactor(push notification): merubah style message nya supaya lebih friendly dan menarik 2025-11-17 23:23:37 +07:00
Yoga Pangestu
fb5e85d3c4 feat(order): menambahkan format currecny di push notification 2025-11-17 22:03:41 +07:00
Yoga Pangestu
88217e548e fix(cog): memperbaiki kondisi untuk show harga jual 2025-11-17 21:56:53 +07:00
Yoga Pangestu
44697030f8 feat(order): membuat tombol print di datatable
- membuat fitur print
- after create bisa pangsung print
2025-11-17 21:49:58 +07:00
Yoga Pangestu
ae8a5e4ce8 refactor(permission): menghapus permission view cogs dan menyesuaikan kembali semua kondisi yang memakai itu dan diganti dengan roles 2025-11-17 16:07:59 +07:00
Yoga Pangestu
70d7dc45b6 fix(gods): menyesuaikan cogs saat yang create datanya adalah leader 2025-11-17 15:55:22 +07:00
Yoga Pangestu
72b8a922b4 fix(logout): remove navigate true 2025-11-17 15:47:16 +07:00
Yoga Pangestu
aca31921cf refactor(component): menghapus navigate true untuk form yang pindah halaman 2025-11-17 15:31:01 +07:00
Yoga Pangestu
dc35b6f63c fic(voucher): cleanup availabel_count 2025-11-17 15:26:08 +07:00
Yoga Pangestu
236242bde7 fix(push notification): pemanggilannya seharusnya after create 2025-11-17 15:21:50 +07:00
Yoga Pangestu
614a4597a0 feat(order): where outlet by user dan memperbaiki push notification 2025-11-16 22:54:18 +07:00
Yoga Pangestu
c835c677d4 refactor(order): data brang sesuai toko 2025-11-16 19:20:38 +07:00
Yoga Pangestu
ad5c5b5577 fix(overview): menyesuaikan default selected outlets 2025-11-16 18:27:37 +07:00
Yoga Pangestu
8ebb1f5fe8 feat(expense): menambahan kolom baru yaitu user_id
- membuat relasi nya di model
- menyesuaikan logika crudnya
- menampilkan nama pegawai di table
- menyesuaikan data yang di tampilkan dan action nya di tab;e
2025-11-16 18:24:22 +07:00
Yoga Pangestu
cf0556574d feat(gods table): menyesuaikan kueri 2025-11-16 17:52:34 +07:00
Yoga Pangestu
8b700bd388 feat(payroll): membuat scope paid dan menerapkan nya di analisa 2025-11-16 17:25:40 +07:00
Yoga Pangestu
78661af615 feat(push notification): menambahkan notification click di worker nya dan menambahan url nya di componentnya 2025-11-16 16:15:53 +07:00
Yoga Pangestu
55c0defdbe fix(register): navigate user after register 2025-11-16 16:01:56 +07:00
Yoga Pangestu
a363324e7e feat(push notification): menambahkan di register 2025-11-16 15:59:21 +07:00
Yoga Pangestu
5fa0944811 feat(push notification): menjadikan notificakasi menggunakan job dan dispatch di beberapa komponen yang membuatuhkan 2025-11-16 15:33:51 +07:00
Yoga Pangestu
fd5a85400c feat(push notification): membuat trait untuk simpan data subcription dan use di di semua component 2025-11-16 14:38:01 +07:00
Yoga Pangestu
163a90b857 fix(push notification): menghindari duplikasi subscription 2025-11-16 13:13:50 +07:00
Yoga Pangestu
eadf927e57 refactor(configuration): menghapus livewire, rappasoft dan flux dari konfigurasi manual 2025-11-15 19:29:43 +07:00
Yoga Pangestu
d9df1e369b feat(push notification): add notification 2025-11-15 13:32:38 +07:00
Yoga Pangestu
0ae236d2ca fix(validation attribute): menyesuaikan yang multiple 2025-11-14 10:46:31 +07:00
Yoga Pangestu
9a3b4a57e2 fix(:datatable): menyesuaikan kolom aksi yang ditampilkan berdasarkan permission yang dimiliki 2025-11-14 09:16:03 +07:00
Yoga Pangestu
878644c30d feat(barang): menambahakan kondisi untuk audit dan button, leader tidak bisa audit 2025-11-14 09:03:43 +07:00
Yoga Pangestu
4d51e7b20c feat(formula): menambahkan pengecekan duplikasi data
- menyesuaikan tampilan
- role admin bias lihat rumus
- memberikan validasi untuk volume tidak boleh lebih besar dari size
2025-11-14 08:40:46 +07:00
Yoga Pangestu
be9816fde2 feat(overview): menambahkan card baru yaitu untuk belanja toko 2025-11-13 20:22:34 +07:00
Yoga Pangestu
fac455e7f1 refactor(datatable): menjadikan dinamis kolom pengatur sorting 2025-11-13 20:17:52 +07:00
Yoga Pangestu
58e2c04116 feat: menambahkan validation attribute 2025-11-13 19:43:30 +07:00
Yoga Pangestu
4988fe4420 feat(overview, analysa): memberikan pengecekan untuk stats
- type label untuk chart
- membuat permission baru
2025-11-13 19:09:54 +07:00
Yoga Pangestu
c63ec1b30e fix(profile): menghapus validasi required untuk alamat dan menyesuaikan inputnya 2025-11-13 14:41:10 +07:00
Yoga Pangestu
637b35c63f fix(user): menghapus status suspend
- menyesuaikan logika resign date
- memperbaiki select data untuk resign date dan view nya
2025-11-13 13:27:54 +07:00
Yoga Pangestu
17cc28c041 fi(user): memperbaiki kode untuk employee
- membuat fitur reset password
- menambahkan foreign id di relasi articles
- menambahkan permission
2025-11-13 13:03:11 +07:00
Yoga Pangestu
dc7617a269 fix(user): membuat address menjadi nullable 2025-11-13 11:32:34 +07:00
Yoga Pangestu
2f0a8fe2c6 feat(overview): menambahkan point record ketika daftar di overview 2025-11-13 11:20:52 +07:00
Yoga Pangestu
48271c2bf2 feat(overview): munculkan form untuk jadi member si overview 2025-11-13 10:59:00 +07:00
Yoga Pangestu
90a64ba46c fix(membership): kasih kondisi ketika user tidak punya data member tapi tetap bisa login 2025-11-13 08:51:14 +07:00
Yoga Pangestu
91397602ec feat(membership): membuat halaman membership untuk member 2025-11-12 20:41:33 +07:00
Yoga Pangestu
422e4d876f fix(register): update uses_count gagal 2025-11-12 20:10:50 +07:00
Yoga Pangestu
96c2461b7c feat(user): menambahkan scope untuk mengecualikan developer dan menuliskannya di kueri analisa 2025-11-12 20:02:23 +07:00
Yoga Pangestu
063342841b fix(user): convert to int sebelum attach role_ids 2025-11-12 19:57:07 +07:00
Yoga Pangestu
eb089df36a fix(tier): hide modal after create or update 2025-11-12 19:33:48 +07:00
Yoga Pangestu
a53b34083f fic(product, bottle): type pas save data 2025-11-12 19:28:44 +07:00
Yoga Pangestu
456e7be055 feat(voucher): membuat halaman voucher 2025-11-12 14:54:30 +07:00
Yoga Pangestu
8e6029eb7e refactor(member): menyesuaikan route dan penempatan file 2025-11-12 13:03:49 +07:00
Yoga Pangestu
5c9fd73bd3 fix(membership): mengubah total_points menjadi tier_points 2025-11-12 12:06:10 +07:00
Yoga Pangestu
c732c62cc7 refactor(login): menyesuaikan redirect after login sesuai dengan roles yang dimiliki 2025-11-12 11:38:04 +07:00
Yoga Pangestu
c5446b0dec refactor(customer): mengubah route, file dan name nya dari customer ke member 2025-11-12 11:37:19 +07:00
Yoga Pangestu
cdb252bbba feat(register): assign role after register 2025-11-12 11:35:45 +07:00
Yoga Pangestu
6e0fc82ae0 feat(user): menambahkan referral code saat create data 2025-11-12 10:45:58 +07:00
Yoga Pangestu
61fae6a4f4 chore(user): change validation attributes 2025-11-12 10:31:21 +07:00
Yoga Pangestu
d203df9cd8 refactor(customer): merubah created at dari table users ke customers
- menambahkan counting total order dan total pembayaran nya di table
- membuat stats
- menambahkan kolom terakhir order di datatable
2025-11-12 10:27:07 +07:00
Yoga Pangestu
30c30c7642 feat(voucher): membuat stats dan menambahkan scope di model 2025-11-12 09:24:47 +07:00
Yoga Pangestu
54a7fcec5a feat(tier): menambahkan counting total hadiah
- updated data tiers saat action reward
- menyesuaikan kueri tiers nya
2025-11-12 09:16:26 +07:00
Yoga Pangestu
99bb26924b feat(user): menambahkan placeholder ke input tanggal
- hide user yang punya role Developer
- menambahkan input role_ids dan menyesuaikan logikanya
- menambahkan kueri skop
2025-11-12 09:06:59 +07:00
Yoga Pangestu
95779ff4c8 feat(analysis): membuat filter by date 2025-11-11 23:33:17 +07:00
Yoga Pangestu
00341e13d0 feat(analysis): membuat filter period 2025-11-11 23:18:58 +07:00
Yoga Pangestu
9cfb5b75a7 refactor(chart): prop outlets dikirim dari parent 2025-11-11 15:58:49 +07:00
Yoga Pangestu
49b3d60c53 chore(analysis): remove prop data 2025-11-11 15:38:12 +07:00
Yoga Pangestu
98995d9f5e feat(analysis): membuat chart 2025-11-11 15:35:47 +07:00
Yoga Pangestu
11f6b70438 feat(anaylis): page baru dan juga sudah ada isinya 2025-11-11 14:17:15 +07:00
Yoga Pangestu
6345a3f388 refactor(overview): menghapus query method 2025-11-11 11:30:22 +07:00
Yoga Pangestu
dbce89fe37 feat(gods): menambahkan point_per_ml di form 2025-11-11 11:21:02 +07:00
Yoga Pangestu
33ebebbe68 feat(overview): membuat counting data 2025-11-11 10:47:05 +07:00
Yoga Pangestu
0019633886 fix(order): calculate diskon 2025-11-11 01:41:10 +07:00
Yoga Pangestu
2a7ccac081 fix(reward tier): menghapus kolom how_to_get 2025-11-09 20:06:56 +07:00