Commit Graph

342 Commits

Author SHA1 Message Date
Yoga Pangestu
d2578fff34 refactor: Remove point_per_ml and point_per_pcs fields from catalog entities. 2025-12-20 09:20:55 +07:00
Yoga Pangestu
29817744b3 feat: Dynamically load best-selling perfumes in jumbotron and remove hardcoded testimonials. 2025-12-20 09:18:33 +07:00
Yoga Pangestu
9bd6997359 feat: Implement testimonial management with dedicated UI abnd database 2025-12-20 07:36:03 +07:00
Yoga Pangestu
cb9e61ee7f feat: Add return type hints to Livewire component methods. 2025-12-19 21:33:37 +07:00
Yoga Pangestu
5cd4a98b09 refactor: Add return type hints to Livewire methods 2025-12-19 21:31:57 +07:00
Yoga Pangestu
de6b1aced4 feat: Calculate total customer count from all customers and update jumbotron display text. 2025-12-19 21:27:16 +07:00
Yoga Pangestu
26db5d34dc feat: Dynamically display recent members and total count in the home jumbotron, add active state styling to header navigation, and redesign the FAQ page hero section. 2025-12-19 21:14:40 +07:00
Yoga Pangestu
de89ff5047 refactor: move home page header and footer components to new UI sections and update related routes and Livewire components. 2025-12-19 21:00:41 +07:00
Yoga Pangestu
4f71bbc68d Merge branch 'homepage' of https://github.com/pangestuyoga/pangestu-yadiparfum 2025-12-19 20:52:21 +07:00
Yoga Pangestu
4febd74674 feat: Implement member point redemption system with studio verification and enhanced reward management. 2025-12-19 20:41:04 +07:00
Yoga Pangestu
e07a2386cf feat: Implement loyalty reward management with dedicated routes, model, UI, and permissions. 2025-12-18 20:16:37 +07:00
Yoga Pangestu
b132f86ed7 refactor: Migrate loyalty tier system from points to spending and remove tier rewards. 2025-12-18 19:27:50 +07:00
Yoga Pangestu
22af59f641 feat(broadcast): menambahkan kolom baru yaitu link dan menyesuaikan logikanya 2025-12-18 15:27:07 +07:00
Yoga Pangestu
b7c32d2ffb feat(broadcast): tambahkan developer ke dalam daftar push notifikasi 2025-12-18 15:06:29 +07:00
Yoga Pangestu
c650d8d58f refactor: Remove deleteRoute parameter from customer delete action component. 2025-12-18 14:56:03 +07:00
Yoga Pangestu
bc9e929a50 feat: Add voucher visibility functionality and refactor quota/available count display in the voucher table. 2025-12-18 14:47:15 +07:00
Yoga Pangestu
d25dd7b9c3 feat: Allow vouchers to be assigned to specific loyalty tiers. 2025-12-18 14:18:12 +07:00
Yoga Pangestu
5d39f002f1 feat: Implement stock activity logging when outlets are detached from items and add a DELETED status to AuditStockStatus. 2025-12-18 11:08:53 +07:00
Yoga Pangestu
4aad6aa730 refactor: Consistently handle formula data as a PHP array in Livewire component and view. 2025-12-18 10:17:05 +07:00
Yoga Pangestu
9cf985e8f9 feat: Implement withTrashed for polymorphic relationships, enable live updates for order form inputs, and eager load purchase items. 2025-12-18 10:11:48 +07:00
Yoga Pangestu
12053e18f7 feat: add WithRequestNotification trait and update purchase creation to use redirect-based success messages. 2025-12-18 10:03:21 +07:00
Yoga Pangestu
078a541686 feat: Implement user-specific payroll filtering and enforce authorization for payroll access and export. 2025-12-18 09:54:11 +07:00
Yoga Pangestu
40db1c006c feat: Implement automated payroll closing with push notifications and refine payroll filtering and status management. 2025-12-18 09:39:33 +07:00
Yoga Pangestu
d654e372cf feat: Add 'Catatan' column to purchases table and update anonymous function syntax. 2025-12-17 04:40:40 +07:00
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