From 440472f1ec77aeab4034eae923d23eeb0180f630 Mon Sep 17 00:00:00 2001 From: wxz Date: Wed, 17 Mar 2021 10:53:07 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=B9=E6=8E=A5=E4=B8=89=E6=96=B9=E5=B9=B3?= =?UTF-8?q?=E5=8F=B0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/form/ThirdPlatformFormDTO.java | 19 ++++++++ ...hirdplatformCustomerRegisterResultDTO.java | 18 ++++++++ .../impl/LuzhouGridPlatformApiService.java | 15 +++++-- .../LZGridPlatformProjectAssistResult.java | 9 ++++ .../result/ProjectAssistResult.java | 5 +++ .../epmet/controller/ProjectController.java | 5 ++- .../controller/ThirdPlatformController.java | 43 +++++++++++++++++++ .../dao/ThirdplatformCustomerRegisterDao.java | 10 +++++ .../com/epmet/service/ProjectService.java | 3 +- .../epmet/service/ThirdPlatformService.java | 11 +++++ .../service/impl/ProjectServiceImpl.java | 4 +- .../impl/ThirdPlatformServiceImpl.java | 21 +++++++++ .../ThirdplatformCustomerRegisterDao.xml | 22 ++++++++++ 13 files changed, 177 insertions(+), 8 deletions(-) create mode 100644 epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/ThirdPlatformFormDTO.java create mode 100644 epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/result/ThirdplatformCustomerRegisterResultDTO.java create mode 100644 epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/ThirdPlatformController.java create mode 100644 epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/ThirdPlatformService.java create mode 100644 epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ThirdPlatformServiceImpl.java diff --git a/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/ThirdPlatformFormDTO.java b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/ThirdPlatformFormDTO.java new file mode 100644 index 0000000000..3f488e75c1 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/ThirdPlatformFormDTO.java @@ -0,0 +1,19 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class ThirdPlatformFormDTO { + + // 列出注册关系分组 + public static interface ListRegRelsGroups {} + + @NotBlank(message = "客户ID不能为空", groups = { ListRegRelsGroups.class }) + private String customerId; + + @NotBlank(message = "客户ID不能为空", groups = { ListRegRelsGroups.class }) + private String actionKey; + +} diff --git a/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/result/ThirdplatformCustomerRegisterResultDTO.java b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/result/ThirdplatformCustomerRegisterResultDTO.java new file mode 100644 index 0000000000..d637837fbc --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/result/ThirdplatformCustomerRegisterResultDTO.java @@ -0,0 +1,18 @@ +package com.epmet.dto.result; + +import lombok.Data; + +@Data +public class ThirdplatformCustomerRegisterResultDTO { + /** + * + */ + private String customerId; + + /** + * + */ + private String platformId; + + private String platformName; +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/impl/LuzhouGridPlatformApiService.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/impl/LuzhouGridPlatformApiService.java index 433deb8f7a..b38a3e6758 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/impl/LuzhouGridPlatformApiService.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/impl/LuzhouGridPlatformApiService.java @@ -2,6 +2,7 @@ package com.epmet.apiservice.impl; import com.alibaba.fastjson.JSON; import com.epmet.apiservice.ApiService; +import com.epmet.apiservice.result.LZGridPlatformProjectAssistResult; import com.epmet.apiservice.result.ProjectAssistResult; import com.epmet.constant.ThirdPlatformActions; import com.epmet.dto.form.ProjectApplyAssistFormDTO; @@ -17,13 +18,21 @@ public class LuzhouGridPlatformApiService extends ApiService { @Override public ProjectAssistResult projectAssist(ProjectApplyAssistFormDTO formDTO) { String platformId = formDTO.getPlatformId(); - String result = sendPostRequest(platformId, ThirdPlatformActions.PROJECT_ASSIST, "{}", null); - ProjectAssistResult projectAssistResult = null; + + // 正式调用第三方平台 + //String result = sendPostRequest(platformId, ThirdPlatformActions.PROJECT_ASSIST, "{}", null); + + // 开发阶段临时写死 + String result = "{\"eventId\":\"test-task-id\"}"; + ProjectAssistResult projectAssistResult = new ProjectAssistResult(); if (!StringUtils.isBlank(result)) { // 此处要经过一系列业务处理,将第三方平台返回的数据进行解析,等处理最后转换成ProjectAssistResult类型,返回。ProjectAssistResult这个类型是 // 所有apiService的projectAssist方法返回值的统一类型,是我们的epmet-cloud所需要的数据的实体, // 所有apiService都要想办法转化成这个类型。 - //projectAssistResult = JSON.parseObject(result, ProjectAssistResult.class); + LZGridPlatformProjectAssistResult lzResult = JSON.parseObject(result, LZGridPlatformProjectAssistResult.class); + + // 此处设置为第三方系统返回的唯一id + projectAssistResult.setTaskId(lzResult.getEventId()); } System.out.println("泸州网格化平台项目协助发送成功"); return projectAssistResult; diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/result/LZGridPlatformProjectAssistResult.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/result/LZGridPlatformProjectAssistResult.java index ef74410885..1ffd372576 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/result/LZGridPlatformProjectAssistResult.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/result/LZGridPlatformProjectAssistResult.java @@ -1,4 +1,13 @@ package com.epmet.apiservice.result; +import lombok.Data; + +@Data public class LZGridPlatformProjectAssistResult { + + /** + * 事件id + */ + private String eventId; + } diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/result/ProjectAssistResult.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/result/ProjectAssistResult.java index 2da96d1e17..de992bdd0f 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/result/ProjectAssistResult.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/apiservice/result/ProjectAssistResult.java @@ -5,4 +5,9 @@ import lombok.Data; @Data public class ProjectAssistResult { + /** + * 任务id + */ + private String taskId; + } diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/ProjectController.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/ProjectController.java index 746205b85c..3899ed9fda 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/ProjectController.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/ProjectController.java @@ -1,5 +1,6 @@ package com.epmet.controller; +import com.epmet.apiservice.result.ProjectAssistResult; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dto.form.ProjectApplyAssistFormDTO; @@ -45,8 +46,8 @@ public class ProjectController { @PostMapping("apply-assist") public Result applyAssist(@RequestBody ProjectApplyAssistFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); - projectService.applyAssist(formDTO); - return new Result(); + ProjectAssistResult projectAssistResult = projectService.applyAssist(formDTO); + return new Result().ok(projectAssistResult); } } diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/ThirdPlatformController.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/ThirdPlatformController.java new file mode 100644 index 0000000000..64c7f0e7f0 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/ThirdPlatformController.java @@ -0,0 +1,43 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.dto.form.ThirdPlatformFormDTO; +import com.epmet.dto.result.ThirdplatformCustomerRegisterResultDTO; +import com.epmet.service.ThirdPlatformService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * 第三方平台维护相关api + */ +@RestController +@RequestMapping("thirdplatform") +public class ThirdPlatformController { + + + @Autowired + private ThirdPlatformService thirdPlatformService; + + /** + * 列出第三方平台注册关系 + * @param input + * @return + */ + @PostMapping("list-reg-rels") + public Result> listRegsteredPlatforms(@RequestBody ThirdPlatformFormDTO input) { + ValidatorUtils.validateEntity(input); + List platformRegs = thirdPlatformService.listByCustomerId(input.getCustomerId(), input.getActionKey()); + return new Result>().ok(platformRegs); + } + + //@PostMapping("register") + + + +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/ThirdplatformCustomerRegisterDao.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/ThirdplatformCustomerRegisterDao.java index e3a39cbbe2..b5ffe5cf82 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/ThirdplatformCustomerRegisterDao.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/ThirdplatformCustomerRegisterDao.java @@ -19,10 +19,13 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.constant.ThirdPlatformConstant; +import com.epmet.dto.result.ThirdplatformCustomerRegisterResultDTO; import com.epmet.entity.ThirdplatformCustomerRegisterEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** * * @@ -32,5 +35,12 @@ import org.apache.ibatis.annotations.Param; @Mapper public interface ThirdplatformCustomerRegisterDao extends BaseDao { + /** + * 动态sql查询 + * @param customerId + * @return + */ + List listDTOS(@Param("customerId") String customerId, @Param("actionKey") String actionKey); + ThirdplatformCustomerRegisterEntity getByCustomerIdAndPlatformId(@Param("customerId") String customerId, @Param("platformId") String platformId); } \ No newline at end of file diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/ProjectService.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/ProjectService.java index 9ac4b55558..1e9d75fdc1 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/ProjectService.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/ProjectService.java @@ -1,5 +1,6 @@ package com.epmet.service; +import com.epmet.apiservice.result.ProjectAssistResult; import com.epmet.dto.form.ProjectApplyAssistFormDTO; import com.epmet.dto.form.TPFDemoFormDTO; @@ -14,5 +15,5 @@ public interface ProjectService { * * @param formDTO */ - void applyAssist(ProjectApplyAssistFormDTO formDTO); + ProjectAssistResult applyAssist(ProjectApplyAssistFormDTO formDTO); } diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/ThirdPlatformService.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/ThirdPlatformService.java new file mode 100644 index 0000000000..74b4cab44f --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/ThirdPlatformService.java @@ -0,0 +1,11 @@ +package com.epmet.service; + +import com.epmet.dto.result.ThirdplatformCustomerRegisterResultDTO; + +import java.util.List; + +public interface ThirdPlatformService { + + List listByCustomerId(String customerId, String actionKey); + +} \ No newline at end of file diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java index 4401c6fba2..f652f6b995 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java @@ -24,7 +24,7 @@ public class ProjectServiceImpl implements ProjectService, ApiServiceSelector { } @Override - public void applyAssist(ProjectApplyAssistFormDTO formDTO) { + public ProjectAssistResult applyAssist(ProjectApplyAssistFormDTO formDTO) { String customerId = formDTO.getCustomerId(); String platformId = formDTO.getPlatformId(); @@ -33,6 +33,6 @@ public class ProjectServiceImpl implements ProjectService, ApiServiceSelector { // 判断该客户是否注册了该平台,如果没有的话,抛出异常 apiService.judgeRegistered(customerId, platformId); - ProjectAssistResult projectAssistResult = apiService.projectAssist(formDTO); + return apiService.projectAssist(formDTO); } } diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ThirdPlatformServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ThirdPlatformServiceImpl.java new file mode 100644 index 0000000000..40556ebaca --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ThirdPlatformServiceImpl.java @@ -0,0 +1,21 @@ +package com.epmet.service.impl; + +import com.epmet.dao.ThirdplatformCustomerRegisterDao; +import com.epmet.dto.result.ThirdplatformCustomerRegisterResultDTO; +import com.epmet.service.ThirdPlatformService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class ThirdPlatformServiceImpl implements ThirdPlatformService { + + @Autowired + private ThirdplatformCustomerRegisterDao thirdplatformCustomerRegisterDao; + + @Override + public List listByCustomerId(String customerId, String actionKey) { + return thirdplatformCustomerRegisterDao.listDTOS(customerId, actionKey); + } +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/ThirdplatformCustomerRegisterDao.xml b/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/ThirdplatformCustomerRegisterDao.xml index c8545d01ee..10edc458e3 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/ThirdplatformCustomerRegisterDao.xml +++ b/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/ThirdplatformCustomerRegisterDao.xml @@ -32,5 +32,27 @@ and DEL_FLAG = 0 + + \ No newline at end of file