GOODBOY008 opened a new issue, #4275: URL: https://github.com/apache/streampark/issues/4275
## MyBatis-Plus Enum Refactoring Implementation Plan\n\n### Purpose\nRefactor the current enum usage in StreamPark to leverage MyBatis-Plus's automatic enum conversion feature by using the @EnumValue annotation. This will improve maintainability and consistency throughout the codebase.\n\n### Current State\nCurrently, many entities in StreamPark store enum values as Integer or String types and manually convert them to/from enum instances. This approach requires boilerplate code and is error-prone.\n\n### Proposed Changes\n1. Apply @EnumValue annotation to all relevant enums in both streampark-common and streampark-console modules\n2. Modify entity classes to directly use enum types instead of Integer/String representations\n3. Remove manual conversion logic in services and controllers\n4. Update MyBatis configuration to properly handle enum conversion\n\n### Benefits\n- Reduced boilerplate code\n- Improved type safety\n- Better maintainability\n- Consistent enum handling across th e application\n\n### Implementation Steps\n1. Analyze all enums in streampark-common/src/main/java/org/apache/streampark/common/enums/ and streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/enums/\n2. Apply @EnumValue annotation to appropriate fields in each enum\n3. Refactor entity classes to use enum types directly\n4. Update related service and controller classes\n5. Add unit tests to verify enum conversion functionality\n6. Update documentation if necessary\n\n### Impact\nThis change will be backward compatible as MyBatis-Plus handles the conversion automatically. However, it will require careful testing to ensure no functionality is broken.\n\nPlease discuss if this implementation plan is necessary and any suggestions for improvements. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
