工业互联网平台2.0版本后端代码
潘志宝
2025-05-14 5dc71b875c40edfaa5d9db7f4827c21e35ca11d8
t_da_extremal_point
已修改9个文件
54 ■■■■ 文件已修改
iailab-module-data/iailab-module-data-biz/db/mysql/tenant.sql 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/influxdb/service/impl/InfluxDBServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/ExtremalHandle.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/ExtremalTypeEnum.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/dto/DaExtremalPointDTO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/dto/DaPointDTO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/entity/DaExtremalPointEntity.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/service/impl/DaPointServiceImpl.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-data/iailab-module-data-biz/src/main/resources/application.yaml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-data/iailab-module-data-biz/db/mysql/tenant.sql
@@ -454,7 +454,7 @@
                                    `moment_point` VARCHAR(36)   COMMENT '瞬时测点' ,
                                    `length` int COMMENT '统计长度',
                                    `extremal_unit` varchar(10) DEFAULT 'min' COMMENT '统计单位',
                                    `extremal_type` int NOT NULL COMMENT '极值类型(1:最大值,2:最小值)',
                                    `extremal_type` varchar(10) NOT NULL COMMENT '极值类型(max:最大值,min:最小值)',
                                    PRIMARY KEY (id) USING BTREE,
                                    UNIQUE KEY `uk_point_id` (`point_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT = '实时极值点表';
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/influxdb/service/impl/InfluxDBServiceImpl.java
@@ -352,7 +352,7 @@
        sql.append(measurement);
        sql.append(" WHERE point = '");
        sql.append(point.getPoint());
        sql.append("' AND time >= '" + utsStart + "'");
        sql.append("' AND time >= '" + utsStart);
        sql.append("' AND time <= '" + utsEnd + "'");
        InfluxQLQueryResult data = influxQLQueryApi.query(new InfluxQLQuery(sql.toString(), influxDBInstance.getBucket()));
        if (data == null) {
@@ -379,7 +379,7 @@
        sql.append(measurement);
        sql.append(" WHERE point = '");
        sql.append(point.getPoint());
        sql.append("' AND time >= '" + utsStart + "'");
        sql.append("' AND time >= '" + utsStart);
        sql.append("' AND time <= '" + utsEnd + "'");
        InfluxQLQueryResult data = influxQLQueryApi.query(new InfluxQLQuery(sql.toString(), influxDBInstance.getBucket()));
        if (data == null) {
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/ExtremalHandle.java
@@ -91,8 +91,8 @@
    private Object singleCompute(DaPointDTO dto, Date collectTime, List<String> listGood, List<String> listBad) {
        Object value = CommonConstant.BAD_VALUE;
        ApiPointDTO pointDTO = dataPointApi.getInfoByNo(dto.getMomentPoint());
        if (pointDTO == null) {
        ApiPointDTO momentPoint = dataPointApi.getInfoByNo(dto.getMomentPoint());
        if (momentPoint == null) {
            if (listBad != null) {
                listBad.add(dto.getPointNo());
            }
@@ -101,12 +101,11 @@
        log.info("极值:" + dto.getPointNo());
        // 动态长度
        ApiPointDTO momentPoint = dataPointApi.getInfoByNo(dto.getMomentPoint());
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(collectTime);
        calendar.add(Calendar.SECOND, -1 * DataPointFreqEnum.getEumByCode(momentPoint.getMinfreqid()).getValue());
        Date endTime = calendar.getTime();
        Date startTime = ExtremaUnitEnum.getStartTime(calendar, dto.getLength(), dto.getCumulateUnit());
        Date startTime = ExtremaUnitEnum.getStartTime(calendar, dto.getLength(), dto.getExtremalUnit());
        ApiPointValueQueryDTO queryDto = new ApiPointValueQueryDTO();
        queryDto.setPointNo(momentPoint.getPointNo());
        queryDto.setStart(startTime);
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/ExtremalTypeEnum.java
@@ -11,13 +11,13 @@
@Getter
@AllArgsConstructor
public enum ExtremalTypeEnum {
    MAX(1, "最大值"),
    MIN(2, "最小值");
    MAX("max", "最大值"),
    MIN("min", "最小值");
    private Integer code;
    private String code;
    private String desc;
    public static ExtremalTypeEnum getEumByCode(Integer code) {
    public static ExtremalTypeEnum getEumByCode(String code) {
        if (code == null) {
            return null;
        }
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/dto/DaExtremalPointDTO.java
@@ -38,5 +38,5 @@
    private String extremalUnit;
    @Schema(description = "极值类型", required = true)
    private Integer extremalType;
    private String extremalType;
}
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/dto/DaPointDTO.java
@@ -127,7 +127,7 @@
    private String extremalUnit;
    @Schema(description = "极值类型")
    private Integer extremalType;
    private String extremalType;
    @Schema(description = "数据源选项")
    private List<String> sourceOption;
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/entity/DaExtremalPointEntity.java
@@ -13,7 +13,7 @@
 * @createTime 2025年05月14日
 */
@Data
@TableName("t_da_cumulate_point")
@TableName("t_da_extremal_point")
public class DaExtremalPointEntity implements Serializable {
    private static final long serialVersionUID = 1L;
@@ -44,7 +44,7 @@
    private String extremalUnit;
    /**
     * 极值类型(1:最大值,2:最小值)
     * 极值类型(max:最大值,min:最小值)
     */
    private Integer extremalType;
    private String extremalType;
}
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/service/impl/DaPointServiceImpl.java
@@ -359,9 +359,18 @@
    }
    @Override
    public List<DaPointDTO> getExtremalPoint(String freq) {
    public List<DaPointDTO> getCumulatePoint(DaPointPageReqVO reqVO) {
        Map<String, Object> params = new HashMap<>(3);
        params.put("pointType", PointTypeEnum.CUMULATE.getCode());
        params.put("pointNo", reqVO.getPointNo());
        params.put("pointName", reqVO.getPointName());
        return daPointDao.getCumulatePoint(params);
    }
    @Override
    public List<DaPointDTO> getExtremalPoint(String freq) {
        Map<String, Object> params = new HashMap<>(3);
        params.put("pointType", PointTypeEnum.EXTREMAL.getCode());
        params.put("isEnable", CommonConstant.IS_ENABLE);
        params.put("minfreqid", freq);
        return daPointDao.getExtremalPoint(params);
@@ -370,19 +379,10 @@
    @Override
    public List<DaPointDTO> getExtremalPoint(List<String> pointNos) {
        Map<String, Object> params = new HashMap<>(3);
        params.put("pointType", PointTypeEnum.CUMULATE.getCode());
        params.put("pointType", PointTypeEnum.EXTREMAL.getCode());
        params.put("isEnable", CommonConstant.IS_ENABLE);
        params.put("pointNos", pointNos);
        return daPointDao.getExtremalPoint(params);
    }
    @Override
    public List<DaPointDTO> getCumulatePoint(DaPointPageReqVO reqVO) {
        Map<String, Object> params = new HashMap<>(3);
        params.put("pointType", PointTypeEnum.CUMULATE.getCode());
        params.put("pointNo", reqVO.getPointNo());
        params.put("pointName", reqVO.getPointName());
        return daPointDao.getCumulatePoint(params);
    }
    @Override
iailab-module-data/iailab-module-data-biz/src/main/resources/application.yaml
@@ -165,6 +165,7 @@
      - t_da_point
      - t_da_point_value
      - t_da_sequence_num
      - t_da_extremal_point
      - t_http_api
      - t_http_tag
      - t_http_token