From c3c7a6918f0e2dfe597c339117e4185b641be95f Mon Sep 17 00:00:00 2001
From: Jay <csj123456>
Date: 星期一, 24 二月 2025 15:10:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustResultEntity.java               |   51 ++++
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/impl/PredictModelHandlerImpl.java           |   97 ++++++++
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/PredictSampleDataConstructor.java            |   25 +
 iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java                                     |    4 
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigRespVO.java                   |    9 
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetPageReqVO.java             |   22 +
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustConfigEntity.java               |   51 ++++
 iailab-module-model/iailab-module-model-biz/db/mysql.sql                                                                                  |   41 +++
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDao.java                     |   16 +
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleConstructor.java                       |   18 +
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetRespVO.java                |    9 
 iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/StAdjustConfigDetDTO.java                   |   44 +++
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigServiceImpl.java    |   36 +++
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustConfigDetEntity.java            |   65 +++++
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultPageReqVO.java                |   26 ++
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustResultServiceImpl.java    |   18 +
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustResultService.java             |   12 +
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigService.java             |   20 +
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/dto/SampleInfo.java                          |    3 
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDetDao.java                  |   16 +
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java                                     |    9 
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigDetServiceImpl.java |   28 ++
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultRespVO.java                   |    9 
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigDetService.java          |   16 +
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigPageReqVO.java                |   22 +
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModelHandler.java                    |   12 +
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustResultDao.java                     |   16 +
 iailab-module-model/iailab-module-model-biz/src/main/resources/application-dev.yaml                                                       |    8 
 28 files changed, 695 insertions(+), 8 deletions(-)

diff --git a/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java b/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java
index 3bd1bf7..dded6ad 100644
--- a/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java
+++ b/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java
@@ -127,4 +127,8 @@
     @Operation(summary = "修改调度模型配置")
     Boolean updateScheduleModelSetting(@RequestParam("modelCode") String modelCode, @RequestParam("key") String key, @RequestParam("value") String value);
 
+    @GetMapping(PREFIX + "/schedule/adjust/config-list")
+    @Operation(summary = "获取模拟调整配置")
+    List<StAdjustConfigDetDTO> getAdjustConfigListByModelId(@RequestParam("modelId") String modelId);
+
 }
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/StAdjustConfigDetDTO.java b/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/StAdjustConfigDetDTO.java
new file mode 100644
index 0000000..c83d2d0
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/StAdjustConfigDetDTO.java
@@ -0,0 +1,44 @@
+package com.iailab.module.model.api.mcs.dto;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+@Schema(description = "RPC 模型 - 模拟调整配置详情 DTO")
+@Data
+public class StAdjustConfigDetDTO implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    @Schema(description = "ID")
+    private String id;
+
+    @Schema(description = "配置ID")
+    private String configId;
+
+    @Schema(description = "预测项类型")
+    private String itemTypeId;
+
+    @Schema(description = "预测项ID")
+    private String predictItemId;
+
+    @Schema(description = "输出KEY")
+    private String outKey;
+
+    @Schema(description = "输出名称")
+    private String outName;
+
+    @Schema(description = "参数排序")
+    private Integer modelParamOrder;
+
+    @Schema(description = "输入排序")
+    private Integer modelParamPortOrder;
+
+    @Schema(description = "执行顺序")
+    private Integer sort;
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/db/mysql.sql b/iailab-module-model/iailab-module-model-biz/db/mysql.sql
index 417acc3..69a4dec 100644
--- a/iailab-module-model/iailab-module-model-biz/db/mysql.sql
+++ b/iailab-module-model/iailab-module-model-biz/db/mysql.sql
@@ -900,4 +900,43 @@
 
 alter table t_mm_item_output add column `iscumulant` tinyint default false COMMENT '是否累计';
 alter table t_mm_item_output add column `cumuldivisor` int DEFAULT NULL COMMENT '累计除数';
