|
|
@@ -257,7 +257,11 @@ git commit -m "feat(进件): LeshouyingClient 补 /api/* 出站腿 - 信封与 /
|
|
|
|
|
|
实现要点:
|
|
|
|
|
|
-- `LsyOnboardingService` 构造器注入 `LeshouyingClient`(照 `Lsy*Service` 既有写法,`@RequiredArgsConstructor` + `@Slf4j`)。
|
|
|
+- `LsyOnboardingService` 构造器注入 `LeshouyingClient`(照 `Lsy*Service` 既有写法,**`@Slf4j` + `@Service` + `@RequiredArgsConstructor` 三个注解一个不少**
|
|
|
+ —— 同包七个既有服务全是这三个,`LsyQueryService:13-16` 可对照)。
|
|
|
+ ⚠ **`@Service` 必须写**:漏了它**本批次一条测试都不会红** —— T3–T6 的单测都直接 `new` 这个类,
|
|
|
+ 而 `PaymentApplicationContextTest` 只是「容器能起来」,一个没被任何 bean 注入的类少个注解它照样绿。
|
|
|
+ 代价推迟到**三-B**(controller 注入它)才以 `NoSuchBeanDefinitionException` 暴露,那时 T4/T5/T6 已经全部建在它上面。
|
|
|
- 路径字面量就地写:`client.postApi("/api/info/area", p)`(与 `LsyQueryService` 写 `"/v3/queryorder"` 一致)。
|
|
|
- DTO 用 `@Data`,字段 `areaName` / `areaCode`,**`areaCode` 必须是 `String`**,javadoc 指向 page 196236568 的 `100G` 反例。
|
|
|
- `area_list` 取值要做**防御性读取**:上游没返回该键、返回 null、或返回的不是 List,都归成空列表。不引入 Jackson 反序列化 —— 本模块既有风格是直接读 `Map<String,Object>` 再手工映射。
|