- Add PortSide property to distinguish between left (0) and right (1) sides of optical frames
- Implement row number parsing logic to handle both letter (A-C) and numeric formats
- Update port name generation to support both sides: letter format (A-1) for left side, numeric format (1-1) for right side
- Add RowNumberRaw property to capture raw input before parsing and conversion
- Add RowNumberDisplay property for display purposes while keeping RowNumber as internal numeric value
- Mark PortSide and RowNumber as ExcelIgnore to prevent export conflicts
- Clean up formatting inconsistencies in OdfPortsDto class
- Update port query logic to include PortSide in filtering criteria
- Enhance port creation to properly assign PortSide based on rack type and row format
- Add migration script to introduce rack_type field (0=ODF, 1=optical box)
- Add RackType, LeftPortsCount, RightPortsCount properties to OdfRacks model and DTOs
- Add rack type selector and port count inputs to OdfRackForm component
- Display rack type labels in OdfRacks management table
- Add rack type badges to uni-app rack list cards
- Implement dual-column layout for optical box type in rack detail page with left/right port sections
- Add optical box port naming format (A-1, A-2, etc.) with row-based labeling
- Add visual distinction with background colors (left: #E3F2FD, right: #FFF3E0) and center divider
- Update import/export DTOs to support rack type and optical box port naming
- Mark all v1.0.2.1 tasks as completed
- Add inline editing UI for mileage correction field in fault detail page
- Implement save/cancel buttons for mileage correction updates
- Add updateMileageCorrection API endpoint and service method
- Update App.vue global styles with page background color
- Enhance pages.json with backgroundColorTop and backgroundColorBottom
- Add MileageCorrectionDto for request validation
- Implement batch fault times retrieval for export functionality
- Add fault frequency time concatenation in export data
- Improve export data structure with complete fault history information