From d7933347fba0f5bcd33737e1f137b9e66d7224a1 Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期四, 19 六月 2025 10:10:00 +0800
Subject: [PATCH] t_page_param 参数设置

---
 ansteel-biz/db/mysql.sql                                                                          |   20 +++++
 ansteel-biz/src/main/java/com/iailab/module/ansteel/page/vo/PageParamRespVO.java                  |   21 +++++
 ansteel-biz/src/main/java/com/iailab/module/ansteel/page/service/impl/PageParamServiceImpl.java   |   56 ++++++++++++++
 ansteel-biz/src/main/java/com/iailab/module/ansteel/page/dao/PageParamDao.java                    |   14 +++
 ansteel-biz/src/main/java/com/iailab/module/ansteel/page/package-info.java                        |    1 
 ansteel-biz/src/main/java/com/iailab/module/ansteel/page/service/PageParamService.java            |   19 ++++
 ansteel-biz/src/main/java/com/iailab/module/ansteel/page/entity/PageParamEntity.java              |   49 ++++++++++++
 ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PageParamController.java |   41 ++++++++++
 ansteel-biz/src/main/java/com/iailab/module/ansteel/page/vo/PageParamValueReqVO.java              |   16 ++++
 ansteel-biz/src/main/resources/application.yaml                                                   |    1 
 10 files changed, 238 insertions(+), 0 deletions(-)

diff --git a/ansteel-biz/db/mysql.sql b/ansteel-biz/db/mysql.sql
index 499a37b..6a9a0c5 100644
--- a/ansteel-biz/db/mysql.sql
+++ b/ansteel-biz/db/mysql.sql
@@ -1003,3 +1003,23 @@
     create_date  datetime COMMENT '创建时间',
     PRIMARY KEY (`id`) USING BTREE
 ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = DYNAMIC COMMENT '同步日志';
