mirror of
https://gitee.com/pnoker/iot-dc3.git
synced 2026-11-03 11:42:04 +08:00
Replace the mixed-purpose ResponseEnum with a ResponseCode interface implemented by SuccessCode (OK/ADD/DELETE/UPDATE) and ErrorCode (NOT_FOUND/UNAUTHORIZED/ TOKEN_INVALID/IP_INVALID/FORBIDDEN/PASSWORD_*/VALIDATION/OUT_OF_RANGE/FAILURE), each carrying its HTTP status so the envelope body code and transport status no longer diverge. - Introduce abstract BusinessException carrying an ErrorCode; all 23 business exceptions extend it and bind a fixed code. ExceptionConfig reads the carried code to set both body code and HTTP status (404->R404, 401->R401, 422->R422). - Add GrpcRFactory (ok/fail/notFound) and remove the hand-written GrpcR builder boilerplate across 19 gRPC servers. - Drop the dead @EnumValue index and ofIndex/ofCode/ofName lookups; OUT_OF_RANGE is now carried by OutRangeException. - Update R factory methods to accept ResponseCode; migrate 90+ controllers, 11 gRPC facades, OpenAPI specs and README to the split enums. Also fix several pre-existing red tests surfaced by the full suite: - OAuthMcpRuntimeServiceImplTest: setUp set @Value fields refactored into OAuthProperties; inject the properties object instead. - DriverReadServiceImplTest: reset leaked ConnectionBackoff static state via a new clear() in @BeforeEach. - modbus-rtu/tcp: make the static modbusFactory non-final so tests can swap it. - ble: override no-arg health() to report OFFLINE before initialization. - PlcS7/facade-local tests: expect the thrown exception / use the single-arg overload matching production behaviour. - Remove a duplicate dc3-common-constant dependency in dc3-common-data/pom.xml.