-alter table t_mm_item_output add column `cumulpoint` varchar(36) DEFAULT NULL, COMMENT '累计测点';
\ No newline at end of file
+alter table t_mm_item_output add column `cumulpoint` varchar(36) DEFAULT NULL, COMMENT '累计测点';
+
+
+CREATE TABLE `t_st_adjust_config` (
+                                      `id` varchar(36) NOT NULL COMMENT 'ID',
+                                      `schedule_model_id` varchar(36) DEFAULT NULL COMMENT '调度模型ID',
+                                      `remark` varchar(200) DEFAULT NULL COMMENT '备注',
+                                      `status`          tinyint DEFAULT 1 COMMENT '状态',
+                                      create_time     datetime default current_timestamp,
+                                      update_time     datetime default current_timestamp,
+                                      PRIMARY KEY (`id`) USING BTREE,
+                                      INDEX `idx_schedule_model_id`(`schedule_model_id` ASC) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='模拟调整配置表';
+
+CREATE TABLE `t_st_adjust_config_det` (
+                                      `id` varchar(36) NOT NULL COMMENT 'ID',
+                                      `config_id` varchar(36) DEFAULT NULL COMMENT '配置ID',
+                                      `item_type_id` varchar(36) DEFAULT NULL COMMENT '预测项类型',
+                                      `predict_item_id` varchar(36) DEFAULT NULL COMMENT '预测项ID',
+                                      `out_key` varchar(50) DEFAULT NULL COMMENT '输出KEY',
+                                      `out_name` varchar(50) DEFAULT NULL COMMENT '输出名称',
+                                      `model_param_order`     integer DEFAULT NULL COMMENT '参数排序',
+                                      `model_param_port_order` integer DEFAULT NULL COMMENT '输入排序',
+                                      `sort`              integer COMMENT '执行顺序',
+                                      PRIMARY KEY (`id`) USING BTREE,
+                                      INDEX `idx_config_id`(`config_id` ASC) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='模拟调整配置详细表';
+
+CREATE TABLE `t_st_adjust_result` (
+                                                 `id` varchar(36) NOT NULL COMMENT 'ID',
+                                                 `predict_item_id` varchar(36) DEFAULT NULL COMMENT '预测项ID',
+                                                 `schedule_model_id` varchar(36) DEFAULT NULL COMMENT '调度模型ID',
+                                                 `adjust_time` datetime NULL DEFAULT NULL COMMENT '模拟调整时间',
+                                                 `adjust_value` varchar(500) DEFAULT NULL COMMENT '模拟调整值',
+                                                 `json_value` varchar(1000) DEFAULT NULL COMMENT '模拟调整结果',
+                                                 PRIMARY KEY (`id`) USING BTREE,
+                                                 INDEX `idx_predict_item_id`(`predict_item_id` ASC) USING BTREE,
+                                                 INDEX `idx_schedule_model_id`(`schedule_model_id` ASC) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='模拟调整结果表';
+
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
index 3ec5fef..7a3a97b 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
@@ -27,6 +27,7 @@
 import com.iailab.module.model.mcs.pre.vo.MmItemOutputRespVO;
 import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmMessageSaveReqVO;
 import com.iailab.module.model.mcs.pre.vo.MmPredictItemRespVO;
+import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity;
 import com.iailab.module.model.mcs.sche.entity.StScheduleModelEntity;
 import com.iailab.module.model.mcs.sche.entity.StScheduleSuggestEntity;
 import com.iailab.module.model.mcs.sche.service.*;
@@ -113,6 +114,8 @@
     @Autowired
     private StScheduleModelSettingService stScheduleModelSettingService;
 
+    @Autowired
+    private StAdjustConfigService stAdjustConfigService;
 
     private int HOUR_MINS = 60;
 
@@ -801,6 +804,12 @@
         return true;
     }
 
+    @Override
+    public List<StAdjustConfigDetDTO> getAdjustConfigListByModelId(String modelId) {
+        List<StAdjustConfigDetEntity> list = stAdjustConfigService.getDetByModelId(modelId);
+        return ConvertUtils.sourceToTarget(list, StAdjustConfigDetDTO.class);
+    }
+
     /**
      * 计算功率因数 p²/(根号:p²+Q²)
      **/
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDao.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDao.java
new file mode 100644
index 0000000..25bd66c
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDao.java
@@ -0,0 +1,16 @@
+package com.iailab.module.model.mcs.sche.dao;
+
+import com.iailab.framework.mybatis.core.mapper.BaseMapperX;
+import com.iailab.framework.tenant.core.db.dynamic.TenantDS;
+import com.iailab.module.model.mcs.sche.entity.StAdjustConfigEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+@TenantDS
+@Mapper
+public interface StAdjustConfigDao extends BaseMapperX<StAdjustConfigEntity> {
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDetDao.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDetDao.java
new file mode 100644
index 0000000..20cd0cf
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDetDao.java
@@ -0,0 +1,16 @@
+package com.iailab.module.model.mcs.sche.dao;
+
+import com.iailab.framework.mybatis.core.mapper.BaseMapperX;
+import com.iailab.framework.tenant.core.db.dynamic.TenantDS;
+import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+@TenantDS
+@Mapper
+public interface StAdjustConfigDetDao extends BaseMapperX<StAdjustConfigDetEntity> {
+}
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustResultDao.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustResultDao.java
new file mode 100644
index 0000000..e41ea3d
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustResultDao.java
@@ -0,0 +1,16 @@
+package com.iailab.module.model.mcs.sche.dao;
+
+import com.iailab.framework.mybatis.core.mapper.BaseMapperX;
+import com.iailab.framework.tenant.core.db.dynamic.TenantDS;
+import com.iailab.module.model.mcs.sche.entity.StAdjustResultEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+@TenantDS
+@Mapper
+public interface StAdjustResultDao extends BaseMapperX<StAdjustResultEntity> {
+}
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustConfigDetEntity.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustConfigDetEntity.java
new file mode 100644
index 0000000..8a02b27
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustConfigDetEntity.java
@@ -0,0 +1,65 @@
+package com.iailab.module.model.mcs.sche.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月20日
+ */
+@Data
+@TableName("t_st_adjust_config_det")
+public class StAdjustConfigDetEntity implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id",type = IdType.INPUT)
+    private String id;
+
+    /**
+     * 配置ID
+     */
+    private String configId;
+
+    /**
+     * 预测项类型
+     */
+    private String itemTypeId;
+
+    /**
+     * 预测项ID
+     */
+    private String predictItemId;
+
+    /**
+     * 输出KEY
+     */
+    private String outKey;
+
+    /**
+     * 输出名称
+     */
+    private String outName;
+
+    /**
+     * 参数排序
+     */
+    private Integer modelParamOrder;
+
+    /**
+     * 输入排序
+     */
+    private Integer modelParamPortOrder;
+
+    /**
+     * 执行顺序
+     */
+    private Integer sort;
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustConfigEntity.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustConfigEntity.java
new file mode 100644
index 0000000..fae593c
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustConfigEntity.java
@@ -0,0 +1,51 @@
+package com.iailab.module.model.mcs.sche.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月20日
+ */
+@Data
+@TableName("t_st_adjust_config")
+public class StAdjustConfigEntity implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id",type = IdType.INPUT)
+    private String id;
+
+    /**
+     * 调度模型ID
+     */
+    private String scheduleModelId;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 状态
+     */
+    private Integer status;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 修改时间
+     */
+    private Date updateTime;
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustResultEntity.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustResultEntity.java
new file mode 100644
index 0000000..12d1c1b
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustResultEntity.java
@@ -0,0 +1,51 @@
+package com.iailab.module.model.mcs.sche.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月20日
+ */
+@Data
+@TableName("t_st_adjust_result")
+public class StAdjustResultEntity implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id",type = IdType.INPUT)
+    private String id;
+
+    /**
+     * 预测项ID
+     */
+    private String predictItemId;
+
+    /**
+     * 调度模型ID
+     */
+    private String scheduleModelId;
+
+    /**
+     * 模拟调整时间
+     */
+    private Date adjustTime;
+
+    /**
+     * 模拟调整值
+     */
+    private String adjustValue;
+
+    /**
+     * 模拟调整结果
+     */
+    private String jsonValue;
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigDetService.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigDetService.java
new file mode 100644
index 0000000..d88a010
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigDetService.java
@@ -0,0 +1,16 @@
+package com.iailab.module.model.mcs.sche.service;
+
+import com.iailab.framework.common.service.BaseService;
+import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity;
+
+import java.util.List;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+public interface StAdjustConfigDetService extends BaseService<StAdjustConfigDetEntity> {
+
+    List<StAdjustConfigDetEntity> getListByConfigId(String configId);
+}
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigService.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigService.java
new file mode 100644
index 0000000..87de9cd
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigService.java
@@ -0,0 +1,20 @@
+package com.iailab.module.model.mcs.sche.service;
+
+import com.iailab.framework.common.service.BaseService;
+import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity;
+import com.iailab.module.model.mcs.sche.entity.StAdjustConfigEntity;
+
+import java.util.List;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+public interface StAdjustConfigService extends BaseService<StAdjustConfigEntity> {
+
+    StAdjustConfigEntity getByModelId(String modelId);
+
+    List<StAdjustConfigDetEntity> getDetByModelId(String modelId);
+
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustResultService.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustResultService.java
new file mode 100644
index 0000000..d6f9673
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustResultService.java
@@ -0,0 +1,12 @@
+package com.iailab.module.model.mcs.sche.service;
+
+import com.iailab.framework.common.service.BaseService;
+import com.iailab.module.model.mcs.sche.entity.StAdjustResultEntity;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+public interface StAdjustResultService extends BaseService<StAdjustResultEntity> {
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigDetServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigDetServiceImpl.java
new file mode 100644
index 0000000..f9d62f4
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigDetServiceImpl.java
@@ -0,0 +1,28 @@
+package com.iailab.module.model.mcs.sche.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.iailab.framework.common.service.impl.BaseServiceImpl;
+import com.iailab.module.model.mcs.sche.dao.StAdjustConfigDetDao;
+import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity;
+import com.iailab.module.model.mcs.sche.service.StAdjustConfigDetService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+@Slf4j
+@Service
+public class StAdjustConfigDetServiceImpl extends BaseServiceImpl<StAdjustConfigDetDao, StAdjustConfigDetEntity> implements StAdjustConfigDetService {
+
+    public List<StAdjustConfigDetEntity> getListByConfigId(String configId) {
+        QueryWrapper<StAdjustConfigDetEntity> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("config_id", configId);
+        queryWrapper.orderByAsc("sort");
+        return baseDao.selectList(queryWrapper);
+    }
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigServiceImpl.java
new file mode 100644
index 0000000..dd5b57e
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigServiceImpl.java
@@ -0,0 +1,36 @@
+package com.iailab.module.model.mcs.sche.service.impl;
+
+import com.iailab.framework.common.service.impl.BaseServiceImpl;
+import com.iailab.module.model.mcs.sche.dao.StAdjustConfigDao;
+import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity;
+import com.iailab.module.model.mcs.sche.entity.StAdjustConfigEntity;
+import com.iailab.module.model.mcs.sche.service.StAdjustConfigDetService;
+import com.iailab.module.model.mcs.sche.service.StAdjustConfigService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+@Slf4j
+@Service
+public class StAdjustConfigServiceImpl extends BaseServiceImpl<StAdjustConfigDao, StAdjustConfigEntity> implements StAdjustConfigService {
+
+    @Autowired
+    private StAdjustConfigDetService stAdjustConfigDetService;
+
+    public StAdjustConfigEntity getByModelId(String modelId) {
+        return baseDao.selectOne("schedule_model_id", modelId);
+    }
+
+
+    public List<StAdjustConfigDetEntity> getDetByModelId(String modelId) {
+        StAdjustConfigEntity configEntity = getByModelId(modelId);
+        return stAdjustConfigDetService.getListByConfigId(configEntity.getId());
+    }
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustResultServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustResultServiceImpl.java
new file mode 100644
index 0000000..1f93c8a
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustResultServiceImpl.java
@@ -0,0 +1,18 @@
+package com.iailab.module.model.mcs.sche.service.impl;
+
+import com.iailab.framework.common.service.impl.BaseServiceImpl;
+import com.iailab.module.model.mcs.sche.dao.StAdjustResultDao;
+import com.iailab.module.model.mcs.sche.entity.StAdjustResultEntity;
+import com.iailab.module.model.mcs.sche.service.StAdjustResultService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+@Slf4j
+@Service
+public class StAdjustResultServiceImpl extends BaseServiceImpl<StAdjustResultDao, StAdjustResultEntity> implements StAdjustResultService {
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetPageReqVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetPageReqVO.java
new file mode 100644
index 0000000..1c2ac1f
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetPageReqVO.java
@@ -0,0 +1,22 @@
+package com.iailab.module.model.mcs.sche.vo;
+
+import com.iailab.framework.common.pojo.PageParam;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月20日
+ */
+@Schema(description = "模型服务 - 调度模型分页 Request VO")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class StAdjustConfigDetPageReqVO extends PageParam {
+
+    @Schema(description = "配置ID", example = "")
+    private String configId;
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetRespVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetRespVO.java
new file mode 100644
index 0000000..e572cc3
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetRespVO.java
@@ -0,0 +1,9 @@
+package com.iailab.module.model.mcs.sche.vo;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+public class StAdjustConfigDetRespVO {
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigPageReqVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigPageReqVO.java
new file mode 100644
index 0000000..317cf0d
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigPageReqVO.java
@@ -0,0 +1,22 @@
+package com.iailab.module.model.mcs.sche.vo;
+
+import com.iailab.framework.common.pojo.PageParam;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月20日
+ */
+@Schema(description = "模型服务 - 调度模型分页 Request VO")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class StAdjustConfigPageReqVO extends PageParam {
+
+    @Schema(description = "模型编号,模糊匹配", example = "")
+    private String modelCode;
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigRespVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigRespVO.java
new file mode 100644
index 0000000..7894c5e
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigRespVO.java
@@ -0,0 +1,9 @@
+package com.iailab.module.model.mcs.sche.vo;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+public class StAdjustConfigRespVO {
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultPageReqVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultPageReqVO.java
new file mode 100644
index 0000000..8b9a735
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultPageReqVO.java
@@ -0,0 +1,26 @@
+package com.iailab.module.model.mcs.sche.vo;
+
+import com.iailab.framework.common.pojo.PageParam;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月20日
+ */
+@Schema(description = "模型服务 - 调度模型分页 Request VO")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class StAdjustResultPageReqVO extends PageParam {
+
+    @Schema(description = "开始时间", example = "")
+    private String startTime;
+
+    @Schema(description = "结束时间", example = "")
+    private String endTime;
+
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultRespVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultRespVO.java
new file mode 100644
index 0000000..5a96bf3
--- /dev/null
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultRespVO.java
@@ -0,0 +1,9 @@
+package com.iailab.module.model.mcs.sche.vo;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年02月23日
+ */
+public class StAdjustResultRespVO {
+}
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModelHandler.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModelHandler.java
index aa8b06e..f173849 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModelHandler.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModelHandler.java
@@ -23,4 +23,16 @@
      * @throws ModelInvokeException
      */
     PredictResultVO predictByModel(Date predictTime, MmPredictModelEntity predictModel,String itemName,String itemNo) throws ModelInvokeException;
+
+    /**
+     * 预测,模拟调整
+     *
+     * @param predictTime
+     * @param predictModel
+     * @param itemName
+     * @param itemNo
+     * @param deviation
+     * @return
+     */
+    PredictResultVO predictByModel(Date predictTime, MmPredictModelEntity predictModel,String itemName,String itemNo, double[][] deviation) throws ModelInvokeException;
 }
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/impl/PredictModelHandlerImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/impl/PredictModelHandlerImpl.java
index dd80a49..466ee10 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/impl/PredictModelHandlerImpl.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/impl/PredictModelHandlerImpl.java
@@ -151,6 +151,103 @@
     }
 
     /**
+     * 预测,模拟调整
+     *
+     * @param predictTime
+     * @param predictModel
+     * @param itemName
+     * @param itemNo
+     * @return
+     * @throws ModelInvokeException
+     */
+    @Override
+    public synchronized PredictResultVO predictByModel(Date predictTime, MmPredictModelEntity predictModel,String itemName,String itemNo, double[][] deviation) throws ModelInvokeException {
+        PredictResultVO result = new PredictResultVO();
+        if (predictModel == null) {
+            throw new ModelInvokeException("modelEntity is null");
+        }
+        String modelId = predictModel.getId();
+        try {
+            List<SampleData> sampleDataList = sampleConstructor.constructSample(TypeA.Predict.name(), modelId, predictTime, itemName, new HashMap<>());
+            String modelPath = predictModel.getModelpath();
+            if (modelPath == null) {
+                log.info("模型路径不存在,modelId=" + modelId);
+                return null;
+            }
+            IAILModel newModelBean = composeNewModelBean(predictModel);
+            HashMap<String, Object> settings = getPredictSettingsByModelId(modelId);
+            // 校验setting必须有pyFile,否则可能导致程序崩溃
+            if (!settings.containsKey(MdkConstant.PY_FILE_KEY)) {
+                throw new RuntimeException("模型设置参数缺少必要信息【" + MdkConstant.PY_FILE_KEY +  "】,请重新上传模型!");
+            }
+
+            if (settings == null) {
+                log.error("模型setting不存在,modelId=" + modelId);
+                return null;
+            }
+            int portLength = sampleDataList.size();
+            Object[] param2Values = new Object[portLength + 2];
+            for (int i = 0; i < portLength; i++) {
+                param2Values[i] = sampleDataList.get(i).getMatrix();
+            }
+            param2Values[portLength] = newModelBean.getDataMap().get("models");
+            param2Values[portLength + 1] = settings;
+
+            log.info("####################### 模拟调整 "+ "【itemId:" + predictModel.getItemid() + ",itemName:" + itemName + ",itemNo:" + itemNo + "】 ##########################");
+            log.info("参数: " + JSON.toJSONString(param2Values));
+
+            //IAILMDK.run
+            HashMap<String, Object> modelResult = DllUtils.run(newModelBean, param2Values, predictModel.getMpkprojectid());
+            //打印结果
+            log.info("预测模型计算完成:modelId=" + modelId + ",modelName=" + predictModel.getMethodname() + ",modelResult=" + JSON.toJSONString(modelResult));
+            //判断模型结果
+            if (!modelResult.containsKey(CommonConstant.MDK_STATUS_CODE) || !modelResult.containsKey(CommonConstant.MDK_RESULT) ||
+                    !modelResult.get(CommonConstant.MDK_STATUS_CODE).toString().equals(CommonConstant.MDK_STATUS_100)) {
+                throw new ModelResultErrorException("模型结果异常:" + modelResult);
+            }
+            modelResult = (HashMap<String, Object>) modelResult.get(CommonConstant.MDK_RESULT);
+
+            List<MmItemOutputEntity> itemOutputList = mmItemOutputService.getByItemid(predictModel.getItemid());
+            Map<MmItemOutputEntity, double[]> predictMatrixs = new HashMap<>();
+            for (MmItemOutputEntity output : itemOutputList) {
+                if (!modelResult.containsKey(output.getResultstr())) {
+                    continue;
+                }
+                OutResultType outResultType = OutResultType.getEumByCode(output.getResultType());
+                switch (outResultType) {
+                    case D1:
+                        double[] temp1 = (double[]) modelResult.get(output.getResultstr());
+                        predictMatrixs.put(output, temp1);
+                        break;
+                    case D2:
+                        double[][] temp2 = (double[][]) modelResult.get(output.getResultstr());
+                        double[] tempColumn = new double[temp2.length];
+                        for (int i = 0; i < tempColumn.length; i++) {
+                            tempColumn[i] = temp2[i][output.getResultIndex()];
+                        }
+                        predictMatrixs.put(output, tempColumn);
+                        break;
+                    case D:
+                        Double temp3 = (Double) modelResult.get(output.getResultstr());
+                        predictMatrixs.put(output, new double[]{temp3});
+                        break;
+                    default:
+                        break;
+                }
+            }
+            result.setPredictMatrixs(predictMatrixs);
+            result.setModelResult(modelResult);
+            result.setPredictTime(predictTime);
+        } catch (ModelResultErrorException ex) {
+            log.error("模型结果异常", ex);
+            throw ex;
+        } catch (Exception ex) {
+            log.error("调用发生异常,异常信息为:{0}", ex.getMessage());
+            throw new ModelInvokeException(ex.getMessage());
+        }
+        return result;
+    }
+    /**
      * 构造IAILMDK.run()方法的newModelBean参数
      *
      * @param predictModel
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/PredictSampleDataConstructor.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/PredictSampleDataConstructor.java
index c2bfd25..cfe224f 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/PredictSampleDataConstructor.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/PredictSampleDataConstructor.java
@@ -31,6 +31,7 @@
 import org.springframework.stereotype.Component;
 import org.springframework.util.CollectionUtils;
 
+import java.math.BigDecimal;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -88,6 +89,8 @@
             }
         }
 
+        int deviationIndex = 0;
+
         //对每个爪分别进行计算
         for (ColumnItemPort entry : sampleInfo.getColumnInfo()) {
             double[][] matrix = new double[0][0];
@@ -129,10 +132,30 @@
                     }
                 }
 
+                //找出对应的调整值
+                double[] deviationItem = null;
+                if (sampleInfo.getDeviation() != null && sampleInfo.getDeviation().length > 0) {
+                    deviationItem = sampleInfo.getDeviation()[deviationIndex];
+                }
+                deviationIndex ++;
+
                 //对每一项依次进行数据查询,然后将查询出的值赋给matrix对应的位置
                 for (int i = 0; i < entry.getColumnItemList().size(); i++) {
                     try {
                         List<DataValueVO> dataEntityList = getData(entry.getColumnItemList().get(i), pointMap, planMap,indMap);
+
+                        //设置调整值
+                        if (deviationItem != null && deviationItem.length > 0) {
+                            logger.info("设置调整值, i = " + i);
+                            if (deviationItem[i] <= 0) {
+                                continue;
+                            }
+                            for(int dataKey = 1; dataKey < dataEntityList.size(); dataKey ++) {
+                                DataValueVO item = dataEntityList.get(dataKey);
+                                item.setDataValue(item.getDataValue() + deviationItem[i]);
+                            }
+                        }
+
                         //补全数据
                         ColumnItem columnItem = entry.getColumnItemList().get(i);
                         dataEntityList = super.completionData(matrix.length, dataEntityList, columnItem.startTime, columnItem.endTime, columnItem.getParamType(),columnItem.getGranularity());
@@ -153,8 +176,6 @@
                     }
                 }
             }
-
-
             SampleData sampleData = new SampleData();
             sampleData.setMatrix(matrix);
             sampleDataList.add(sampleData);
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleConstructor.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleConstructor.java
index 32e0930..c50083b 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleConstructor.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleConstructor.java
@@ -44,4 +44,22 @@
 
 
     }
+
+    public List<SampleData> constructSample(String typeA, String modelId, Date runTime,String itemName,
+                                            Map<Integer, Integer> dynamicDataLength, double[][] deviation) throws ModelInvokeException {
+        try {
+            SampleInfoConstructor sampleInfoConstructor = sampleFactory.createSampleInfo(typeA, modelId);
+            SampleInfo sampleInfo = sampleInfoConstructor.prepareSampleInfo(modelId, runTime, dynamicDataLength);
+            sampleInfo.setDeviation(deviation);
+            SampleDataConstructor sampleDataConstructor = sampleFactory.createSampleData(typeA);
+            return sampleDataConstructor.prepareSampleData(sampleInfo);
+        } catch (Exception e) {
+            e.printStackTrace();
+            log.error("获取模型的算法参数异常",e);
+            throw new ModelInvokeException(MessageFormat.format("{0},Name:{1}",
+                    ModelInvokeException.errorGetModelArithParam, itemName));
+        }
+
+
+    }
 }
\ No newline at end of file
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/dto/SampleInfo.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/dto/SampleInfo.java
index 065002a..fe54b94 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/dto/SampleInfo.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/dto/SampleInfo.java
@@ -33,7 +33,8 @@
 
     private Integer sampleCycle;
 
-    private BigDecimal[][] deviation;
+    // 调整值
+    private double[][] deviation;
     // 所有测点信息,避免重复查询
     private Map<String, ApiPointDTO> pointMap;
     // 所有计划数据信息,避免重复查询
diff --git a/iailab-module-model/iailab-module-model-biz/src/main/resources/application-dev.yaml b/iailab-module-model/iailab-module-model-biz/src/main/resources/application-dev.yaml
index be3bb55..5618692 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/resources/application-dev.yaml
+++ b/iailab-module-model/iailab-module-model-biz/src/main/resources/application-dev.yaml
@@ -55,7 +55,7 @@
 
 influx-db:
   org: iailab
-  token: NloIinwybvMwKlJ8SGOAqboXH72EhdQEsnnV7kwtstVu6sbt24LNJ0bVICepeAtl2pxpd1Hj8gDLj9m4hnB7Fw==
-  url: http://127.0.0.1:8086
-  username: dzd
-  password: qwer1234
+  token: _338h4Kbu2KQaes5QwAyOz9pTUueXoSF9XmPi8N9oTS1SrhTZVj4J9JfSraUyWA0PfWMZOlf9QWax-USkJQR_A==
+  url: http://172.16.8.200:8086
+  username: iailab
+  password: iailab2019

--
Gitblit v1.9.3