+
+
+CREATE TABLE `t_page_param`
+(
+    `id`          varchar(36) NOT NULL COMMENT 'id',
+    `param_type`  varchar(50) NULL DEFAULT NULL COMMENT '参数类型',
+    `param_code`  varchar(50) NULL DEFAULT NULL COMMENT '参数编码',
+    `param_name`  varchar(50) NULL DEFAULT NULL COMMENT '参数名称',
+    `param_value` varchar(50) NULL DEFAULT NULL COMMENT '参数值',
+    `point_no`    varchar(50) NULL DEFAULT NULL COMMENT '测点编码',
+    `chart_code`  varchar(50) NULL DEFAULT NULL COMMENT '图表编码',
+    `chart_param` varchar(50) NULL DEFAULT NULL COMMENT '图表参数',
+    `model_id`    varchar(50) NULL DEFAULT NULL COMMENT '模型ID',
+    `model_param` varchar(50) NULL DEFAULT NULL COMMENT '模型参数',
+    `sort`        int DEFAULT NULL COMMENT '排序',
+    `update_date` datetime COMMENT '创建时间',
+    PRIMARY KEY (`id`) USING BTREE,
+    KEY           `idx_param_type` (`param_type`),
+    UNIQUE KEY `idx_param_code` (`param_code`)
+) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = DYNAMIC COMMENT '参数设置';
diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PageParamController.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PageParamController.java
new file mode 100644
index 0000000..dbb42ab
--- /dev/null
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PageParamController.java
@@ -0,0 +1,41 @@
+package com.iailab.module.ansteel.api.controller.admin;
+
+import com.iailab.framework.common.pojo.CommonResult;
+import com.iailab.module.ansteel.page.service.PageParamService;
+import com.iailab.module.ansteel.page.vo.PageParamRespVO;
+import com.iailab.module.ansteel.page.vo.PageParamValueReqVO;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 参数设置
+ *
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年06月19日
+ */
+@Slf4j
+@RestController
+@RequestMapping("/ansteel/api/param")
+public class PageParamController {
+
+    @Autowired
+    private PageParamService pageParamService;
+
+    @GetMapping("/list")
+    public CommonResult<List<PageParamRespVO>> list(@RequestParam Map<String, Object> params) {
+        String type = (String) params.get("type");
+        List<PageParamRespVO> list = pageParamService.list(type);
+        return CommonResult.success(list);
+    }
+
+    @PostMapping("/update-value")
+    public CommonResult<Boolean> updateValue(@RequestBody PageParamValueReqVO reqVO) {
+        pageParamService.updateValue(reqVO);
+        return CommonResult.success(true);
+    }
+}
\ No newline at end of file
diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/dao/PageParamDao.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/dao/PageParamDao.java
new file mode 100644
index 0000000..b9e42be
--- /dev/null
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/dao/PageParamDao.java
@@ -0,0 +1,14 @@
+package com.iailab.module.ansteel.page.dao;
+
+import com.iailab.framework.common.dao.BaseDao;
+import com.iailab.module.ansteel.page.entity.PageParamEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年06月19日
+ */
+@Mapper
+public interface PageParamDao extends BaseDao<PageParamEntity> {
+}
diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/entity/PageParamEntity.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/entity/PageParamEntity.java
new file mode 100644
index 0000000..0da51c0
--- /dev/null
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/entity/PageParamEntity.java
@@ -0,0 +1,49 @@
+package com.iailab.module.ansteel.page.entity;
+
+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年06月19日
+ */
+@Data
+@TableName("t_page_param")
+public class PageParamEntity implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * id
+     */
+    @TableId
+    private String id;
+
+    private String paramType;
+
+    private String paramCode;
+
+    private String paramName;
+
+    private String paramValue;
+
+    private String pointNo;
+
+    private String chartCode;
+
+    private String chartParam;
+
+    private String modelId;
+
+    private String modelParam;
+
+    private Integer sort;
+
+    private Date updateDate;
+}
\ No newline at end of file
diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/package-info.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/package-info.java
new file mode 100644
index 0000000..7d28330
--- /dev/null
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/package-info.java
@@ -0,0 +1 @@
+package com.iailab.module.ansteel.page;
\ No newline at end of file
diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/service/PageParamService.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/service/PageParamService.java
new file mode 100644
index 0000000..2d33079
--- /dev/null
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/service/PageParamService.java
@@ -0,0 +1,19 @@
+package com.iailab.module.ansteel.page.service;
+
+import com.iailab.module.ansteel.page.entity.PageParamEntity;
+import com.iailab.module.ansteel.page.vo.PageParamRespVO;
+import com.iailab.module.ansteel.page.vo.PageParamValueReqVO;
+
+import java.util.List;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年06月19日
+ */
+public interface PageParamService {
+
+    List<PageParamRespVO> list(String paramType);
+
+    void updateValue(PageParamValueReqVO reqVO);
+}
diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/service/impl/PageParamServiceImpl.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/service/impl/PageParamServiceImpl.java
new file mode 100644
index 0000000..3002e6f
--- /dev/null
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/service/impl/PageParamServiceImpl.java
@@ -0,0 +1,56 @@
+package com.iailab.module.ansteel.page.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.iailab.framework.common.util.object.ConvertUtils;
+import com.iailab.module.ansteel.page.dao.PageParamDao;
+import com.iailab.module.ansteel.page.entity.PageParamEntity;
+import com.iailab.module.ansteel.page.service.PageParamService;
+import com.iailab.module.ansteel.page.vo.PageParamRespVO;
+import com.iailab.module.ansteel.page.vo.PageParamValueReqVO;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年06月19日
+ */
+@Slf4j
+@Service
+public class PageParamServiceImpl implements PageParamService {
+
+    @Resource
+    private PageParamDao pageParamDao;
+
+    @Override
+    public List<PageParamRespVO> list(String paramType) {
+        if (StringUtils.isBlank(paramType)) {
+            return new ArrayList<>();
+        }
+        QueryWrapper<PageParamEntity> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("param_type", paramType).orderByAsc("sort");
+        List<PageParamEntity> list = pageParamDao.selectList(queryWrapper);
+        return ConvertUtils.sourceToTarget(list, PageParamRespVO.class);
+    }
+
+    @Override
+    public void updateValue(PageParamValueReqVO reqVO) {
+        QueryWrapper<PageParamEntity> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("param_code", reqVO.getParamCode());
+        PageParamEntity entity = pageParamDao.selectOne(queryWrapper);
+        if (entity == null) {
+            log.info("PageParamEntity is null");
+            return;
+        }
+
+        PageParamEntity entityUpdate = new PageParamEntity();
+        entityUpdate.setId(entity.getId());
+        entityUpdate.setParamValue(reqVO.getParamValue());
+        pageParamDao.updateById(entity);
+    }
+}
\ No newline at end of file
diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/vo/PageParamRespVO.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/vo/PageParamRespVO.java
new file mode 100644
index 0000000..46e4446
--- /dev/null
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/vo/PageParamRespVO.java
@@ -0,0 +1,21 @@
+package com.iailab.module.ansteel.page.vo;
+
+import lombok.Data;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年06月19日
+ */
+@Data
+public class PageParamRespVO {
+
+    private String paramType;
+
+    private String paramCode;
+
+    private String paramName;
+
+    private String paramValue;
+
+}
\ No newline at end of file
diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/vo/PageParamValueReqVO.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/vo/PageParamValueReqVO.java
new file mode 100644
index 0000000..1f1a9d9
--- /dev/null
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/page/vo/PageParamValueReqVO.java
@@ -0,0 +1,16 @@
+package com.iailab.module.ansteel.page.vo;
+
+import lombok.Data;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年06月19日
+ */
+@Data
+public class PageParamValueReqVO {
+
+    private String paramCode;
+
+    private String paramValue;
+}
\ No newline at end of file
diff --git a/ansteel-biz/src/main/resources/application.yaml b/ansteel-biz/src/main/resources/application.yaml
index 77649d5..32ac5db 100644
--- a/ansteel-biz/src/main/resources/application.yaml
+++ b/ansteel-biz/src/main/resources/application.yaml
@@ -189,6 +189,7 @@
       - t_power_factor_control
       - t_xxb_duty_report
       - t_plant_conf
+      - t_page_param
   swagger:
     title: 鞍钢鲅鱼圈能源管控系统
     description: 鞍钢鲅鱼圈能源管控系统

--
Gitblit v1.9.3