Commit Graph

122 Commits

Author SHA1 Message Date
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
81f8135273 feat: add role selection to employee create and edit forms with conditional fields 2026-08-04 22:51:56 +07:00
Yoga Pangestu
318afca796 feat: add CurrencyStripping trait for consistent currency handling across requests 2026-08-04 22:11:50 +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
8970c47a4a refactor: update constructors to use readonly properties for service dependencies 2026-08-04 15:58:11 +07:00
Yoga Pangestu
5961a60585 feat: add labels and formatting attributes to various models and enums
- Added labels for leave request statuses in LeaveRequestStatus enum.
- Introduced label methods for PayrollAdjustmentType, PayrollPeriodStatus, PayrollStatus, RawMaterialUnit, and StokOpnameStatus enums.
- Implemented formatted attributes for Attendance, CashAccount, CashTransaction, Category, Customer, Cutting, Employee, EmployeeAdvance, Expense, LeaveRequest, Order, OrderItem, Payroll, PayrollAdjustment, PayrollPeriod, Product, ProductPrice, ProductVariant, Purchase, PurchaseItem, RawMaterial, RawMaterialPrice, Restock, RestockItem, StokOpname, StokOpnameItem, Supplier, User, and UserProfile models.
- Enhanced phone number formatting for Customer and Supplier models.
- Added date formatting for various models to improve readability.
2026-08-04 15:31:41 +07:00
Yoga Pangestu
2d60c0c67d refactor: swap relationships and scopes in models for clarity and consistency 2026-08-04 11:37:21 +07:00
Yoga Pangestu
26945160a2 feat: add new cast attributes for models including sewing_cost, other_cost, marketplace_settings_snapshot, year, month, stock, reject_stock, and retail_stock 2026-08-04 11:17:25 +07:00
Yoga Pangestu
38c486d11d feat: add relationships for payroll adjustments, employee advances, and cutting submissions in models 2026-08-04 10:53:15 +07:00
Yoga Pangestu
7f91ce22db fix: add null check for media model in CustomPathGenerator and remove duplicate transaction permissions in RolePermissionSeeder 2026-08-04 10:43:03 +07:00
Yoga Pangestu
c063cde967 feat: implement old data migration command and related migration classes 2026-08-04 10:41:01 +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
841767d5b1 feat: implement product draft functionality for create and edit pages 2026-08-01 14:40:06 +07:00
Yoga Pangestu
0126321a6e fix: improve error handling in handleAction method with logging and user-friendly message 2026-08-01 14:38:04 +07:00
Yoga Pangestu
9cf3e2bb6b refactor: update ProductRequest namespace and reintroduce the class 2026-08-01 13:38:13 +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
93e69932e7 feat: implement error notification system for developers 2026-08-01 11:59:46 +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
e92a4cfbcf refactor: enhance handleAction method to include error route parameter for improved error handling 2026-08-01 00:50:52 +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
8de53eadde feat: simplify phone number validation by removing unnecessary digit constraints 2026-07-30 22:44:36 +07:00
Yoga Pangestu
1df5b53910 feat: enhance SEO metadata for improved visibility and sharing 2026-07-30 22:26:22 +07:00
Yoga Pangestu
aecd8eaf1f Refactor security settings page and update password functionality
- Translated UI elements to Indonesian for better localization.
- Improved layout by introducing Card components for better visual structure.
- Removed unnecessary imports and props related to passkeys and two-factor authentication.
- Updated tests to cover new password update scenarios and validation rules.
- Ensured proper redirection and error handling for unauthorized access to security settings.
- Enhanced user experience by adding success flash messages on password updates.
2026-07-30 22:08:24 +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
aa46893885 feat: update User model and UserInfo component to use full_name attribute 2026-07-30 13:51:09 +07:00
Yoga Pangestu
c43713c41c feat: enhance phone number input handling in Customer and Supplier components 2026-07-30 13:40:58 +07:00
Yoga Pangestu
f93bd17b2d feat: update phone number label to 'No. Telepon' in EmployeeCreate and EmployeeEdit components 2026-07-30 13:39:05 +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
Yoga Pangestu
79da7df73c feat: refactor EmployeeController and EmployeeService for improved user handling and password reset logic 2026-07-30 10:34:32 +07:00
Yoga Pangestu
917588eecf feat: refactor transaction and leave request handling to use centralized action handler 2026-07-30 10:29:52 +07:00
Yoga Pangestu
9033aef5f7 feat: add receipt handling and media upload functionality to CashTransaction and CashAccount components 2026-07-30 10:28:18 +07:00
Yoga Pangestu
e63f692478 feat: enhance Expense model and service with media handling and receipt upload functionality 2026-07-30 10:21:51 +07:00
Yoga Pangestu
a138ffe63c feat: add media library configuration and file upload components
- Added `media-library.php` configuration file for managing media uploads and conversions.
- Updated `filesystems.php` to set default visibility for AWS S3 storage.
- Implemented `FileUpload` component for handling file uploads with preview and error handling.
- Created `ImagePreviewModal` component for displaying image previews in a modal.
- Introduced `Attachment` UI components for better file attachment handling.
- Added `useFileUpload` hook to manage file upload state and logic.
- Implemented utility functions for uploading files to S3 with presigned URLs.
- Created API route for generating presigned URLs for file uploads.
2026-07-30 10:16:49 +07:00
Yoga Pangestu
dded6058dc feat: optimize data retrieval in services by selecting specific fields for EmployeeAdvance, User, LeaveRequest, Category, Customer, and Supplier 2026-07-30 10:16:12 +07:00
Yoga Pangestu
da30f12fc2 feat: add employee management features including create, edit, and list functionalities
- Implemented employee columns for data table with sorting and action buttons.
- Created employee creation form with validation and default password information.
- Developed employee editing form pre-filled with existing data.
- Added employee listing page with delete and reset password functionalities.
- Introduced leave request management with columns for status and actions.
- Created leave request form for adding and editing requests with date pickers.
- Implemented confirmation dialogs for delete, approve, and reject actions.
2026-07-29 22:33:55 +07:00
Yoga Pangestu
887526bd18 feat: add employee management features including create, edit, and list functionalities
- Implemented employee creation and editing forms with validation.
- Added employee listing with actions for edit, delete, and reset password.
- Integrated toggle for employee active status.
- Created reusable UI components for forms, alerts, and data tables.
- Updated routing to include employee management endpoints.
2026-07-29 22:26:24 +07:00
Yoga Pangestu
a179382288 feat: implement leave request management with CRUD functionality and integrate UI components 2026-07-29 21:49:02 +07:00
Yoga Pangestu
d1f1d82099 feat: enhance transaction handling with error management and database transactions in CashAccountService and controllers 2026-07-29 21:07:30 +07:00
Yoga Pangestu
912f576c74 feat: implement Employee Advance management functionality
- Add EmployeeAdvanceService for handling employee advance operations including create, update, delete, approve, and pay.
- Create new components for date picking and calendar UI.
- Develop Employee Advance columns for data table representation.
- Implement Employee Advance index page with CRUD operations and dialogs for creating, editing, approving, and paying advances.
- Update routes to include employee advances resource and specific actions for approval and payment.
- Add necessary dependencies for date handling and UI components.
2026-07-29 21:07:21 +07:00
Yoga Pangestu
db58fbe049 feat: add update and delete functionality for cash transactions in CashAccountController and CashAccountService 2026-07-29 20:25:43 +07:00
Yoga Pangestu
c6c765b906 feat: implement expense management with CRUD functionality and integrate Inertia for UI 2026-07-29 16:13:02 +07:00
Yoga Pangestu
c3d8ea2f66 feat: implement cash account management with deposit and withdrawal functionality
- Introduced CashAccountController for managing cash accounts.
- Created CashTransactionRequest and CashAccountRequest for transaction validation.
- Developed CashAccountService to handle business logic for cash transactions.
- Added UI components for cash account management, including deposit and withdrawal dialogs.
- Implemented data tables for displaying transactions and cash account details.
- Updated routes to include cash account management endpoints.
- Added tests for cash account functionality, including deposit and withdrawal operations.
2026-07-29 02:08:39 +07:00
Yoga Pangestu
5c1ef6a7b0 feat: add customer management functionality and update navigation
- Introduced CustomerController for handling customer operations.
- Added resourceful routes for customers in the web routes.
- Updated DatabaseSeeder to include CustomerSeeder for initial data population.
- Modified sidebar navigation to link to the customers index.
2026-07-29 01:30:29 +07:00
Yoga Pangestu
8edeaf0db7 feat: implement supplier management with CRUD functionality
- Added SupplierController for handling supplier operations.
- Created SupplierRequest for validation of supplier data.
- Introduced SupplierService for business logic related to suppliers.
- Developed UI components for supplier management, including a data table and dialogs for creating and editing suppliers.
- Updated routes to include resourceful routes for suppliers.
- Added SupplierSeeder for populating initial supplier data.
- Implemented tests for supplier functionality, including creation, updating, and deletion.
2026-07-29 01:16:58 +07:00
Yoga Pangestu
e93fd181ee feat: implement category management with CRUD functionality and integrate sluggable for SEO-friendly URLs
- Added CategoryController for handling category operations.
- Created CategoryRequest for validation of category data.
- Introduced CategoryService for business logic related to categories.
- Implemented sluggable functionality in the Category model for automatic slug generation.
- Developed UI components for category management, including a data table and dialogs for creating and editing categories.
- Updated routes to include resourceful routes for categories.
2026-07-29 01:11:53 +07:00
Yoga Pangestu
c0c8470b02 refactor: replace Hidden attribute with Guarded in model classes for improved attribute management 2026-07-29 00:59:45 +07:00
Yoga Pangestu
d053fc428c feat: enhance user profile update functionality and improve sidebar user display 2026-07-29 00:00:19 +07:00
Yoga Pangestu
993f3599fc feat: update authentication to allow login using username or email and add tests for inactive users 2026-07-28 23:49:39 +07:00
Yoga Pangestu
660d0a648c feat: create migration files for various tables including rejections, attendances, payrolls, leave requests, purchases, and stock mutations
- Added `rejections` table to track rejection reasons and related entities.
- Created `attendances` table for employee attendance records with geolocation data.
- Introduced `payroll_periods`, `payrolls`, and `payroll_adjustments` tables for payroll management.
- Established `leave_requests` table to manage employee leave applications.
- Implemented `purchases` and `purchase_items` tables for tracking supplier purchases.
- Created `media` table for file storage and management.
- Added `activity_log` table for tracking system activities.
- Established `orders` and `order_items` tables for managing customer orders.
- Created `cuttings`, `cutting_materials`, and `cutting_results` tables for production management.
- Introduced `system_configurations` table for application settings.
- Added `push_subscriptions` table for managing user push notifications.
- Created `homepage_configurations` table for homepage settings.
- Established `product_prices` table for managing product pricing.
- Added `owner_verification_requests` table for tracking ownership verification processes.
- Created `notifications` table for user notifications.
- Established `employee_advance_payments` table for managing advance payments to employees.
- Created `retail_stock_histories` table for tracking stock changes.
- Established `stok_opnames` and `stok_opname_items` tables for stock opname management.
- Created `cutting_material_combinations` table for managing material combinations.
- Added `restocks` and `restock_items` tables for managing stock replenishments.
- Established `stock_mutations` table for tracking stock changes across various operations.
2026-07-28 18:51:00 +07:00
Yoga Pangestu
3c64660586 initial commit 2026-07-28 17:40:38 +07:00