From 6f0d2f02ddd1c952b58b1eda7b7e07f469433056 Mon Sep 17 00:00:00 2001 From: huangfeng Date: Wed, 9 Oct 2024 11:00:34 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E5=8F=82=E5=BC=95?= =?UTF-8?q?=E5=85=A5=E5=BA=93=E5=AF=B9=E5=BA=94=E7=94=9F=E6=88=90=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cac/controller/IcdConfigController.java | 7 +++++ .../cac/controller/ParamBindController.java | 8 +++--- .../repository/RptparamindexRepository.java | 2 ++ .../cac/service/IcdFileConfigService.java | 2 ++ .../xydl/cac/service/ParamBindService.java | 2 +- .../impl/IcdFileConfigServiceImpl.java | 26 +++++++++++++++++++ .../service/impl/ParamBindServiceImpl.java | 2 +- 7 files changed, 43 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/xydl/cac/controller/IcdConfigController.java b/src/main/java/com/xydl/cac/controller/IcdConfigController.java index 91b975f..6db638c 100644 --- a/src/main/java/com/xydl/cac/controller/IcdConfigController.java +++ b/src/main/java/com/xydl/cac/controller/IcdConfigController.java @@ -112,4 +112,11 @@ public class IcdConfigController extends BasicController { return Response.success("OK"); } + @PostMapping("generateParamindex") + @ApiOperation("生成rptparamindex表的基础数据") + public Response generateParamindex() throws Exception { + configService.generateParamindex(); + return Response.success("OK"); + } + } diff --git a/src/main/java/com/xydl/cac/controller/ParamBindController.java b/src/main/java/com/xydl/cac/controller/ParamBindController.java index 407a7a9..cf34a5f 100644 --- a/src/main/java/com/xydl/cac/controller/ParamBindController.java +++ b/src/main/java/com/xydl/cac/controller/ParamBindController.java @@ -74,10 +74,10 @@ public class ParamBindController extends BasicController { return Response.success(result); } - @PostMapping("generateParamindex") - @ApiOperation("生成rptparamindex表的相关绑定数据") - public Response generateParamindex() throws Exception { - String msg = bindService.generateParamindex(); + @PostMapping("updateParamindex") + @ApiOperation("更新rptparamindex表的相关绑定数据") + public Response updateParamindex() throws Exception { + String msg = bindService.updateParamindex(); return Response.success(msg); } diff --git a/src/main/java/com/xydl/cac/repository/RptparamindexRepository.java b/src/main/java/com/xydl/cac/repository/RptparamindexRepository.java index 1607621..45ae4fd 100644 --- a/src/main/java/com/xydl/cac/repository/RptparamindexRepository.java +++ b/src/main/java/com/xydl/cac/repository/RptparamindexRepository.java @@ -15,6 +15,8 @@ public interface RptparamindexRepository extends JpaRepository findAllByParamindexStartingWith(String param); + List findAllByParamindexEquals(String param); + List findAllByParamindexEqualsAndEqmidIsNotNullAndTablenameIsNotNullAndColnameIsNotNull(String paramindex); } \ No newline at end of file diff --git a/src/main/java/com/xydl/cac/service/IcdFileConfigService.java b/src/main/java/com/xydl/cac/service/IcdFileConfigService.java index b8094d8..218f127 100644 --- a/src/main/java/com/xydl/cac/service/IcdFileConfigService.java +++ b/src/main/java/com/xydl/cac/service/IcdFileConfigService.java @@ -24,4 +24,6 @@ public interface IcdFileConfigService { void clearAll(); List compare61850(); + + void generateParamindex() throws Exception; } diff --git a/src/main/java/com/xydl/cac/service/ParamBindService.java b/src/main/java/com/xydl/cac/service/ParamBindService.java index 3e3b22e..d6504c8 100644 --- a/src/main/java/com/xydl/cac/service/ParamBindService.java +++ b/src/main/java/com/xydl/cac/service/ParamBindService.java @@ -24,7 +24,7 @@ public interface ParamBindService { BindDetail getBind(Integer sensorId) throws Exception; - String generateParamindex() throws Exception; + String updateParamindex() throws Exception; void clearAll(); } diff --git a/src/main/java/com/xydl/cac/service/impl/IcdFileConfigServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/IcdFileConfigServiceImpl.java index 23348c2..6a531eb 100644 --- a/src/main/java/com/xydl/cac/service/impl/IcdFileConfigServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/IcdFileConfigServiceImpl.java @@ -212,4 +212,30 @@ public class IcdFileConfigServiceImpl implements IcdFileConfigService { return result; } + @Override + public void generateParamindex() throws Exception { + List typeLIst = configRepository.findAll(); + for (IcdConfigType type : typeLIst) { + List instList = instRepository.findByIcdConfigTypeId(type.getId()); + List attList = attRepository.findByIcdConfigTypeId(type.getId()); + for (IcdConfigTypeInst inst : instList) { + String param = type.getIedName() + type.getLdeviceInst() + "/" + type.getLnClass() + + inst.getInst(); + for (IcdConfigTypeAtt att : attList) { + if (att.containInst(inst.getInst())) { + String paramindex = param + "$" + att.getParam(); + List rptList = rptparamindexRepository.findAllByParamindexEquals(paramindex); + if (CollectionUtils.isEmpty(rptList)) { + Rptparamindex rpt = Rptparamindex.builder() + .paramindex(paramindex) + .objid(0) + .build(); + rptparamindexRepository.save(rpt); + } + } + } + } + } + } + } diff --git a/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java index db7b2cd..a68673d 100644 --- a/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java @@ -282,7 +282,7 @@ public class ParamBindServiceImpl implements ParamBindService { } @Override - public String generateParamindex() throws Exception { + public String updateParamindex() throws Exception { List sensorList = sensorRepository.findByIcdIdIsNotNull(); if (!CollectionUtils.isEmpty(sensorList)) { for (NSensor item : sensorList) {