Commit Graph

167 Commits

Author SHA1 Message Date
Yoga Pangestu
703cdb8b8b feat: add complete action for cuttings with notification and update route 2026-08-14 22:13:22 +07:00
Yoga Pangestu
9ab2b0505c feat: enhance notification system with new NotificationService methods and integrate notifications for various actions in services 2026-08-14 21:37:03 +07:00
Yoga Pangestu
c2354440e3 feat: implement lazy loading for restock items, optimize data fetching in Restock service and controller 2026-08-14 07:17:34 +07:00
Yoga Pangestu
0344648b74 feat: implement lazy loading for transaction items, optimize data fetching in Transaction service and controller 2026-08-14 07:07:13 +07:00
Yoga Pangestu
910be15abc feat: implement lazy loading for cutting materials and combinations, optimize data fetching in Cutting service and controller 2026-08-14 07:02:51 +07:00
Yoga Pangestu
113f9a7c4f feat: implement lazy loading for purchase items and optimize data fetching 2026-08-14 06:55:32 +07:00
Yoga Pangestu
ce901c2c8b feat: add variants endpoint and update product/raw material models for variant handling 2026-08-14 06:48:28 +07:00
Yoga Pangestu
b954e3cb84 refactor: update AnalysisService and index.tsx to streamline stock calculations and remove unused values 2026-08-14 06:07:47 +07:00
Yoga Pangestu
ae1cc7b9a9 feat: enhance expense summary and monthly expense calculations with user role-based purchase visibility 2026-08-14 04:21:26 +07:00
Yoga Pangestu
7fa20fbc3c feat: update payroll generation logic to schedule on the 5th of each month and adjust attendance penalties calculation 2026-08-14 04:08:13 +07:00
Yoga Pangestu
7976a457f5 refactor: improve code readability by standardizing spacing and formatting in TransactionService 2026-08-14 03:31:52 +07:00
Yoga Pangestu
49841a662c Refactor marketplace settings: remove MarketplaceFeeRule, update related database and UI components
- Deleted MarketplaceFeeRule class and its usage in settings migration.
- Removed 'is_affiliate' field from orders and related factories.
- Updated notifications table to use longText for body.
- Adjusted role permissions by removing marketplace-related permissions.
- Cleaned up admin settings page by removing marketplace settings section and related components.
- Updated tests to reflect the removal of marketplace settings and ensure other settings remain unaffected.
2026-08-14 03:20:18 +07:00
Yoga Pangestu
0aae00a96b feat: enhance revenue analysis by adding payroll and expense calculations 2026-08-14 00:32:37 +07:00
Yoga Pangestu
95df2e9dc7 feat: optimize cash overview calculations for total balance, deposits, and withdrawals 2026-08-13 21:20:53 +07:00
Yoga Pangestu
8053ea2db4 feat: Enhance leave request and transaction management with user-specific data
- Added current user ID to leave request index for better context.
- Updated transaction management to include user-specific filters and summaries.
- Enhanced analysis service methods to incorporate user context for attendance and revenue metrics.
- Modified dashboard service to reflect user-specific attendance and financial summaries.
- Implemented role-based access control in leave request service for update and delete actions.
- Adjusted frontend components to utilize user-specific data for leave requests and transactions.
- Removed unused permissions from role seeder for cleaner access control.
2026-08-13 21:08:39 +07:00
Yoga Pangestu
b905c0a2c6 feat: update EmployeeAdvance status values and related logic, modify notifications accordingly 2026-08-13 17:36:55 +07:00
Yoga Pangestu
1c9532199c feat: add is_featured attribute and toggle functionality for products 2026-08-13 12:02:49 +07:00
Yoga Pangestu
5c1343d575 feat: remove subtotal from restock model, migration, and related components 2026-08-13 11:30:20 +07:00
Yoga Pangestu
a778e2f499 feat: add cutting detail view and enhance cutting data handling in various components 2026-08-13 10:35:04 +07:00
Yoga Pangestu
5182dcc012 feat: enhance search functionality in paginated methods to include related product and raw material variants 2026-08-13 08:48:44 +07:00
Yoga Pangestu
1f41f04199 feat: remove unused media collection clearing in destroy methods and add CleanupOrphanedMediaJob for orphaned media management 2026-08-13 00:39:46 +07:00
Yoga Pangestu
ed93fd3eac feat: enhance cutting management with product name and status filters in the index view 2026-08-13 00:09:33 +07:00
Yoga Pangestu
1b48f5c24f feat: implement media handling for user profiles and employee management, including photo uploads and display 2026-08-12 21:57:28 +07:00
Yoga Pangestu
5335e5ad58 feat: add receipt conversion URLs for media handling across various services and components 2026-08-12 21:35:46 +07:00
Yoga Pangestu
ef987360f4 feat: enhance raw material filtering with name selection and add distinct name retrieval 2026-08-12 21:01:03 +07:00
Yoga Pangestu
278493b4c6 refactor: optimize product name retrieval and enhance category selection in ProductIndex component 2026-08-12 20:38:11 +07:00
Yoga Pangestu
ff8dc64a27 feat: add media handling capabilities to multiple models and improve media conversion process 2026-08-12 20:36:35 +07:00
Yoga Pangestu
a3c642e173 refactor: standardize spacing in lambda functions and SQL queries across services 2026-08-12 20:17:09 +07:00
Yoga Pangestu
7164bd96d3 feat: add validation for product prices in transaction creation and editing 2026-08-12 20:16:57 +07:00
Yoga Pangestu
e9faa6a322 feat: update media handling to use 'images' collection and improve path generation
- Refactored CustomPathGenerator to handle S3 keys and default paths more effectively.
- Changed media collection references from 'photos' to 'images' across various services.
- Updated methods to retrieve media URLs using the new path generation logic.
- Enhanced transaction-related components to display associated images.
2026-08-12 12:11:29 +07:00
Yoga Pangestu
27beb38e55 feat: add revenue trend analysis feature with chart visualization in Analysis component 2026-08-09 16:45:53 +07:00
Yoga Pangestu
485ae8e5ce feat: add getNames method to ProductService for retrieving product names 2026-08-09 16:31:03 +07:00
Yoga Pangestu
0cce4ee73d feat: enhance StatCard component with description prop and update chart tooltips for better localization
- Added optional description prop to StatCard for additional context.
- Updated ChartTooltipContent to format numbers according to Indonesian locale.
- Refactored revenue and expense charts in the Analysis page to use new chart configurations and improved tooltip content.
- Introduced DashboardPieChart component for displaying order statistics by channel, payment type, marketing, and status.
- Adjusted revenue summary calculations in the Dashboard page to reflect changes in data structure.
2026-08-09 16:30:16 +07:00
Yoga Pangestu
3fab97e7e5 fix: correct array conversion in getForCutting method of RawMaterialVariantService 2026-08-09 15:08:00 +07:00
Yoga Pangestu
2bb814702a feat: add ChartContainer and related components for enhanced charting capabilities in the dashboard
- Introduced ChartContainer, ChartTooltip, ChartTooltipContent, ChartLegend, and ChartLegendContent components to streamline chart rendering and tooltip management.
- Replaced existing donut chart implementation with a new pie chart component utilizing the new charting system.
- Updated dashboard to utilize the new chart components, improving maintainability and visual consistency.
- Refactored chart data handling and configuration for better integration with the new charting components.
2026-08-09 12:52:12 +07:00
Yoga Pangestu
a1ba9564c7 fix: correct total calculation by adjusting discount and negotiation price handling in transaction create and edit components 2026-08-09 12:31:01 +07:00
Yoga Pangestu
eba21d3d3a refactor: clean up code by removing unused imports and improving formatting across multiple files 2026-08-09 11:50:38 +07:00
Yoga Pangestu
0023309a8f Refactor services to improve role checks and streamline data retrieval
- Updated CustomerService to simplify getAll method.
- Refactored ProductService to utilize HasRoleChecks trait and improved role verification logic.
- Enhanced ProductVariantService with new methods for fetching data for restocking and transactions.
- Cleaned up RawMaterialService by removing unused methods and improving data retrieval.
- Adjusted SupplierService to streamline getAll method.
- Refactored RoleService to use Spatie's Role model and improved role filtering logic.
- Updated NotificationService to handle role labels more effectively.
- Improved StockMutationService by removing redundant paginated method.
- Cleaned up various frontend components to directly accept necessary props instead of nested data objects.
- Updated tests to reflect changes in service method names and ensure proper notification handling.
2026-08-09 11:33:25 +07:00
Yoga Pangestu
46af27e537 refactor: rename create/delete methods to store/destroy across multiple services; add transaction handling for cash and stock adjustments 2026-08-08 14:31:58 +07:00
Yoga Pangestu
6627422655 feat: enhance analysis page with additional revenue metrics and improve data handling 2026-08-08 13:40:18 +07:00
Yoga Pangestu
f7c13826eb feat: update dashboard titles to reflect today's data for attendance, revenue, and expenses 2026-08-08 12:41:52 +07:00
Yoga Pangestu
14140c39cc feat: enhance attendance index with leave tracking and employee details 2026-08-07 15:27:48 +07:00
Yoga Pangestu
85556f8779 feat: enhance product management with approval and rejection workflows
- Added approval and rejection functionality for products, including new routes and methods in the ProductController.
- Implemented UI changes to display product status (pending, rejected) with appropriate badges and actions.
- Introduced a RejectDialog component for providing rejection reasons.
- Updated product columns to handle new actions for approving and rejecting products.
- Enhanced variant management to restrict actions based on product status.
- Refactored various components to improve code organization and readability.
2026-08-07 11:23:41 +07:00
Yoga Pangestu
9e60a1cf39 feat: add tiktok and shopee order IDs to transaction model and UI components 2026-08-07 09:04:16 +07:00
Yoga Pangestu
c6a87a64c9 feat: enhance dashboard with detailed statistics and charts
- Refactored the dashboard component to include attendance, revenue, and expense summaries.
- Added donut charts for order statistics by channel, payment type, marketing, and status.
- Implemented a greeting message based on the current time and user information.
- Updated routing to use DashboardController for the dashboard view.
- Introduced a new AnalysisController for future analysis features.
2026-08-07 08:35:01 +07:00
Yoga Pangestu
bc02af2a66 feat: enhance attendance management with employee-specific data and location tracking 2026-08-06 23:43:49 +07:00
Yoga Pangestu
a10a1700b0 feat: add visibility check for leave requests based on user roles 2026-08-06 17:39:56 +07:00
Yoga Pangestu
66d6c843c3 feat: add base64 media registration method with support for multiple image formats and S3 storage 2026-08-06 17:29:56 +07:00
Yoga Pangestu
8aa4e83cd8 feat: enhance role selection in Employee edit page; add conditional rendering based on view permissions and update role filtering in EmployeeService 2026-08-06 17:18:53 +07:00
Yoga Pangestu
ab217a8d79 feat: enhance Attendance model date formatting; add restricted roles check in EmployeeService; update RolePermissionSeeder with new payroll permissions 2026-08-06 17:16:50 +07:00
Yoga Pangestu
8df17601ea feat: enhance EmployeeAdvanceService and ExpenseService with validation and transaction handling; update transaction columns for improved display 2026-08-06 17:12:22 +07:00
Yoga Pangestu
42e04673c6 feat: update CashTransactionType enum and improve transaction labels; refactor EmployeeAdvanceService and PayrollPeriodService for consistency 2026-08-06 15:26:46 +07:00
Yoga Pangestu
6ebcbc24c0 feat: add update status functionality for transactions with corresponding UI actions 2026-08-06 14:59:48 +07:00
Yoga Pangestu
1a5ac1dd85 feat: add date range filters and enhance transaction summary display 2026-08-06 14:41:10 +07:00
Yoga Pangestu
1d866d1b94 feat: add transaction summary feature with detailed metrics display 2026-08-06 14:25:44 +07:00
Yoga Pangestu
8399de9d2e feat: improve code readability by standardizing spacing and formatting in TransactionService 2026-08-06 14:17:44 +07:00
Yoga Pangestu
1fc058f974 feat: streamline lambda function syntax and enhance readability in RestockService 2026-08-06 14:01:37 +07:00
Yoga Pangestu
fe0c565196 feat: add product name filtering and retrieval in product management 2026-08-06 13:50:16 +07:00
Yoga Pangestu
58d45f8363 feat: add role-based visibility for employee management features 2026-08-06 13:41:26 +07:00
Yoga Pangestu
8eb3e565ec feat: enhance payroll period functionality with role-based visibility and improved data handling 2026-08-06 13:30:04 +07:00
Yoga Pangestu
54ad2edaf7 feat: implement employee advance payment functionality with history tracking 2026-08-06 12:09:53 +07:00
Yoga Pangestu
81b5db77e2 feat: add filtering options for employee advances by status in index view 2026-08-06 11:53:41 +07:00
Yoga Pangestu
71128002d7 refactor: streamline material validation and stock management in create and update methods of CuttingService 2026-08-06 10:41:41 +07:00
Yoga Pangestu
577329365a feat: add active and nonactive scopes to RawMaterial model and apply active scope in CuttingService 2026-08-06 09:57:01 +07:00
Yoga Pangestu
bcf5842c4a feat: enhance Purchase management with supplier filtering and pagination adjustments 2026-08-06 09:52:17 +07:00
Yoga Pangestu
fc1c84f420 refactor: remove readonly modifier from S3PresignedService property for consistency 2026-08-05 22:35:46 +07:00
Yoga Pangestu
705f0d3efa refactor: update select statements to use array syntax for improved readability 2026-08-05 20:45:16 +07:00
Yoga Pangestu
3f77a9436d refactor: improve formatting consistency in various models and services 2026-08-05 20:27:27 +07:00
Yoga Pangestu
b70a40af4d feat: implement sorting for lines in purchase and restock create/edit components; enhance user experience 2026-08-05 20:26:58 +07:00
Yoga Pangestu
0a688f1028 refactor: streamline user query methods for improved readability and maintainability 2026-08-04 23:15:00 +07:00
Yoga Pangestu
4517eeb7ee feat: enhance employee and leave request management
- Added roles property to Employee type and a new column for displaying employee roles in the employee table.
- Updated leave request columns to use formatted start and end dates instead of raw date strings.
- Enhanced leave request index to accept filter options for status dynamically.
- Refactored transaction index to support dynamic filter options for status, channel, and payment type.
- Introduced AGENTS.md for session notes detailing model relationships, casting, scopes, reorganizations, and conventions.
2026-08-04 23:03:56 +07:00
Yoga Pangestu
d90d2261ac feat: implement cash and stock handling traits for improved transaction management 2026-08-04 21:57:38 +07:00
Yoga Pangestu
72848d51d8 feat: add transaction management page with filtering and CRUD functionality
- Implemented TransactionIndex component for displaying transactions with pagination and filtering options.
- Created TransactionCardRow component for rendering individual transaction details.
- Added TransactionItemSubRow component for displaying detailed order items within a transaction.
- Integrated delete confirmation dialog for transaction deletion.
- Updated routes to include transaction management with appropriate permissions.
2026-08-04 10:37:28 +07:00
Yoga Pangestu
e7aa582572 feat: add cutting management functionality with CRUD operations
- Implemented CuttingIndex component for listing and managing cuttings.
- Added routes for cutting management in web.php.
- Created CuttingTest for testing cutting-related features including authorization, validation, and stock management.
- Updated roles create and edit pages to include necessary imports.
- Refactored settings and profile pages to streamline imports.
- Enhanced permissions checks for cutting management actions.
2026-08-04 02:24:11 +07:00
Yoga Pangestu
00a848747f feat: add reject price handling in restock management and update related components 2026-08-03 13:03:03 +07:00
Yoga Pangestu
cf0e772159 feat: implement restock management functionality
- Add RestockIndex component for displaying and managing restocks.
- Create RestockCardRow component for rendering individual restock items.
- Implement RestockItemSubRow component for displaying detailed item information.
- Define routes for restock management in web.php.
- Create RestockTest to cover various scenarios for restock creation, updating, and deletion.
- Ensure proper handling of permissions for restock actions.
- Add validation for restock data and ensure correct relationships are maintained.
2026-08-02 22:34:10 +07:00
Yoga Pangestu
38b4a31c6b refactor: update stock and quantity fields to use integer type across models, requests, factories, and migrations; introduce NumberInput component for consistent numeric input handling 2026-08-02 14:59:13 +07:00
Yoga Pangestu
9637671713 feat: enhance product management and purchase functionality
- Updated ProductIndex component to improve category and product filtering with memoization.
- Refactored Combobox components for better performance and usability.
- Added PurchaseController routes for managing purchases with appropriate permissions.
- Created comprehensive tests for purchase management, covering creation, updating, and deletion scenarios.
- Ensured proper handling of raw materials and their variants during purchase operations.
- Implemented validation for required fields in purchase creation and updates.
2026-08-02 14:07:16 +07:00
Yoga Pangestu
d82b7f13f2 refactor: replace map with transform for collection formatting in CashAccountService and ExpenseService 2026-08-02 01:31:39 +07:00
Yoga Pangestu
384460686e feat: implement raw material management features including CRUD operations and draft handling
- Added RawMaterialController and RawMaterialVariantController for managing raw materials and their variants.
- Introduced RawMaterialRequest and RawMaterialVariantRequest for validation.
- Implemented RawMaterialService and RawMaterialVariantService for business logic.
- Created hooks for saving drafts of raw materials.
- Developed UI components for creating, editing, and listing raw materials and variants.
2026-08-02 00:54:05 +07:00
Yoga Pangestu
d943c3a240 refactor: standardize pagination parameters and improve code formatting across multiple services 2026-08-01 22:51:24 +07:00
Yoga Pangestu
549e3e3bca feat: optimize product variant handling with bulk insertions and adjustments; enhance stock mutation recording 2026-08-01 19:26:47 +07:00
Yoga Pangestu
44dab8271f feat: implement stock mutation functionality with service and controller; add pagination and UI components 2026-08-01 17:30:05 +07:00
Yoga Pangestu
10db7bc5a2 Refactor product variant photo handling to support multiple images
- Updated ProductVariantService to handle multiple photo keys and URLs.
- Introduced FileUploadMultiple component for uploading multiple images.
- Modified product creation and editing forms to accommodate multiple photos.
- Adjusted data structures in product drafts and tests to reflect changes in photo handling.
- Enhanced image preview modal to navigate through multiple images.
2026-08-01 15:49:38 +07:00
Yoga Pangestu
15161b6ea4 feat: implement stock transfer functionality for product variants with validation and notifications 2026-08-01 15:15:38 +07:00
Yoga Pangestu
79cd9a8c39 feat: implement RegistersMedia trait for media handling across services 2026-08-01 13:36:32 +07:00
Yoga Pangestu
e3c0f14c43 feat: implement product variant management
- Add a custom hook `useCardTableExpand` for managing expandable card tables.
- Refactor product columns to include variant edit and delete handlers.
- Integrate `CardTable` component for displaying products with expandable variant details.
- Create `ProductCardRow` component for rendering product information in a card format.
- Implement variant editing functionality with a dedicated `ProductVariantEdit` component.
- Add `VariantSubRow` component to display variant details in a table format.
- Update routes to handle product variant editing and deletion.
- Enhance tests to cover variant editing and deletion scenarios.
2026-08-01 13:19:07 +07:00
Yoga Pangestu
95be00c9d1 feat: add push notification functionality and service worker
- Implemented push notifications with a service worker (sw.ts) to handle caching and notifications.
- Added API routes for push subscription and notification management in routes/api.php.
- Created NotificationTest to validate notification service functionality and ensure correct notifications are sent based on user roles and actions.
- Updated Permissions component to manage notification permissions and subscriptions.
- Enhanced CategoryIndex component to highlight categories based on notifications.
- Excluded service worker from TypeScript compilation in tsconfig.json.
- Updated Vite configuration to include service worker in the build process.
2026-08-01 11:36:20 +07:00
Yoga Pangestu
23cc327190 Refactor code for improved readability and consistency across multiple files
- Adjusted indentation and formatting in login, permissions, profile, and security pages for better readability.
- Enhanced the clarity of conditional statements and function calls in permissions and profile components.
- Updated type definitions in vite-env.d.ts for better code structure.
- Cleaned up array mapping syntax in ProductTest.php for consistency.
2026-08-01 10:14:47 +07:00
Yoga Pangestu
2a3e70b78d Refactor role management and pagination in admin panel
- Updated RoleIndex component to handle pagination, sorting, and searching for roles.
- Adjusted data structure for roles to include pagination details.
- Enhanced tests for various admin features (Finance, HR, Master) to validate pagination and data structure.
- Ensured all relevant tests check for data structure consistency, including total counts and pagination details.
2026-08-01 02:54:24 +07:00
Yoga Pangestu
dc8ecf6c52 Refactor code structure for improved readability and maintainability 2026-08-01 02:11:56 +07:00
Yoga Pangestu
04bff9773a refactor: apply consistent formatting and organization across multiple files 2026-07-31 23:16:34 +07:00
Yoga Pangestu
e9237f857e feat: add role management functionality with create, edit, and delete capabilities
- Implemented RoleEdit component for editing roles with permissions.
- Created RoleIndex component for listing roles with delete confirmation.
- Added routes for role management in web.php with appropriate permissions.
- Developed RoleTest to cover authentication, authorization, and data integrity for role management.
2026-07-31 23:15:55 +07:00
Yoga Pangestu
67e5a6271f Add tests for CheckAttendancePenaltiesJob to validate attendance penalties logic
- Implement tests to ensure job skips execution on weekends, when penalties are zero, or when no payroll period exists.
- Validate late penalty creation for late check-ins and ensure no penalties for on-time or early check-ins.
- Test absent penalties for employees without attendance records.
- Ensure no duplicate penalties are created and that payroll recalculations are accurate after penalties are applied.
- Handle multiple employees and edge cases, including employees without associated users.
- Verify that the job can be dispatched to the queue and has the correct retry configuration.
2026-07-31 11:13:46 +07:00
Yoga Pangestu
d07eb3498a feat: update homepage settings to use image keys and add presigned URL retrieval 2026-07-31 10:30:25 +07:00
Yoga Pangestu
a1a73cb222 Add admin settings routes and corresponding feature tests
- Introduced routes for managing admin settings including system, homepage, social media, marketplace, and HR settings.
- Created a comprehensive test suite for the AdminSettingsController to ensure proper functionality and validation of settings updates.
- Implemented tests for authentication, data integrity, and realistic user scenarios to validate the settings management process.
2026-07-31 01:04:14 +07:00
Yoga Pangestu
6dbe9da581 feat: add payroll management features including payroll periods, adjustments, and payment processing
- Implemented routes for managing payroll periods, including current, close, and reopen functionalities.
- Added payroll payment and cancellation routes.
- Introduced payroll adjustments with store and delete functionalities.
- Created comprehensive feature tests for payroll management, covering authentication, CRUD operations, and business logic.
- Ensured proper handling of payroll adjustments and their impact on payroll totals.
- Developed tests for generating payrolls and managing payroll periods, ensuring accurate status transitions and data integrity.
2026-07-30 17:06:52 +07:00
Yoga Pangestu
cc2b6c6b3a feat: add filtering options for leave requests by status in LeaveRequestIndex component 2026-07-30 13:12:16 +07:00
Yoga Pangestu
3f12a65b05 feat: implement transaction type filtering in CashAccount management 2026-07-30 12:40:26 +07:00
Yoga Pangestu
bc810c93d2 feat: enhance Employee management with filtering options and improved data handling
- Updated EmployeeController to accept request filters for employment status, activity status, and gender.
- Modified EmployeeService to support filtering in the getAll method.
- Enhanced Employee index page with a filter toolbar for better user experience.
- Fixed route parameter naming for employee-related routes.
- Added comprehensive tests for employee index functionality and filtering capabilities.
2026-07-30 11:26:11 +07:00