Commit Graph

6 Commits

Author SHA1 Message Date
Misaka_Company
068ff5d465 Add condition preview feature to enhance user experience
- Add txtConditionPreview textbox initialization in UserForm_Initialize
- Clear preview textbox when refreshing details panel
- Implement lstDetails_Change event handler for condition preview
- Display complete condition text when user clicks on list items
- Improve readability for long/complex condition expressions
- Add debug output for troubleshooting

This enhancement allows users to easily view the full condition text for each material entry in a dedicated preview textbox, addressing the issue of long conditions being difficult to read in the narrow list column.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 16:22:15 +08:00
Misaka_Company
0a8f3708e7 Add complete UI layer for BOM spec addition operations
- Add frmAddSpec user form with interactive UI for spec management
- Implement dynamic checkbox generation for material name selection
- Support both macro and granular selection modes for target materials
- Add strategy selection dropdown (APPEND/CLONE)
- Add cDynamicEvent class for handling dynamic control events
- Integrate with mSpecAdditionManager for pipeline execution
- Provide real-time validation and user feedback
- Enable fine-grained control over which specific BOM rows to modify

This creates a user-friendly interface layer on top of the existing strategy pattern architecture, allowing users to visually select materials and execute spec addition operations through a graphical form instead of direct code manipulation.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 15:47:47 +08:00
Misaka_Company
b73e39eeee Refactor strategy pattern to implement separation of concerns
- Update IModuleProcessor interface to accept targetBOMs collection instead of targetItemName string
- Remove filtering logic from strategy implementations (AppendOnly, CloneNew)
- Add LoadData method to mSpecAdditionManager for UI initialization
- Rename ExecuteAddition to ExecutePipeline with refined parameters
- Enhance test suite to simulate fine-grained UI selection behavior
- Enable precise row-level control by delegating filtering to UI layer

This refactoring achieves better separation of concerns where:
- Strategy layer focuses purely on execution logic
- UI layer handles selection and filtering
- Manager layer coordinates the pipeline flow

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 15:04:24 +08:00
Misaka_Company
d17d7c5864 Add strategy pattern architecture for BOM module processing
- Add IModuleProcessor interface defining the processor contract
- Implement cProcessor_AppendOnly strategy for modifying existing BOM rows
- Implement cProcessor_CloneNew strategy for creating new BOM rows
- Add mProcessorFactory module for creating processor instances
- Add mSpecAdditionManager module for coordinating spec addition operations
- Enhance test suite with business logic layer and pipeline integration tests

This implements the Strategy pattern to allow flexible BOM modification behaviors while maintaining clean separation of concerns.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 14:09:29 +08:00
Misaka_Company
76a75c9a05 Add BOM repository module and enhance code formatting
- Add new mBOMRepository.bas module for data access layer with LoadAll/SaveAll/InsertNewBOMRow functions
- Refactor cBOMRow.cls property methods for better readability and formatting
- Add comprehensive unit tests for BOM repository functionality in mTestEngine

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 12:45:04 +08:00
Misaka_Company
f344cbe206 Add VBA source code modules
Added VBA project structure including:
- Class modules for BOM row and condition engine
- Test engine module

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 12:28:29 +08:00