liusheng
5 天以前 cc479e6a056785103996cc7ea67dbd5faa3e800e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package com.ruoyi.datacollection;
 
/**
 * 数据采集模块包根。
 *
 * <h3>这个模块装了什么(阶段 1 · 本次)</h3>
 * <ul>
 *   <li>{@code service} —— HIS 数据采集的<b>调度编排</b>:原 {@code ruoyi-quartz} 里
 *       {@code RyTask#dealHisData(String)} + 私有帮手 {@code collectSegmentData(...)}
 *       原样搬来,逻辑一行未改(含分站点分支、30 天分段回溯、日志文案);</li>
 *   <li>{@code config} —— 模块开关({@code sys_config: datacollection.enabled},默认 true,fail-open);</li>
 *   <li>{@code api} —— <b>唯一对外包</b>:其它模块只能经 {@code DataCollectionFacade} 调本模块。</li>
 * </ul>
 *
 * <h3>数据访问边界</h3>
 * 本模块<b>刻意不带 Mapper / XML</b>:编排只做"何时采、采哪个院区、采哪段时间",
 * 真正的采集动作由契约 {@code com.ruoyi.common.core.service.HisGatherApi} 承接,
 * 当前实现在 smartor({@code HisGatherApiBridge},纯转发到既有 Service)。
 * 这样新模块不必依赖 smartor,也就不会把"模块化"倒退回单体。
 *
 * <h3>阶段 2 / 3(后续批次)</h3>
 * 采集实现按批搬进本模块(XH/HN 一批、SLTD 一批),每搬一批就把
 * {@code HisGatherApi} 对应方法删掉;全部搬完时契约与 smartor 的 Bridge 一起删除。
 * 各批的依赖盘点、需要的跨模块契约、风险点见
 * {@code doc/数据采集模块化_调研与实施方案.md}。
 *
 * <h3>开关</h3>
 * {@code sys_config: datacollection.enabled}(默认 true):关闭后
 * {@code DataCollectionFacade#dealHisData} 抛 {@code DataCollectionModuleDisabledException},
 * 由调用方({@code RyTask})明确降级并打 WARN —— 不静默跳过,也不静默继续采。
 */
public final class DataCollectionModule {
 
    /**
     * 模块配置前缀(仅作为 yml 兜底配置的键前缀;主开关在 sys_config 参数表里)
     */
    public static final String PROPERTIES_PREFIX = "datacollection";
 
    private DataCollectionModule() {
    }
}