From be0e4b0b366b810ec2a4379cfdbc9493e42ec8ba Mon Sep 17 00:00:00 2001 From: 潘志宝 <979469083@qq.com> Date: 星期二, 24 六月 2025 07:17:49 +0800 Subject: [PATCH] Merge branch 'master' of http://dlindusit.com:53929/r/ansteel --- ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/entity/PlantChartConfEntity.java | 42 ++++++++++ ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/dao/PlantChartConfDao.java | 14 +++ ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/vo/PlantChartDataVO.java | 37 +++++++++ doc/鞍钢数据接口文档_master.doc | 0 ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/impl/PlantChartConfServiceImpl.java | 74 ++++++++++++++++++ ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PlantController.java | 18 +++- ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/SyncEmsTask.java | 9 - ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/PlantChartConfService.java | 15 +++ 8 files changed, 199 insertions(+), 10 deletions(-) diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PlantController.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PlantController.java index 1f0a725..ffe4ec9 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PlantController.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PlantController.java @@ -1,19 +1,19 @@ package com.iailab.module.ansteel.api.controller.admin; import com.iailab.framework.common.pojo.CommonResult; +import com.iailab.module.ansteel.plant.service.PlantChartConfService; import com.iailab.module.ansteel.plant.service.PlantConfService; import com.iailab.module.ansteel.plant.service.PlantIndexConfService; +import com.iailab.module.ansteel.plant.vo.PlantChartDataVO; import com.iailab.module.ansteel.plant.vo.PlantDataVO; import com.iailab.module.ansteel.plant.vo.PlantIndexDataVO; import io.swagger.v3.oas.annotations.Operation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; +import java.util.Map; import static com.iailab.framework.common.pojo.CommonResult.success; @@ -33,6 +33,9 @@ @Autowired private PlantIndexConfService plantIndexConfService; + @Autowired + private PlantChartConfService plantChartConfService; + @GetMapping("/data") @Operation(summary = "135机组数据") public CommonResult<List<PlantDataVO>> getPlantData(@RequestParam("businessType") String businessType) { @@ -46,4 +49,11 @@ List<PlantIndexDataVO> result = plantIndexConfService.getPlantIndexData(businessType); return success(result); } + + @PostMapping("/chart-data") + @Operation(summary = "135机组指标趋势数据") + public CommonResult<PlantChartDataVO> getPlantChartData(@RequestBody Map tMap) { + PlantChartDataVO result = plantChartConfService.getPlantChartData(tMap); + return success(result); + } } \ No newline at end of file diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/SyncEmsTask.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/SyncEmsTask.java index f989ee0..64f38cd 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/SyncEmsTask.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/SyncEmsTask.java @@ -3,9 +3,6 @@ import com.iailab.module.ansteel.ems.entity.ByqlzAdsEntity; import com.iailab.module.ansteel.ems.service.ByqlzAdsService; import com.iailab.module.ansteel.sync.service.SyncLogService; -import com.iailab.module.model.api.mdk.MdkApi; -import com.iailab.module.model.api.mdk.dto.MdkScheduleReqDTO; -import com.iailab.module.model.api.mdk.dto.MdkScheduleRespDTO; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -14,9 +11,9 @@ import java.sql.*; import java.text.SimpleDateFormat; -import java.time.format.DateTimeFormatter; -import java.util.*; -import java.util.Date; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.List; /** * 同步ems.byqlz_ads_wh_cl_jh01_byq表定时任务 diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/dao/PlantChartConfDao.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/dao/PlantChartConfDao.java new file mode 100644 index 0000000..ad0dd6d --- /dev/null +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/dao/PlantChartConfDao.java @@ -0,0 +1,14 @@ +package com.iailab.module.ansteel.plant.dao; + +import com.iailab.framework.common.dao.BaseDao; +import com.iailab.module.ansteel.plant.entity.PlantChartConfEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * @description: + * @author: lirm + * @date: 2025/6/20 13:59 + **/ +@Mapper +public interface PlantChartConfDao extends BaseDao<PlantChartConfEntity> { +} \ No newline at end of file diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/entity/PlantChartConfEntity.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/entity/PlantChartConfEntity.java new file mode 100644 index 0000000..2a99802 --- /dev/null +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/entity/PlantChartConfEntity.java @@ -0,0 +1,42 @@ +package com.iailab.module.ansteel.plant.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; + +/** + * @description: + * @author: lirm + * @date: 2025/6/20 13:59 + **/ +@Data +@TableName("t_plant_chart_conf") +public class PlantChartConfEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_UUID) + private String id; + + private String indType; + + private String indCode; + + private String indName; + + private String indAvg; + + private String indTheory; + + private String indOptimal; + + private String indReal; + + private String indPower; + +} \ No newline at end of file diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/PlantChartConfService.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/PlantChartConfService.java new file mode 100644 index 0000000..bacd409 --- /dev/null +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/PlantChartConfService.java @@ -0,0 +1,15 @@ +package com.iailab.module.ansteel.plant.service; + +import com.iailab.module.ansteel.plant.vo.PlantChartDataVO; + +import java.util.Map; + +/** + * @description: + * @author: lirm + * @date: 2025/6/20 13:59 + **/ +public interface PlantChartConfService { + + PlantChartDataVO getPlantChartData(Map tMap); +} \ No newline at end of file diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/impl/PlantChartConfServiceImpl.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/impl/PlantChartConfServiceImpl.java new file mode 100644 index 0000000..e907a10 --- /dev/null +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/impl/PlantChartConfServiceImpl.java @@ -0,0 +1,74 @@ +package com.iailab.module.ansteel.plant.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.iailab.module.ansteel.plant.dao.PlantChartConfDao; +import com.iailab.module.ansteel.plant.entity.PlantChartConfEntity; +import com.iailab.module.ansteel.plant.service.PlantChartConfService; +import com.iailab.module.ansteel.plant.vo.PlantChartDataVO; +import com.iailab.module.data.api.point.DataPointApi; +import com.iailab.module.data.api.point.dto.ApiPointsValueQueryDTO; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; + +import javax.annotation.Resource; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +/** + * @description: + * @author: lirm + * @date: 2025/6/20 13:59 + **/ +@Slf4j +@Service +public class PlantChartConfServiceImpl implements PlantChartConfService { + private Logger logger = LoggerFactory.getLogger(getClass()); + + @Resource + private PlantChartConfDao plantChartConfDao; + @Resource + private DataPointApi dataPointApi; + + @Override + public PlantChartDataVO getPlantChartData(Map tMap) { + PlantChartDataVO result = new PlantChartDataVO(); + if(ObjectUtils.isEmpty(tMap.get("indType")) || ObjectUtils.isEmpty(tMap.get("indCode"))){ + logger.info("输入参数为空"); + return result; + } + QueryWrapper<PlantChartConfEntity> queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("ind_type",tMap.get("indType")); + queryWrapper.eq("indCode",tMap.get("indCode")); + List<PlantChartConfEntity> plantChartConfList = plantChartConfDao.selectList(queryWrapper); + if (CollectionUtils.isEmpty(plantChartConfList)) { + log.info("plantChartConfList is null"); + return result; + } + PlantChartConfEntity plantChartConfEntity = plantChartConfList.get(0); + // 筛选DATAPOINT一次性查询出全部 + List<String> pointNos = Stream.of(plantChartConfEntity.getIndAvg(),plantChartConfEntity.getIndTheory(),plantChartConfEntity.getIndOptimal(),plantChartConfEntity.getIndReal()).collect(Collectors.toList()); + if (!CollectionUtils.isEmpty(pointNos)) { + ApiPointsValueQueryDTO queryDTO = new ApiPointsValueQueryDTO(); + queryDTO.setPointNos(pointNos); + Map<String, List<Map<String, Object>>> pointsHisValues = dataPointApi.queryPointsHistoryValue(queryDTO); + if (CollectionUtils.isEmpty(pointsHisValues)) { + log.info("pointsHisValues is null"); + return result; + } + result.setIndCode(plantChartConfEntity.getIndCode()); + result.setIndName(plantChartConfEntity.getIndName()); + result.setIndAvgHisList(pointsHisValues.get(plantChartConfEntity.getIndAvg())); + result.setIndTheoryHisList(pointsHisValues.get(plantChartConfEntity.getIndTheory())); + result.setIndOptimalHisList(pointsHisValues.get(plantChartConfEntity.getIndOptimal())); + result.setIndRealHisList(pointsHisValues.get(plantChartConfEntity.getIndReal())); + result.setIndPowerHisList(pointsHisValues.get(plantChartConfEntity.getIndPower())); + } + return result; + } +} \ No newline at end of file diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/vo/PlantChartDataVO.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/vo/PlantChartDataVO.java new file mode 100644 index 0000000..02edafb --- /dev/null +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/vo/PlantChartDataVO.java @@ -0,0 +1,37 @@ +package com.iailab.module.ansteel.plant.vo; + +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.List; +import java.util.Map; + +/** + * @description: + * @author: lirm + * @date: 2025/6/23 + **/ +@Data +public class PlantChartDataVO implements Serializable { + private static final long serialVersionUID = 1L; + + private String id; + + private String indCode; + + private String indName; + + private String indType; + + private List<Map<String, Object>> indAvgHisList; + + private List<Map<String, Object>> indTheoryHisList; + + private List<Map<String, Object>> indOptimalHisList; + + private List<Map<String, Object>> indRealHisList; + + private List<Map<String, Object>> indPowerHisList; + +} \ No newline at end of file diff --git "a/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_master.doc" "b/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_master.doc" index 554716b..0e07195 100644 --- "a/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_master.doc" +++ "b/doc/\351\236\215\351\222\242\346\225\260\346\215\256\346\216\245\345\217\243\346\226\207\346\241\243_master.doc" Binary files differ -- Gitblit v1.9.3