Forráskód Böngészése

Merge remote-tracking branch 'origin/v1.0.0' into v1.0.0

# Conflicts:
#	src/main/java/com/persagy/apm/alarmservice/group/management/controller/GroupManagementController.java
#	src/main/java/com/persagy/apm/alarmservice/group/management/dao/GroupManagementMapper.java
#	src/main/java/com/persagy/apm/alarmservice/group/management/service/impl/GroupManagementServiceImpl.java
易涛 3 éve
szülő
commit
09ce360eb4
100 módosított fájl, 1923 hozzáadás és 1081 törlés
  1. 6 1
      pom.xml
  2. 15 17
      src/main/java/com/persagy/apm/controller/AlarmConditionController.java
  3. 4 5
      src/main/java/com/persagy/apm/dao/AlarmConditionMapper.java
  4. 8 10
      src/main/java/com/persagy/apm/model/AlarmCondition.java
  5. 73 0
      src/main/java/com/persagy/apm/alarmservice/alarmcondition/model/ConvertAlarmConditionTool.java
  6. 7 10
      src/main/java/com/persagy/apm/model/dto/AddAlarmConditionDTO.java
  7. 3 4
      src/main/java/com/persagy/apm/model/dto/DeleteAlarmConditionDTO.java
  8. 8 10
      src/main/java/com/persagy/apm/model/dto/PageQueryAlarmConditionDTO.java
  9. 7 8
      src/main/java/com/persagy/apm/model/dto/QueryAlarmConditionDTO.java
  10. 3 4
      src/main/java/com/persagy/apm/model/dto/QueryAlarmConditionDetailDTO.java
  11. 8 11
      src/main/java/com/persagy/apm/model/dto/UpdateAlarmConditionDTO.java
  12. 12 14
      src/main/java/com/persagy/apm/model/vo/AlarmConditionItemVO.java
  13. 12 14
      src/main/java/com/persagy/apm/model/vo/AlarmConditionListItemVO.java
  14. 75 0
      src/main/java/com/persagy/apm/alarmservice/alarmcondition/service/IAlarmConditionService.java
  15. 67 75
      src/main/java/com/persagy/apm/service/impl/AlarmConditionServiceImpl.java
  16. 15 17
      src/main/java/com/persagy/apm/controller/CalculateMethodController.java
  17. 4 5
      src/main/java/com/persagy/apm/dao/CalculateMethodMapper.java
  18. 7 9
      src/main/java/com/persagy/apm/model/CalculateMethod.java
  19. 73 0
      src/main/java/com/persagy/apm/alarmservice/calculatemethod/model/ConvertCalculateMethodTool.java
  20. 6 9
      src/main/java/com/persagy/apm/model/dto/AddCalculateMethodDTO.java
  21. 3 4
      src/main/java/com/persagy/apm/model/dto/DeleteCalculateMethodDTO.java
  22. 7 9
      src/main/java/com/persagy/apm/model/dto/PageQueryCalculateMethodDTO.java
  23. 6 7
      src/main/java/com/persagy/apm/model/dto/QueryCalculateMethodDTO.java
  24. 3 4
      src/main/java/com/persagy/apm/model/dto/QueryCalculateMethodDetailDTO.java
  25. 7 10
      src/main/java/com/persagy/apm/model/dto/UpdateCalculateMethodDTO.java
  26. 11 13
      src/main/java/com/persagy/apm/model/vo/CalculateMethodItemVO.java
  27. 11 13
      src/main/java/com/persagy/apm/model/vo/CalculateMethodListItemVO.java
  28. 75 0
      src/main/java/com/persagy/apm/alarmservice/calculatemethod/service/ICalculateMethodService.java
  29. 65 73
      src/main/java/com/persagy/apm/service/impl/CalculateMethodServiceImpl.java
  30. 2 3
      src/main/java/com/persagy/apm/configuration/ElasticSearchConfig.java
  31. 50 0
      src/main/java/com/persagy/apm/alarmservice/configuration/PoemsWebConfigurer.java
  32. 15 17
      src/main/java/com/persagy/apm/controller/GroupAlarmRuleController.java
  33. 4 5
      src/main/java/com/persagy/apm/dao/GroupAlarmRuleMapper.java
  34. 73 0
      src/main/java/com/persagy/apm/alarmservice/group/alarmrule/model/ConvertGroupAlarmRuleTool.java
  35. 6 8
      src/main/java/com/persagy/apm/model/GroupAlarmRule.java
  36. 5 8
      src/main/java/com/persagy/apm/model/dto/AddGroupAlarmRuleDTO.java
  37. 3 4
      src/main/java/com/persagy/apm/model/dto/DeleteGroupAlarmRuleDTO.java
  38. 6 8
      src/main/java/com/persagy/apm/model/dto/PageQueryGroupAlarmRuleDTO.java
  39. 5 6
      src/main/java/com/persagy/apm/model/dto/QueryGroupAlarmRuleDTO.java
  40. 3 4
      src/main/java/com/persagy/apm/model/dto/QueryGroupAlarmRuleDetailDTO.java
  41. 6 9
      src/main/java/com/persagy/apm/model/dto/UpdateGroupAlarmRuleDTO.java
  42. 10 12
      src/main/java/com/persagy/apm/model/vo/GroupAlarmRuleItemVO.java
  43. 10 12
      src/main/java/com/persagy/apm/model/vo/GroupAlarmRuleListItemVO.java
  44. 75 0
      src/main/java/com/persagy/apm/alarmservice/group/alarmrule/service/IGroupAlarmRuleService.java
  45. 63 71
      src/main/java/com/persagy/apm/service/impl/GroupAlarmRuleServiceImpl.java
  46. 5 3
      src/main/java/com/persagy/apm/controller/GroupManagementController.java
  47. 0 0
      src/main/java/com/persagy/apm/alarmservice/group/management/dao/GroupManagementMapper.java
  48. 1 1
      src/main/java/com/persagy/apm/model/GroupManagement.java
  49. 1 1
      src/main/java/com/persagy/apm/model/vo/GroupTreeDetailVO.java
  50. 1 1
      src/main/java/com/persagy/apm/model/vo/GroupTreeVO.java
  51. 1 1
      src/main/java/com/persagy/apm/service/GroupManagementService.java
  52. 2 1
      src/main/java/com/persagy/apm/service/impl/GroupManagementServiceImpl.java
  53. 15 17
      src/main/java/com/persagy/apm/controller/MonitorIndicatorController.java
  54. 4 5
      src/main/java/com/persagy/apm/dao/MonitorIndicatorMapper.java
  55. 73 0
      src/main/java/com/persagy/apm/alarmservice/monitorindicator/model/ConvertMonitorIndicatorTool.java
  56. 5 7
      src/main/java/com/persagy/apm/model/MonitorIndicator.java
  57. 4 7
      src/main/java/com/persagy/apm/model/dto/AddMonitorIndicatorDTO.java
  58. 3 4
      src/main/java/com/persagy/apm/model/dto/DeleteMonitorIndicatorDTO.java
  59. 5 7
      src/main/java/com/persagy/apm/model/dto/PageQueryMonitorIndicatorDTO.java
  60. 4 5
      src/main/java/com/persagy/apm/model/dto/QueryMonitorIndicatorDTO.java
  61. 3 4
      src/main/java/com/persagy/apm/model/dto/QueryMonitorIndicatorDetailDTO.java
  62. 5 8
      src/main/java/com/persagy/apm/model/dto/UpdateMonitorIndicatorDTO.java
  63. 9 11
      src/main/java/com/persagy/apm/model/vo/MonitorIndicatorItemVO.java
  64. 9 11
      src/main/java/com/persagy/apm/model/vo/MonitorIndicatorListItemVO.java
  65. 75 0
      src/main/java/com/persagy/apm/alarmservice/monitorindicator/service/IMonitorIndicatorService.java
  66. 61 69
      src/main/java/com/persagy/apm/service/impl/MonitorIndicatorServiceImpl.java
  67. 15 17
      src/main/java/com/persagy/apm/controller/ProjectAlarmRuleController.java
  68. 4 5
      src/main/java/com/persagy/apm/dao/ProjectAlarmRuleMapper.java
  69. 73 0
      src/main/java/com/persagy/apm/alarmservice/project/alarmrule/model/ConvertProjectAlarmRuleTool.java
  70. 8 10
      src/main/java/com/persagy/apm/model/ProjectAlarmRule.java
  71. 7 10
      src/main/java/com/persagy/apm/model/dto/AddProjectAlarmRuleDTO.java
  72. 3 4
      src/main/java/com/persagy/apm/model/dto/DeleteProjectAlarmRuleDTO.java
  73. 8 10
      src/main/java/com/persagy/apm/model/dto/PageQueryProjectAlarmRuleDTO.java
  74. 7 8
      src/main/java/com/persagy/apm/model/dto/QueryProjectAlarmRuleDTO.java
  75. 3 4
      src/main/java/com/persagy/apm/model/dto/QueryProjectAlarmRuleDetailDTO.java
  76. 8 11
      src/main/java/com/persagy/apm/model/dto/UpdateProjectAlarmRuleDTO.java
  77. 12 14
      src/main/java/com/persagy/apm/model/vo/ProjectAlarmRuleItemVO.java
  78. 12 14
      src/main/java/com/persagy/apm/model/vo/ProjectAlarmRuleListItemVO.java
  79. 75 0
      src/main/java/com/persagy/apm/alarmservice/project/alarmrule/service/IProjectAlarmRuleService.java
  80. 67 75
      src/main/java/com/persagy/apm/service/impl/ProjectAlarmRuleServiceImpl.java
  81. 15 17
      src/main/java/com/persagy/apm/controller/ProjectAlarmRuleObjRelController.java
  82. 4 5
      src/main/java/com/persagy/apm/dao/ProjectAlarmRuleObjRelMapper.java
  83. 73 0
      src/main/java/com/persagy/apm/alarmservice/project/alarmruleobjrel/model/ConvertProjectAlarmRuleObjRelTool.java
  84. 7 9
      src/main/java/com/persagy/apm/model/ProjectAlarmRuleObjRel.java
  85. 6 9
      src/main/java/com/persagy/apm/model/dto/AddProjectAlarmRuleObjRelDTO.java
  86. 3 4
      src/main/java/com/persagy/apm/model/dto/DeleteProjectAlarmRuleObjRelDTO.java
  87. 7 9
      src/main/java/com/persagy/apm/model/dto/PageQueryProjectAlarmRuleObjRelDTO.java
  88. 6 7
      src/main/java/com/persagy/apm/model/dto/QueryProjectAlarmRuleObjRelDTO.java
  89. 3 4
      src/main/java/com/persagy/apm/model/dto/QueryProjectAlarmRuleObjRelDetailDTO.java
  90. 7 10
      src/main/java/com/persagy/apm/model/dto/UpdateProjectAlarmRuleObjRelDTO.java
  91. 11 13
      src/main/java/com/persagy/apm/model/vo/ProjectAlarmRuleObjRelItemVO.java
  92. 11 13
      src/main/java/com/persagy/apm/model/vo/ProjectAlarmRuleObjRelListItemVO.java
  93. 75 0
      src/main/java/com/persagy/apm/alarmservice/project/alarmruleobjrel/service/IProjectAlarmRuleObjRelService.java
  94. 65 73
      src/main/java/com/persagy/apm/service/impl/ProjectAlarmRuleObjRelServiceImpl.java
  95. 15 17
      src/main/java/com/persagy/apm/controller/ProjectMonitorIndicatorConfigController.java
  96. 4 5
      src/main/java/com/persagy/apm/dao/ProjectMonitorIndicatorConfigMapper.java
  97. 73 0
      src/main/java/com/persagy/apm/alarmservice/project/monitorindicatorconfig/model/ConvertProjectMonitorIndicatorConfigTool.java
  98. 7 9
      src/main/java/com/persagy/apm/model/ProjectMonitorIndicatorConfig.java
  99. 6 9
      src/main/java/com/persagy/apm/model/dto/AddProjectMonitorIndicatorConfigDTO.java
  100. 0 0
      src/main/java/com/persagy/apm/model/dto/DeleteProjectMonitorIndicatorConfigDTO.java

+ 6 - 1
pom.xml

@@ -88,7 +88,7 @@
         <artifactId>integrated-swagger2-spring-boot-starter</artifactId>
     </dependency>
 
-    <!--jep -->
+    <!--jep 公式解析-->
     <dependency>
         <groupId>org.scijava</groupId>
         <artifactId>jep</artifactId>
@@ -119,5 +119,10 @@
         <groupId>com.persagy</groupId>
         <artifactId>apm-mybatis</artifactId>
     </dependency>
+
+    <dependency>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-actuator</artifactId>
+    </dependency>
 </dependencies>
 </project>

+ 15 - 17
src/main/java/com/persagy/apm/controller/AlarmConditionController.java

@@ -1,29 +1,27 @@
-package com.persagy.apm.controller;
+package com.persagy.apm.alarmservice.alarmcondition.controller;
 
-import com.persagy.apm.service.IAlarmConditionService;
+import com.persagy.apm.alarmservice.alarmcondition.service.IAlarmConditionService;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.vo.*;
-import com.persagy.apm.model.dto.*;
+import com.persagy.apm.alarmservice.alarmcondition.model.*;
+import com.persagy.apm.alarmservice.alarmcondition.model.vo.*;
+import com.persagy.apm.alarmservice.alarmcondition.model.dto.*;
 import com.persagy.apm.common.response.*;
 import com.persagy.apm.common.utils.ResultHelper;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-
 import javax.validation.Valid;
 import java.util.List;
 
 /**
  * 报警条件控制层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:03
+ * @version V1.0 2021-09-08 22:30:38
  */
-@Api(tags = "报警条件")
+@Api(tags = "报警条件") 
 @Validated
 @RestController
 @RequestMapping("alarmConditions")
@@ -31,15 +29,15 @@ public class AlarmConditionController {
     @Autowired
     private IAlarmConditionService alarmConditionService;
 
-    @ApiOperation(value = "创建报警条件")
-    @PostMapping("/create")
-    public CommonResult<ApmResponseUpsertVO> createAlarmCondition(
-            @Valid @RequestBody AddAlarmConditionDTO addAlarmConditionDTO) {
+	@ApiOperation(value = "创建报警条件")
+	@PostMapping("/create")
+	public CommonResult<ApmResponseUpsertVO> createAlarmCondition(
+	        @Valid @RequestBody AddAlarmConditionDTO addAlarmConditionDTO) {
         String id = alarmConditionService.createAlarmCondition(addAlarmConditionDTO);
         return ResultHelper.single(new ApmResponseUpsertVO(id));
-    }
-
-    @ApiOperation(value = "报警条件详情")
+	}
+	
+	@ApiOperation(value = "报警条件详情")
     @PostMapping("/get")
     public CommonResult<AlarmConditionItemVO> queryAlarmConditionDetail(
             @Valid @RequestBody QueryAlarmConditionDetailDTO queryAlarmConditionDetailDTO) {
@@ -75,7 +73,7 @@ public class AlarmConditionController {
         List<AlarmConditionListItemVO> resultList = ConvertAlarmConditionTool.INSTANCE.convert2List(alarmConditionList);
         return ResultHelper.multi(resultList);
     }
-
+    
     //@ApiOperation(value = "报警条件列表, 分页查询")
     //@PostMapping("/query")
     //public CommonResult<PageList<AlarmConditionListItemVO>> queryAlarmCondition(

+ 4 - 5
src/main/java/com/persagy/apm/dao/AlarmConditionMapper.java

@@ -1,16 +1,15 @@
-package com.persagy.apm.dao;
+package com.persagy.apm.alarmservice.alarmcondition.dao;
 
-import com.persagy.apm.model.AlarmCondition;
+import com.persagy.apm.alarmservice.alarmcondition.model.AlarmCondition;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 报警条件(AlarmCondition)dao层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:03
+ * @version V1.0 2021-09-08 22:30:38
  */
 @Mapper
-public interface AlarmConditionMapper extends BaseMapper<AlarmCondition> {
+public interface AlarmConditionMapper extends BaseMapper<AlarmCondition>{
 
 }

+ 8 - 10
src/main/java/com/persagy/apm/model/AlarmCondition.java

@@ -1,41 +1,39 @@
-package com.persagy.apm.model;
+package com.persagy.apm.alarmservice.alarmcondition.model;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import com.persagy.apm.common.model.entity.AuditableEntity;
-
 import java.io.Serializable;
 import java.util.Date;
 
 /**
  * 报警条件(AlarmCondition)实体类
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:03
+ * @version V1.0 2021-09-08 22:30:38
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
 @ApiModel(description = "报警条件")
 public class AlarmCondition extends AuditableEntity<AlarmCondition> implements Serializable {
-    private static final long serialVersionUID = 150107139430575398L;
+    private static final long serialVersionUID = 268657175929005281L;
 
     @ApiModelProperty("包含的参数")
     private Object infoCodes;
-
+    
     @ApiModelProperty("前端展示")
     private Object frontend;
-
+    
     @ApiModelProperty("后端使用")
     private Object backend;
-
+    
     @ApiModelProperty("触发时长")
     private Integer triggerUphold;
-
+    
     @ApiModelProperty("报警等级")
     private String alarmLevel;
-
+    
 
     public static String PROP_INFO_CODES = "info_codes";
     public static String PROP_FRONTEND = "frontend";

+ 73 - 0
src/main/java/com/persagy/apm/alarmservice/alarmcondition/model/ConvertAlarmConditionTool.java

@@ -0,0 +1,73 @@
+package com.persagy.apm.alarmservice.alarmcondition.model;
+
+import org.mapstruct.*;
+import org.mapstruct.MappingTarget;
+import org.mapstruct.factory.Mappers;
+import com.persagy.apm.alarmservice.alarmcondition.model.vo.*;
+import com.persagy.apm.alarmservice.alarmcondition.model.dto.*;
+
+import java.util.List;
+
+/**
+ * 报警条件(AlarmCondition) dto、vo、do转换工具类
+ * @author lixing
+ * @version V1.0 2021-09-08 22:30:38
+ */
+@Mapper(nullValueMappingStrategy = NullValueMappingStrategy.RETURN_DEFAULT,
+        nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS)
+public interface ConvertAlarmConditionTool {
+
+    ConvertAlarmConditionTool INSTANCE = Mappers.getMapper(ConvertAlarmConditionTool.class);
+    
+    /**
+    * do转换为ResponseItemVO
+    *
+    * @param alarmCondition do对象
+    * @return ResponseItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    AlarmConditionItemVO convert2ResponseItemDTO(AlarmCondition alarmCondition);
+    
+    /**
+    * do转换为ResponseListItemVO
+    *
+    * @param alarmCondition do对象
+    * @return ResponseListItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    AlarmConditionListItemVO convert2ResponseListItemDTO(AlarmCondition alarmCondition);
+
+    /**
+    * do列表转换为ResponseListItemVO列表
+    *
+    * @param alarmConditionList do列表
+    * @return ResponseListItemVO列表
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    List<AlarmConditionListItemVO> convert2List(List<AlarmCondition> alarmConditionList);
+    
+    /**
+    * addDTO转换为do
+    *
+    * @param addAlarmConditionDTO addDTO
+    * @return 要创建的do对象 
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    AlarmCondition convertAddDto2Entity(AddAlarmConditionDTO addAlarmConditionDTO);
+    
+    /**
+    * updateDTO转换为实体
+    *
+    * @param alarmCondition 更新前的do对象
+    * @param updateAlarmConditionDTO updateDTO
+    * @return 更新后的do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    AlarmCondition convertUpdateDto2Entity(@MappingTarget AlarmCondition alarmCondition, UpdateAlarmConditionDTO updateAlarmConditionDTO);
+}
+

+ 7 - 10
src/main/java/com/persagy/apm/model/dto/AddAlarmConditionDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.alarmcondition.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:30:38
  */
 @Data
 @ApiModel(value = "创建报警条件入参")
@@ -19,21 +16,21 @@ public class AddAlarmConditionDTO {
     @ApiModelProperty(value = "包含的参数", required = true)
     @NotNull(message = "包含的参数不能为空") // todo 更新校验规则
     private Object infoCodes;
-
+    
     @ApiModelProperty(value = "前端展示", required = true)
     @NotNull(message = "前端展示不能为空") // todo 更新校验规则
     private Object frontend;
-
+    
     @ApiModelProperty(value = "后端使用", required = true)
     @NotNull(message = "后端使用不能为空") // todo 更新校验规则
     private Object backend;
-
+    
     @ApiModelProperty(value = "触发时长", required = true)
     @NotNull(message = "触发时长不能为空") // todo 更新校验规则
     private Integer triggerUphold;
-
+    
     @ApiModelProperty(value = "报警等级", required = true)
     @NotNull(message = "报警等级不能为空") // todo 更新校验规则
     private String alarmLevel;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/DeleteAlarmConditionDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.alarmcondition.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:30:38
  */
 @Data
 @ApiModel(value = "删除报警条件入参")
@@ -16,5 +15,5 @@ public class DeleteAlarmConditionDTO {
     @NotNull(message = "id不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 8 - 10
src/main/java/com/persagy/apm/model/dto/PageQueryAlarmConditionDTO.java

@@ -1,17 +1,15 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.alarmcondition.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import java.util.Date;
-
 import com.persagy.apm.common.model.dto.PageDTO;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:30:38
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
@@ -19,20 +17,20 @@ import lombok.EqualsAndHashCode;
 public class PageQueryAlarmConditionDTO extends PageDTO {
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
     @ApiModelProperty(value = "包含的参数", required = true)
     private Object infoCodes;
-
+    
     @ApiModelProperty(value = "前端展示", required = true)
     private Object frontend;
-
+    
     @ApiModelProperty(value = "后端使用", required = true)
     private Object backend;
-
+    
     @ApiModelProperty(value = "触发时长", required = true)
     private Integer triggerUphold;
-
+    
     @ApiModelProperty(value = "报警等级", required = true)
     private String alarmLevel;
-
+    
 }

+ 7 - 8
src/main/java/com/persagy/apm/model/dto/QueryAlarmConditionDTO.java

@@ -1,31 +1,30 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.alarmcondition.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:30:38
  */
 @Data
 @ApiModel(value = "查询报警条件入参")
 public class QueryAlarmConditionDTO {
     @ApiModelProperty(value = "包含的参数", required = true)
     private Object infoCodes;
-
+    
     @ApiModelProperty(value = "前端展示", required = true)
     private Object frontend;
-
+    
     @ApiModelProperty(value = "后端使用", required = true)
     private Object backend;
-
+    
     @ApiModelProperty(value = "触发时长", required = true)
     private Integer triggerUphold;
-
+    
     @ApiModelProperty(value = "报警等级", required = true)
     private String alarmLevel;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/QueryAlarmConditionDetailDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.alarmcondition.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:30:38
  */
 @Data
 @ApiModel(value = "获取报警条件详情入参")
@@ -16,5 +15,5 @@ public class QueryAlarmConditionDetailDTO {
     @NotNull(message = "主键不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 8 - 11
src/main/java/com/persagy/apm/model/dto/UpdateAlarmConditionDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.alarmcondition.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:30:38
  */
 @Data
 @ApiModel(value = "更新报警条件入参")
@@ -19,25 +16,25 @@ public class UpdateAlarmConditionDTO {
     @ApiModelProperty(value = "主键", required = true)
     @NotNull(message = "主键不能为空") // todo 更新校验规则
     private String id;
-
+    
     @ApiModelProperty(value = "包含的参数", required = true)
     @NotNull(message = "包含的参数不能为空") // todo 更新校验规则
     private Object infoCodes;
-
+    
     @ApiModelProperty(value = "前端展示", required = true)
     @NotNull(message = "前端展示不能为空") // todo 更新校验规则
     private Object frontend;
-
+    
     @ApiModelProperty(value = "后端使用", required = true)
     @NotNull(message = "后端使用不能为空") // todo 更新校验规则
     private Object backend;
-
+    
     @ApiModelProperty(value = "触发时长", required = true)
     @NotNull(message = "触发时长不能为空") // todo 更新校验规则
     private Integer triggerUphold;
-
+    
     @ApiModelProperty(value = "报警等级", required = true)
     @NotNull(message = "报警等级不能为空") // todo 更新校验规则
     private String alarmLevel;
-
+    
 }

+ 12 - 14
src/main/java/com/persagy/apm/model/vo/AlarmConditionItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.alarmcondition.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:30:38
  */
 @Data
 @ApiModel(value = "报警条件返回结果参数")
@@ -18,32 +16,32 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class AlarmConditionItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("包含的参数")
     private Object infoCodes;
-
+    
     @ApiModelProperty("前端展示")
     private Object frontend;
-
+    
     @ApiModelProperty("后端使用")
     private Object backend;
-
+    
     @ApiModelProperty("触发时长")
     private Integer triggerUphold;
-
+    
     @ApiModelProperty("报警等级")
     private String alarmLevel;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 12 - 14
src/main/java/com/persagy/apm/model/vo/AlarmConditionListItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.alarmcondition.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:30:38
  */
 @Data
 @ApiModel(value = "报警条件列表返回结果参数")
@@ -18,32 +16,32 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class AlarmConditionListItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("包含的参数")
     private Object infoCodes;
-
+    
     @ApiModelProperty("前端展示")
     private Object frontend;
-
+    
     @ApiModelProperty("后端使用")
     private Object backend;
-
+    
     @ApiModelProperty("触发时长")
     private Integer triggerUphold;
-
+    
     @ApiModelProperty("报警等级")
     private String alarmLevel;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 75 - 0
src/main/java/com/persagy/apm/alarmservice/alarmcondition/service/IAlarmConditionService.java

@@ -0,0 +1,75 @@
+package com.persagy.apm.alarmservice.alarmcondition.service;
+
+import com.persagy.apm.alarmservice.alarmcondition.model.*;
+import com.persagy.apm.alarmservice.alarmcondition.model.dto.*;
+import java.util.List;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 报警条件(AlarmCondition) service接口
+ *
+ * @author lixing
+ * @version V1.0 2021-09-08 22:30:38
+ */
+public interface IAlarmConditionService  {
+    
+    /**
+    * 创建报警条件
+    *
+    * @param addAlarmConditionDTO addDTO
+    * @return 报警条件主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    public String createAlarmCondition(AddAlarmConditionDTO addAlarmConditionDTO);
+    
+    /**
+    * 报警条件详情
+    *
+    * @param id 主键
+    * @return 报警条件do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    public AlarmCondition queryAlarmConditionDetail(String id);
+    
+    /**
+    * 更新报警条件
+    *
+    * @param updateAlarmConditionDTO updateDTO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    public void updateAlarmCondition(UpdateAlarmConditionDTO updateAlarmConditionDTO);
+    
+    /**
+    * 删除报警条件
+    *
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    public void deleteAlarmCondition(String id);
+    
+    /**
+    * 查询报警条件
+    *
+    * @param queryAlarmConditionDTO queryDTO
+    * @return List<AlarmCondition>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    public List<AlarmCondition> queryAlarmConditionList(QueryAlarmConditionDTO queryAlarmConditionDTO);
+    
+    /**
+    * 分页查询报警条件
+    * 
+    * @param pageQueryAlarmConditionDTO pageQueryDTO
+    * @return IPage<AlarmCondition>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
+    public IPage<AlarmCondition> pageQueryAlarmCondition(PageQueryAlarmConditionDTO pageQueryAlarmConditionDTO);
+}

+ 67 - 75
src/main/java/com/persagy/apm/service/impl/AlarmConditionServiceImpl.java

@@ -1,18 +1,16 @@
-package com.persagy.apm.service.impl;
+package com.persagy.apm.alarmservice.alarmcondition.service.impl;
 
 import com.persagy.apm.common.context.AppContext;
-import com.persagy.apm.dao.AlarmConditionMapper;
-import com.persagy.apm.service.IAlarmConditionService;
+import com.persagy.apm.alarmservice.alarmcondition.dao.AlarmConditionMapper;
+import com.persagy.apm.alarmservice.alarmcondition.service.IAlarmConditionService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import org.apache.commons.lang.StringUtils;
 import com.persagy.apm.common.constant.enums.ValidEnum;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.dto.*;
-
+import com.persagy.apm.alarmservice.alarmcondition.model.*;
+import com.persagy.apm.alarmservice.alarmcondition.model.dto.*;
 import java.util.List;
-
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.base.CaseFormat;
@@ -23,19 +21,18 @@ import org.springframework.util.CollectionUtils;
  * 报警条件(AlarmCondition) service层
  *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:03
+ * @version V1.0 2021-09-08 22:30:38
  */
 @Service
-public class AlarmConditionServiceImpl extends ServiceImpl<AlarmConditionMapper, AlarmCondition>
-        implements IAlarmConditionService {
-
+public class AlarmConditionServiceImpl extends ServiceImpl<AlarmConditionMapper, AlarmCondition> 
+    implements IAlarmConditionService {
+    
     /**
-     * 创建报警条件
-     *
-     * @return 报警条件主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:03
-     */
+    * 创建报警条件
+    * @return 报警条件主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
     @Override
     public String createAlarmCondition(AddAlarmConditionDTO addAlarmConditionDTO) {
         AlarmCondition alarmCondition = ConvertAlarmConditionTool.INSTANCE.convertAddDto2Entity(addAlarmConditionDTO);
@@ -44,7 +41,7 @@ public class AlarmConditionServiceImpl extends ServiceImpl<AlarmConditionMapper,
         save(alarmCondition);
         return alarmCondition.getId();
     }
-
+    
     /**
      * 如果某些字段没有赋值,使用默认的值
      *
@@ -55,17 +52,16 @@ public class AlarmConditionServiceImpl extends ServiceImpl<AlarmConditionMapper,
     private void setDefaultValue(AlarmCondition alarmCondition) {
         alarmCondition.setCreator(AppContext.getContext().getAccountId());
         // todo 其他默认的属性
-
+        
     }
-
+    
     /**
-     * 报警条件详情
-     *
-     * @param id 主键
-     * @return 部门do类
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:03
-     */
+    * 报警条件详情
+    * @param id 主键
+    * @return 部门do类
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
     @Override
     public AlarmCondition queryAlarmConditionDetail(String id) {
         AlarmCondition alarmCondition = getById(id);
@@ -74,13 +70,12 @@ public class AlarmConditionServiceImpl extends ServiceImpl<AlarmConditionMapper,
         }
         return alarmCondition;
     }
-
+    
     /**
-     * 更新报警条件
-     *
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:03
-     */
+    * 更新报警条件
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
     @Override
     public void updateAlarmCondition(UpdateAlarmConditionDTO updateAlarmConditionDTO) {
         AlarmCondition alarmCondition = getById(updateAlarmConditionDTO.getId());
@@ -88,14 +83,14 @@ public class AlarmConditionServiceImpl extends ServiceImpl<AlarmConditionMapper,
         alarmCondition.setModifier(AppContext.getContext().getAccountId());
         updateById(alarmCondition);
     }
-
+    
     /**
      * 校验报警条件是否可删除
      *
      * @param id 报警条件主键
      * @return 报警条件do类
      * @author lixing
-     * @version V1.0 2021-09-07 18:12:03
+     * @version V1.0 2021-09-08 22:30:38
      */
     public AlarmCondition checkDeletable(String id) {
         if (id == null) {
@@ -110,14 +105,13 @@ public class AlarmConditionServiceImpl extends ServiceImpl<AlarmConditionMapper,
 
         return alarmCondition;
     }
-
+    
     /**
-     * 删除报警条件
-     *
-     * @param id 主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:03
-     */
+    * 删除报警条件
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
     @Override
     public void deleteAlarmCondition(String id) {
         // 校验是否可删除
@@ -126,96 +120,94 @@ public class AlarmConditionServiceImpl extends ServiceImpl<AlarmConditionMapper,
         alarmCondition.setValid(ValidEnum.FALSE.getType());
         updateById(alarmCondition);
     }
-
+    
     /**
-     * 查询报警条件
-     *
-     * @return List<AlarmCondition>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:03
-     */
+    * 查询报警条件
+    * @return List<AlarmCondition>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
     @Override
     public List<AlarmCondition> queryAlarmConditionList(QueryAlarmConditionDTO queryAlarmConditionDTO) {
         QueryWrapper<AlarmCondition> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(AlarmCondition.PROP_VALID, ValidEnum.TRUE.getType());
         // 默认按创建时间倒序排序
         queryWrapper.orderBy(true, false, AlarmCondition.PROP_CREATIONTIME);
-
+        
         if (queryAlarmConditionDTO != null) {
-
+                                    
             if (queryAlarmConditionDTO.getInfoCodes() != null) {
                 queryWrapper.eq(AlarmCondition.PROP_INFO_CODES, queryAlarmConditionDTO.getInfoCodes());
             }
-
+                                            
             if (queryAlarmConditionDTO.getFrontend() != null) {
                 queryWrapper.eq(AlarmCondition.PROP_FRONTEND, queryAlarmConditionDTO.getFrontend());
             }
-
+                                            
             if (queryAlarmConditionDTO.getBackend() != null) {
                 queryWrapper.eq(AlarmCondition.PROP_BACKEND, queryAlarmConditionDTO.getBackend());
             }
-
+                                            
             if (queryAlarmConditionDTO.getTriggerUphold() != null) {
                 queryWrapper.eq(AlarmCondition.PROP_TRIGGER_UPHOLD, queryAlarmConditionDTO.getTriggerUphold());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryAlarmConditionDTO.getAlarmLevel())) {
                 queryWrapper.like(AlarmCondition.PROP_ALARM_LEVEL, queryAlarmConditionDTO.getAlarmLevel());
             }
-
+                                            
         }
-
+        
         return list(queryWrapper);
     }
-
+    
     /**
-     * 分页查询报警条件
-     *
-     * @return IPage<AlarmCondition>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:03
-     */
+    * 分页查询报警条件
+    * @return IPage<AlarmCondition>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:30:38
+    */
     @Override
     public IPage<AlarmCondition> pageQueryAlarmCondition(PageQueryAlarmConditionDTO pageQueryAlarmConditionDTO) {
         QueryWrapper<AlarmCondition> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(AlarmCondition.PROP_VALID, ValidEnum.TRUE.getType());
         // 这里认为pageQueryDTO是经过校验的,肯定包含分页信息
-        IPage<AlarmCondition> pageParam = new Page<>(pageQueryAlarmConditionDTO.getPage(), pageQueryAlarmConditionDTO.getSize(), true);
+        IPage<AlarmCondition> pageParam = new Page<>(pageQueryAlarmConditionDTO.getPage(), pageQueryAlarmConditionDTO.getSize(),true);
         // 排序信息
-        if (CollectionUtils.isEmpty(pageQueryAlarmConditionDTO.getOrders())) {
+        if(CollectionUtils.isEmpty(pageQueryAlarmConditionDTO.getOrders())){
             // 默认按创建时间倒序排序
             queryWrapper.orderBy(true, false, AlarmCondition.PROP_CREATIONTIME);
-        } else {
+        }else {
             List<Sort> orders = pageQueryAlarmConditionDTO.getOrders();
-            for (Sort sort : orders) {
+            for(Sort sort: orders) {
                 // 将驼峰转换为下划线格式
-                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, sort.getColumn()));
+                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE,sort.getColumn()));
                 queryWrapper.orderBy(true, sort.isAsc(), sort.getColumn());
             }
         }
-
+                
         if (pageQueryAlarmConditionDTO.getInfoCodes() != null) {
             queryWrapper.eq(AlarmCondition.PROP_INFO_CODES, pageQueryAlarmConditionDTO.getInfoCodes());
         }
-
+                            
         if (pageQueryAlarmConditionDTO.getFrontend() != null) {
             queryWrapper.eq(AlarmCondition.PROP_FRONTEND, pageQueryAlarmConditionDTO.getFrontend());
         }
-
+                            
         if (pageQueryAlarmConditionDTO.getBackend() != null) {
             queryWrapper.eq(AlarmCondition.PROP_BACKEND, pageQueryAlarmConditionDTO.getBackend());
         }
-
+                            
         if (pageQueryAlarmConditionDTO.getTriggerUphold() != null) {
             queryWrapper.eq(AlarmCondition.PROP_TRIGGER_UPHOLD, pageQueryAlarmConditionDTO.getTriggerUphold());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryAlarmConditionDTO.getAlarmLevel())) {
             queryWrapper.like(AlarmCondition.PROP_ALARM_LEVEL, pageQueryAlarmConditionDTO.getAlarmLevel());
         }
-
+                                    
         return getBaseMapper().selectPage(pageParam, queryWrapper);
     }
 }

+ 15 - 17
src/main/java/com/persagy/apm/controller/CalculateMethodController.java

@@ -1,29 +1,27 @@
-package com.persagy.apm.controller;
+package com.persagy.apm.alarmservice.calculatemethod.controller;
 
-import com.persagy.apm.service.ICalculateMethodService;
+import com.persagy.apm.alarmservice.calculatemethod.service.ICalculateMethodService;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.vo.*;
-import com.persagy.apm.model.dto.*;
+import com.persagy.apm.alarmservice.calculatemethod.model.*;
+import com.persagy.apm.alarmservice.calculatemethod.model.vo.*;
+import com.persagy.apm.alarmservice.calculatemethod.model.dto.*;
 import com.persagy.apm.common.response.*;
 import com.persagy.apm.common.utils.ResultHelper;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-
 import javax.validation.Valid;
 import java.util.List;
 
 /**
  * 计算方式控制层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:43:58
  */
-@Api(tags = "计算方式")
+@Api(tags = "计算方式") 
 @Validated
 @RestController
 @RequestMapping("calculateMethods")
@@ -31,15 +29,15 @@ public class CalculateMethodController {
     @Autowired
     private ICalculateMethodService calculateMethodService;
 
-    @ApiOperation(value = "创建计算方式")
-    @PostMapping("/create")
-    public CommonResult<ApmResponseUpsertVO> createCalculateMethod(
-            @Valid @RequestBody AddCalculateMethodDTO addCalculateMethodDTO) {
+	@ApiOperation(value = "创建计算方式")
+	@PostMapping("/create")
+	public CommonResult<ApmResponseUpsertVO> createCalculateMethod(
+	        @Valid @RequestBody AddCalculateMethodDTO addCalculateMethodDTO) {
         String id = calculateMethodService.createCalculateMethod(addCalculateMethodDTO);
         return ResultHelper.single(new ApmResponseUpsertVO(id));
-    }
-
-    @ApiOperation(value = "计算方式详情")
+	}
+	
+	@ApiOperation(value = "计算方式详情")
     @PostMapping("/get")
     public CommonResult<CalculateMethodItemVO> queryCalculateMethodDetail(
             @Valid @RequestBody QueryCalculateMethodDetailDTO queryCalculateMethodDetailDTO) {
@@ -75,7 +73,7 @@ public class CalculateMethodController {
         List<CalculateMethodListItemVO> resultList = ConvertCalculateMethodTool.INSTANCE.convert2List(calculateMethodList);
         return ResultHelper.multi(resultList);
     }
-
+    
     //@ApiOperation(value = "计算方式列表, 分页查询")
     //@PostMapping("/query")
     //public CommonResult<PageList<CalculateMethodListItemVO>> queryCalculateMethod(

+ 4 - 5
src/main/java/com/persagy/apm/dao/CalculateMethodMapper.java

@@ -1,16 +1,15 @@
-package com.persagy.apm.dao;
+package com.persagy.apm.alarmservice.calculatemethod.dao;
 
-import com.persagy.apm.model.CalculateMethod;
+import com.persagy.apm.alarmservice.calculatemethod.model.CalculateMethod;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 计算方式(CalculateMethod)dao层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:43:58
  */
 @Mapper
-public interface CalculateMethodMapper extends BaseMapper<CalculateMethod> {
+public interface CalculateMethodMapper extends BaseMapper<CalculateMethod>{
 
 }

+ 7 - 9
src/main/java/com/persagy/apm/model/CalculateMethod.java

@@ -1,38 +1,36 @@
-package com.persagy.apm.model;
+package com.persagy.apm.alarmservice.calculatemethod.model;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import com.persagy.apm.common.model.entity.AuditableEntity;
-
 import java.io.Serializable;
 import java.util.Date;
 
 /**
  * 计算方式(CalculateMethod)实体类
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:43:58
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
 @ApiModel(description = "计算方式")
 public class CalculateMethod extends AuditableEntity<CalculateMethod> implements Serializable {
-    private static final long serialVersionUID = 310236372518130974L;
+    private static final long serialVersionUID = -61587285284741274L;
 
     @ApiModelProperty("计算方式名称")
     private String name;
-
+    
     @ApiModelProperty("公式")
     private String formula;
-
+    
     @ApiModelProperty("监测指标id")
     private String monitorIndicatorId;
-
+    
     @ApiModelProperty("是否是指标默认计算方式")
     private Integer isDefault;
-
+    
 
     public static String PROP_NAME = "name";
     public static String PROP_FORMULA = "formula";

+ 73 - 0
src/main/java/com/persagy/apm/alarmservice/calculatemethod/model/ConvertCalculateMethodTool.java

@@ -0,0 +1,73 @@
+package com.persagy.apm.alarmservice.calculatemethod.model;
+
+import org.mapstruct.*;
+import org.mapstruct.MappingTarget;
+import org.mapstruct.factory.Mappers;
+import com.persagy.apm.alarmservice.calculatemethod.model.vo.*;
+import com.persagy.apm.alarmservice.calculatemethod.model.dto.*;
+
+import java.util.List;
+
+/**
+ * 计算方式(CalculateMethod) dto、vo、do转换工具类
+ * @author lixing
+ * @version V1.0 2021-09-08 22:43:58
+ */
+@Mapper(nullValueMappingStrategy = NullValueMappingStrategy.RETURN_DEFAULT,
+        nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS)
+public interface ConvertCalculateMethodTool {
+
+    ConvertCalculateMethodTool INSTANCE = Mappers.getMapper(ConvertCalculateMethodTool.class);
+    
+    /**
+    * do转换为ResponseItemVO
+    *
+    * @param calculateMethod do对象
+    * @return ResponseItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    CalculateMethodItemVO convert2ResponseItemDTO(CalculateMethod calculateMethod);
+    
+    /**
+    * do转换为ResponseListItemVO
+    *
+    * @param calculateMethod do对象
+    * @return ResponseListItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    CalculateMethodListItemVO convert2ResponseListItemDTO(CalculateMethod calculateMethod);
+
+    /**
+    * do列表转换为ResponseListItemVO列表
+    *
+    * @param calculateMethodList do列表
+    * @return ResponseListItemVO列表
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    List<CalculateMethodListItemVO> convert2List(List<CalculateMethod> calculateMethodList);
+    
+    /**
+    * addDTO转换为do
+    *
+    * @param addCalculateMethodDTO addDTO
+    * @return 要创建的do对象 
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    CalculateMethod convertAddDto2Entity(AddCalculateMethodDTO addCalculateMethodDTO);
+    
+    /**
+    * updateDTO转换为实体
+    *
+    * @param calculateMethod 更新前的do对象
+    * @param updateCalculateMethodDTO updateDTO
+    * @return 更新后的do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    CalculateMethod convertUpdateDto2Entity(@MappingTarget CalculateMethod calculateMethod, UpdateCalculateMethodDTO updateCalculateMethodDTO);
+}
+

+ 6 - 9
src/main/java/com/persagy/apm/model/dto/AddCalculateMethodDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.calculatemethod.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:43:58
  */
 @Data
 @ApiModel(value = "创建计算方式入参")
@@ -19,17 +16,17 @@ public class AddCalculateMethodDTO {
     @ApiModelProperty(value = "计算方式名称", required = true)
     @NotNull(message = "计算方式名称不能为空") // todo 更新校验规则
     private String name;
-
+    
     @ApiModelProperty(value = "公式", required = true)
     @NotNull(message = "公式不能为空") // todo 更新校验规则
     private String formula;
-
+    
     @ApiModelProperty(value = "监测指标id", required = true)
     @NotNull(message = "监测指标id不能为空") // todo 更新校验规则
     private String monitorIndicatorId;
-
+    
     @ApiModelProperty(value = "是否是指标默认计算方式", required = true)
     @NotNull(message = "是否是指标默认计算方式不能为空") // todo 更新校验规则
     private Integer isDefault;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/DeleteCalculateMethodDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.calculatemethod.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:43:58
  */
 @Data
 @ApiModel(value = "删除计算方式入参")
@@ -16,5 +15,5 @@ public class DeleteCalculateMethodDTO {
     @NotNull(message = "id不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 7 - 9
src/main/java/com/persagy/apm/model/dto/PageQueryCalculateMethodDTO.java

@@ -1,17 +1,15 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.calculatemethod.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import java.util.Date;
-
 import com.persagy.apm.common.model.dto.PageDTO;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:43:58
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
@@ -19,17 +17,17 @@ import lombok.EqualsAndHashCode;
 public class PageQueryCalculateMethodDTO extends PageDTO {
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
     @ApiModelProperty(value = "计算方式名称", required = true)
     private String name;
-
+    
     @ApiModelProperty(value = "公式", required = true)
     private String formula;
-
+    
     @ApiModelProperty(value = "监测指标id", required = true)
     private String monitorIndicatorId;
-
+    
     @ApiModelProperty(value = "是否是指标默认计算方式", required = true)
     private Integer isDefault;
-
+    
 }

+ 6 - 7
src/main/java/com/persagy/apm/model/dto/QueryCalculateMethodDTO.java

@@ -1,28 +1,27 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.calculatemethod.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:43:58
  */
 @Data
 @ApiModel(value = "查询计算方式入参")
 public class QueryCalculateMethodDTO {
     @ApiModelProperty(value = "计算方式名称", required = true)
     private String name;
-
+    
     @ApiModelProperty(value = "公式", required = true)
     private String formula;
-
+    
     @ApiModelProperty(value = "监测指标id", required = true)
     private String monitorIndicatorId;
-
+    
     @ApiModelProperty(value = "是否是指标默认计算方式", required = true)
     private Integer isDefault;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/QueryCalculateMethodDetailDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.calculatemethod.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:43:58
  */
 @Data
 @ApiModel(value = "获取计算方式详情入参")
@@ -16,5 +15,5 @@ public class QueryCalculateMethodDetailDTO {
     @NotNull(message = "主键不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 7 - 10
src/main/java/com/persagy/apm/model/dto/UpdateCalculateMethodDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.calculatemethod.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:43:58
  */
 @Data
 @ApiModel(value = "更新计算方式入参")
@@ -19,21 +16,21 @@ public class UpdateCalculateMethodDTO {
     @ApiModelProperty(value = "主键", required = true)
     @NotNull(message = "主键不能为空") // todo 更新校验规则
     private String id;
-
+    
     @ApiModelProperty(value = "计算方式名称", required = true)
     @NotNull(message = "计算方式名称不能为空") // todo 更新校验规则
     private String name;
-
+    
     @ApiModelProperty(value = "公式", required = true)
     @NotNull(message = "公式不能为空") // todo 更新校验规则
     private String formula;
-
+    
     @ApiModelProperty(value = "监测指标id", required = true)
     @NotNull(message = "监测指标id不能为空") // todo 更新校验规则
     private String monitorIndicatorId;
-
+    
     @ApiModelProperty(value = "是否是指标默认计算方式", required = true)
     @NotNull(message = "是否是指标默认计算方式不能为空") // todo 更新校验规则
     private Integer isDefault;
-
+    
 }

+ 11 - 13
src/main/java/com/persagy/apm/model/vo/CalculateMethodItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.calculatemethod.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:43:58
  */
 @Data
 @ApiModel(value = "计算方式返回结果参数")
@@ -18,29 +16,29 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class CalculateMethodItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("计算方式名称")
     private String name;
-
+    
     @ApiModelProperty("公式")
     private String formula;
-
+    
     @ApiModelProperty("监测指标id")
     private String monitorIndicatorId;
-
+    
     @ApiModelProperty("是否是指标默认计算方式")
     private Integer isDefault;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 11 - 13
src/main/java/com/persagy/apm/model/vo/CalculateMethodListItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.calculatemethod.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:43:58
  */
 @Data
 @ApiModel(value = "计算方式列表返回结果参数")
@@ -18,29 +16,29 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class CalculateMethodListItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("计算方式名称")
     private String name;
-
+    
     @ApiModelProperty("公式")
     private String formula;
-
+    
     @ApiModelProperty("监测指标id")
     private String monitorIndicatorId;
-
+    
     @ApiModelProperty("是否是指标默认计算方式")
     private Integer isDefault;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 75 - 0
src/main/java/com/persagy/apm/alarmservice/calculatemethod/service/ICalculateMethodService.java

@@ -0,0 +1,75 @@
+package com.persagy.apm.alarmservice.calculatemethod.service;
+
+import com.persagy.apm.alarmservice.calculatemethod.model.*;
+import com.persagy.apm.alarmservice.calculatemethod.model.dto.*;
+import java.util.List;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 计算方式(CalculateMethod) service接口
+ *
+ * @author lixing
+ * @version V1.0 2021-09-08 22:43:58
+ */
+public interface ICalculateMethodService  {
+    
+    /**
+    * 创建计算方式
+    *
+    * @param addCalculateMethodDTO addDTO
+    * @return 计算方式主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    public String createCalculateMethod(AddCalculateMethodDTO addCalculateMethodDTO);
+    
+    /**
+    * 计算方式详情
+    *
+    * @param id 主键
+    * @return 计算方式do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    public CalculateMethod queryCalculateMethodDetail(String id);
+    
+    /**
+    * 更新计算方式
+    *
+    * @param updateCalculateMethodDTO updateDTO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    public void updateCalculateMethod(UpdateCalculateMethodDTO updateCalculateMethodDTO);
+    
+    /**
+    * 删除计算方式
+    *
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    public void deleteCalculateMethod(String id);
+    
+    /**
+    * 查询计算方式
+    *
+    * @param queryCalculateMethodDTO queryDTO
+    * @return List<CalculateMethod>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    public List<CalculateMethod> queryCalculateMethodList(QueryCalculateMethodDTO queryCalculateMethodDTO);
+    
+    /**
+    * 分页查询计算方式
+    * 
+    * @param pageQueryCalculateMethodDTO pageQueryDTO
+    * @return IPage<CalculateMethod>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
+    public IPage<CalculateMethod> pageQueryCalculateMethod(PageQueryCalculateMethodDTO pageQueryCalculateMethodDTO);
+}

+ 65 - 73
src/main/java/com/persagy/apm/service/impl/CalculateMethodServiceImpl.java

@@ -1,18 +1,16 @@
-package com.persagy.apm.service.impl;
+package com.persagy.apm.alarmservice.calculatemethod.service.impl;
 
 import com.persagy.apm.common.context.AppContext;
-import com.persagy.apm.dao.CalculateMethodMapper;
-import com.persagy.apm.service.ICalculateMethodService;
+import com.persagy.apm.alarmservice.calculatemethod.dao.CalculateMethodMapper;
+import com.persagy.apm.alarmservice.calculatemethod.service.ICalculateMethodService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import org.apache.commons.lang.StringUtils;
 import com.persagy.apm.common.constant.enums.ValidEnum;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.dto.*;
-
+import com.persagy.apm.alarmservice.calculatemethod.model.*;
+import com.persagy.apm.alarmservice.calculatemethod.model.dto.*;
 import java.util.List;
-
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.base.CaseFormat;
@@ -23,19 +21,18 @@ import org.springframework.util.CollectionUtils;
  * 计算方式(CalculateMethod) service层
  *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:04
+ * @version V1.0 2021-09-08 22:43:58
  */
 @Service
-public class CalculateMethodServiceImpl extends ServiceImpl<CalculateMethodMapper, CalculateMethod>
-        implements ICalculateMethodService {
-
+public class CalculateMethodServiceImpl extends ServiceImpl<CalculateMethodMapper, CalculateMethod> 
+    implements ICalculateMethodService {
+    
     /**
-     * 创建计算方式
-     *
-     * @return 计算方式主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:04
-     */
+    * 创建计算方式
+    * @return 计算方式主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
     @Override
     public String createCalculateMethod(AddCalculateMethodDTO addCalculateMethodDTO) {
         CalculateMethod calculateMethod = ConvertCalculateMethodTool.INSTANCE.convertAddDto2Entity(addCalculateMethodDTO);
@@ -44,7 +41,7 @@ public class CalculateMethodServiceImpl extends ServiceImpl<CalculateMethodMappe
         save(calculateMethod);
         return calculateMethod.getId();
     }
-
+    
     /**
      * 如果某些字段没有赋值,使用默认的值
      *
@@ -55,17 +52,16 @@ public class CalculateMethodServiceImpl extends ServiceImpl<CalculateMethodMappe
     private void setDefaultValue(CalculateMethod calculateMethod) {
         calculateMethod.setCreator(AppContext.getContext().getAccountId());
         // todo 其他默认的属性
-
+        
     }
-
+    
     /**
-     * 计算方式详情
-     *
-     * @param id 主键
-     * @return 部门do类
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:04
-     */
+    * 计算方式详情
+    * @param id 主键
+    * @return 部门do类
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
     @Override
     public CalculateMethod queryCalculateMethodDetail(String id) {
         CalculateMethod calculateMethod = getById(id);
@@ -74,13 +70,12 @@ public class CalculateMethodServiceImpl extends ServiceImpl<CalculateMethodMappe
         }
         return calculateMethod;
     }
-
+    
     /**
-     * 更新计算方式
-     *
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:04
-     */
+    * 更新计算方式
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
     @Override
     public void updateCalculateMethod(UpdateCalculateMethodDTO updateCalculateMethodDTO) {
         CalculateMethod calculateMethod = getById(updateCalculateMethodDTO.getId());
@@ -88,14 +83,14 @@ public class CalculateMethodServiceImpl extends ServiceImpl<CalculateMethodMappe
         calculateMethod.setModifier(AppContext.getContext().getAccountId());
         updateById(calculateMethod);
     }
-
+    
     /**
      * 校验计算方式是否可删除
      *
      * @param id 计算方式主键
      * @return 计算方式do类
      * @author lixing
-     * @version V1.0 2021-09-07 18:12:04
+     * @version V1.0 2021-09-08 22:43:58
      */
     public CalculateMethod checkDeletable(String id) {
         if (id == null) {
@@ -110,14 +105,13 @@ public class CalculateMethodServiceImpl extends ServiceImpl<CalculateMethodMappe
 
         return calculateMethod;
     }
-
+    
     /**
-     * 删除计算方式
-     *
-     * @param id 主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:04
-     */
+    * 删除计算方式
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
     @Override
     public void deleteCalculateMethod(String id) {
         // 校验是否可删除
@@ -126,92 +120,90 @@ public class CalculateMethodServiceImpl extends ServiceImpl<CalculateMethodMappe
         calculateMethod.setValid(ValidEnum.FALSE.getType());
         updateById(calculateMethod);
     }
-
+    
     /**
-     * 查询计算方式
-     *
-     * @return List<CalculateMethod>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:04
-     */
+    * 查询计算方式
+    * @return List<CalculateMethod>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
     @Override
     public List<CalculateMethod> queryCalculateMethodList(QueryCalculateMethodDTO queryCalculateMethodDTO) {
         QueryWrapper<CalculateMethod> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(CalculateMethod.PROP_VALID, ValidEnum.TRUE.getType());
         // 默认按创建时间倒序排序
         queryWrapper.orderBy(true, false, CalculateMethod.PROP_CREATIONTIME);
-
+        
         if (queryCalculateMethodDTO != null) {
-
+                                
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryCalculateMethodDTO.getName())) {
                 queryWrapper.like(CalculateMethod.PROP_NAME, queryCalculateMethodDTO.getName());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryCalculateMethodDTO.getFormula())) {
                 queryWrapper.like(CalculateMethod.PROP_FORMULA, queryCalculateMethodDTO.getFormula());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryCalculateMethodDTO.getMonitorIndicatorId())) {
                 queryWrapper.like(CalculateMethod.PROP_MONITOR_INDICATOR_ID, queryCalculateMethodDTO.getMonitorIndicatorId());
             }
-
+                                            
             if (queryCalculateMethodDTO.getIsDefault() != null) {
                 queryWrapper.eq(CalculateMethod.PROP_IS_DEFAULT, queryCalculateMethodDTO.getIsDefault());
             }
-
+                                            
         }
-
+        
         return list(queryWrapper);
     }
-
+    
     /**
-     * 分页查询计算方式
-     *
-     * @return IPage<CalculateMethod>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:04
-     */
+    * 分页查询计算方式
+    * @return IPage<CalculateMethod>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:43:58
+    */
     @Override
     public IPage<CalculateMethod> pageQueryCalculateMethod(PageQueryCalculateMethodDTO pageQueryCalculateMethodDTO) {
         QueryWrapper<CalculateMethod> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(CalculateMethod.PROP_VALID, ValidEnum.TRUE.getType());
         // 这里认为pageQueryDTO是经过校验的,肯定包含分页信息
-        IPage<CalculateMethod> pageParam = new Page<>(pageQueryCalculateMethodDTO.getPage(), pageQueryCalculateMethodDTO.getSize(), true);
+        IPage<CalculateMethod> pageParam = new Page<>(pageQueryCalculateMethodDTO.getPage(), pageQueryCalculateMethodDTO.getSize(),true);
         // 排序信息
-        if (CollectionUtils.isEmpty(pageQueryCalculateMethodDTO.getOrders())) {
+        if(CollectionUtils.isEmpty(pageQueryCalculateMethodDTO.getOrders())){
             // 默认按创建时间倒序排序
             queryWrapper.orderBy(true, false, CalculateMethod.PROP_CREATIONTIME);
-        } else {
+        }else {
             List<Sort> orders = pageQueryCalculateMethodDTO.getOrders();
-            for (Sort sort : orders) {
+            for(Sort sort: orders) {
                 // 将驼峰转换为下划线格式
-                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, sort.getColumn()));
+                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE,sort.getColumn()));
                 queryWrapper.orderBy(true, sort.isAsc(), sort.getColumn());
             }
         }
-
+                
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryCalculateMethodDTO.getName())) {
             queryWrapper.like(CalculateMethod.PROP_NAME, pageQueryCalculateMethodDTO.getName());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryCalculateMethodDTO.getFormula())) {
             queryWrapper.like(CalculateMethod.PROP_FORMULA, pageQueryCalculateMethodDTO.getFormula());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryCalculateMethodDTO.getMonitorIndicatorId())) {
             queryWrapper.like(CalculateMethod.PROP_MONITOR_INDICATOR_ID, pageQueryCalculateMethodDTO.getMonitorIndicatorId());
         }
-
+                            
         if (pageQueryCalculateMethodDTO.getIsDefault() != null) {
             queryWrapper.eq(CalculateMethod.PROP_IS_DEFAULT, pageQueryCalculateMethodDTO.getIsDefault());
         }
-
+                                    
         return getBaseMapper().selectPage(pageParam, queryWrapper);
     }
 }

+ 2 - 3
src/main/java/com/persagy/apm/configuration/ElasticSearchConfig.java

@@ -1,17 +1,16 @@
-package com.persagy.apm.configuration;
+package com.persagy.apm.alarmservice.configuration;
 
 import org.apache.http.HttpHost;
 import org.elasticsearch.client.RestClient;
 import org.elasticsearch.client.RestHighLevelClient;
 import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
 
 /**
  * @author 易涛
  * @version 1.0
  * @date 2021/9/7 18:05
  */
-@Configuration
+//@Configuration
 public class ElasticSearchConfig {
     @Bean
     public RestHighLevelClient restHighLevelClient() {

+ 50 - 0
src/main/java/com/persagy/apm/alarmservice/configuration/PoemsWebConfigurer.java

@@ -0,0 +1,50 @@
+package com.persagy.apm.alarmservice.configuration;
+
+import com.persagy.apm.common.handler.PoemsContextFilter;
+import com.persagy.apm.common.handler.PoemsContextHandler;
+import com.persagy.apm.mybatis.handler.DynamicDataSourceHandler;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.core.annotation.Order;
+import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
+import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+
+import javax.servlet.Filter;
+
+/**
+ * web拦截器配置
+ *
+ * @author lixing
+ * @version V1.0 2021/5/19 7:42 下午
+ */
+@Configuration
+//@Order(1)
+public class PoemsWebConfigurer implements WebMvcConfigurer {
+
+    @Bean
+    public DynamicDataSourceHandler dynamicDataSourceHandler() {
+        return new DynamicDataSourceHandler();
+    }
+
+    @Bean
+    public Filter poemsContextFilter() {
+        return new PoemsContextFilter();
+    }
+
+    @Override
+    public void addInterceptors(InterceptorRegistry registry) {
+        // 设置拦截的路径、不拦截的路径、优先级等等
+        registry.addInterceptor(dynamicDataSourceHandler()).order(1).addPathPatterns("/**");
+    }
+
+    @Override
+    public void addResourceHandlers(ResourceHandlerRegistry registry) {
+        registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/");
+        registry.addResourceHandler("/swagger-resources/**").addResourceLocations("classpath:/META-INF/resources/");
+        registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
+        registry.addResourceHandler("/img/**").addResourceLocations("classpath:/META-INF/resources/");
+        registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
+    }
+}

+ 15 - 17
src/main/java/com/persagy/apm/controller/GroupAlarmRuleController.java

@@ -1,29 +1,27 @@
-package com.persagy.apm.controller;
+package com.persagy.apm.alarmservice.group.alarmrule.controller;
 
-import com.persagy.apm.service.IGroupAlarmRuleService;
+import com.persagy.apm.alarmservice.group.alarmrule.service.IGroupAlarmRuleService;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.vo.*;
-import com.persagy.apm.model.dto.*;
+import com.persagy.apm.alarmservice.group.alarmrule.model.*;
+import com.persagy.apm.alarmservice.group.alarmrule.model.vo.*;
+import com.persagy.apm.alarmservice.group.alarmrule.model.dto.*;
 import com.persagy.apm.common.response.*;
 import com.persagy.apm.common.utils.ResultHelper;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-
 import javax.validation.Valid;
 import java.util.List;
 
 /**
  * 集团报警规则控制层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:35:45
  */
-@Api(tags = "集团报警规则")
+@Api(tags = "集团报警规则") 
 @Validated
 @RestController
 @RequestMapping("groupAlarmRules")
@@ -31,15 +29,15 @@ public class GroupAlarmRuleController {
     @Autowired
     private IGroupAlarmRuleService groupAlarmRuleService;
 
-    @ApiOperation(value = "创建集团报警规则")
-    @PostMapping("/create")
-    public CommonResult<ApmResponseUpsertVO> createGroupAlarmRule(
-            @Valid @RequestBody AddGroupAlarmRuleDTO addGroupAlarmRuleDTO) {
+	@ApiOperation(value = "创建集团报警规则")
+	@PostMapping("/create")
+	public CommonResult<ApmResponseUpsertVO> createGroupAlarmRule(
+	        @Valid @RequestBody AddGroupAlarmRuleDTO addGroupAlarmRuleDTO) {
         String id = groupAlarmRuleService.createGroupAlarmRule(addGroupAlarmRuleDTO);
         return ResultHelper.single(new ApmResponseUpsertVO(id));
-    }
-
-    @ApiOperation(value = "集团报警规则详情")
+	}
+	
+	@ApiOperation(value = "集团报警规则详情")
     @PostMapping("/get")
     public CommonResult<GroupAlarmRuleItemVO> queryGroupAlarmRuleDetail(
             @Valid @RequestBody QueryGroupAlarmRuleDetailDTO queryGroupAlarmRuleDetailDTO) {
@@ -75,7 +73,7 @@ public class GroupAlarmRuleController {
         List<GroupAlarmRuleListItemVO> resultList = ConvertGroupAlarmRuleTool.INSTANCE.convert2List(groupAlarmRuleList);
         return ResultHelper.multi(resultList);
     }
-
+    
     //@ApiOperation(value = "集团报警规则列表, 分页查询")
     //@PostMapping("/query")
     //public CommonResult<PageList<GroupAlarmRuleListItemVO>> queryGroupAlarmRule(

+ 4 - 5
src/main/java/com/persagy/apm/dao/GroupAlarmRuleMapper.java

@@ -1,16 +1,15 @@
-package com.persagy.apm.dao;
+package com.persagy.apm.alarmservice.group.alarmrule.dao;
 
-import com.persagy.apm.model.GroupAlarmRule;
+import com.persagy.apm.alarmservice.group.alarmrule.model.GroupAlarmRule;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 集团报警规则(GroupAlarmRule)dao层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:35:45
  */
 @Mapper
-public interface GroupAlarmRuleMapper extends BaseMapper<GroupAlarmRule> {
+public interface GroupAlarmRuleMapper extends BaseMapper<GroupAlarmRule>{
 
 }

+ 73 - 0
src/main/java/com/persagy/apm/alarmservice/group/alarmrule/model/ConvertGroupAlarmRuleTool.java

@@ -0,0 +1,73 @@
+package com.persagy.apm.alarmservice.group.alarmrule.model;
+
+import org.mapstruct.*;
+import org.mapstruct.MappingTarget;
+import org.mapstruct.factory.Mappers;
+import com.persagy.apm.alarmservice.group.alarmrule.model.vo.*;
+import com.persagy.apm.alarmservice.group.alarmrule.model.dto.*;
+
+import java.util.List;
+
+/**
+ * 集团报警规则(GroupAlarmRule) dto、vo、do转换工具类
+ * @author lixing
+ * @version V1.0 2021-09-08 22:35:45
+ */
+@Mapper(nullValueMappingStrategy = NullValueMappingStrategy.RETURN_DEFAULT,
+        nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS)
+public interface ConvertGroupAlarmRuleTool {
+
+    ConvertGroupAlarmRuleTool INSTANCE = Mappers.getMapper(ConvertGroupAlarmRuleTool.class);
+    
+    /**
+    * do转换为ResponseItemVO
+    *
+    * @param groupAlarmRule do对象
+    * @return ResponseItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    GroupAlarmRuleItemVO convert2ResponseItemDTO(GroupAlarmRule groupAlarmRule);
+    
+    /**
+    * do转换为ResponseListItemVO
+    *
+    * @param groupAlarmRule do对象
+    * @return ResponseListItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    GroupAlarmRuleListItemVO convert2ResponseListItemDTO(GroupAlarmRule groupAlarmRule);
+
+    /**
+    * do列表转换为ResponseListItemVO列表
+    *
+    * @param groupAlarmRuleList do列表
+    * @return ResponseListItemVO列表
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    List<GroupAlarmRuleListItemVO> convert2List(List<GroupAlarmRule> groupAlarmRuleList);
+    
+    /**
+    * addDTO转换为do
+    *
+    * @param addGroupAlarmRuleDTO addDTO
+    * @return 要创建的do对象 
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    GroupAlarmRule convertAddDto2Entity(AddGroupAlarmRuleDTO addGroupAlarmRuleDTO);
+    
+    /**
+    * updateDTO转换为实体
+    *
+    * @param groupAlarmRule 更新前的do对象
+    * @param updateGroupAlarmRuleDTO updateDTO
+    * @return 更新后的do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    GroupAlarmRule convertUpdateDto2Entity(@MappingTarget GroupAlarmRule groupAlarmRule, UpdateGroupAlarmRuleDTO updateGroupAlarmRuleDTO);
+}
+

+ 6 - 8
src/main/java/com/persagy/apm/model/GroupAlarmRule.java

@@ -1,35 +1,33 @@
-package com.persagy.apm.model;
+package com.persagy.apm.alarmservice.group.alarmrule.model;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import com.persagy.apm.common.model.entity.AuditableEntity;
-
 import java.io.Serializable;
 import java.util.Date;
 
 /**
  * 集团报警规则(GroupAlarmRule)实体类
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:35:45
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
 @ApiModel(description = "集团报警规则")
 public class GroupAlarmRule extends AuditableEntity<GroupAlarmRule> implements Serializable {
-    private static final long serialVersionUID = -13043955378011937L;
+    private static final long serialVersionUID = 774974359264957686L;
 
     @ApiModelProperty("分组id")
     private String groupId;
-
+    
     @ApiModelProperty("报警条目编码")
     private String alarmItemCode;
-
+    
     @ApiModelProperty("报警条件id")
     private String alarmConditionId;
-
+    
 
     public static String PROP_GROUP_ID = "group_id";
     public static String PROP_ALARM_ITEM_CODE = "alarm_item_code";

+ 5 - 8
src/main/java/com/persagy/apm/model/dto/AddGroupAlarmRuleDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.group.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:35:45
  */
 @Data
 @ApiModel(value = "创建集团报警规则入参")
@@ -19,13 +16,13 @@ public class AddGroupAlarmRuleDTO {
     @ApiModelProperty(value = "分组id", required = true)
     @NotNull(message = "分组id不能为空") // todo 更新校验规则
     private String groupId;
-
+    
     @ApiModelProperty(value = "报警条目编码", required = true)
     @NotNull(message = "报警条目编码不能为空") // todo 更新校验规则
     private String alarmItemCode;
-
+    
     @ApiModelProperty(value = "报警条件id", required = true)
     @NotNull(message = "报警条件id不能为空") // todo 更新校验规则
     private String alarmConditionId;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/DeleteGroupAlarmRuleDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.group.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:35:45
  */
 @Data
 @ApiModel(value = "删除集团报警规则入参")
@@ -16,5 +15,5 @@ public class DeleteGroupAlarmRuleDTO {
     @NotNull(message = "id不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 6 - 8
src/main/java/com/persagy/apm/model/dto/PageQueryGroupAlarmRuleDTO.java

@@ -1,17 +1,15 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.group.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import java.util.Date;
-
 import com.persagy.apm.common.model.dto.PageDTO;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:35:45
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
@@ -19,14 +17,14 @@ import lombok.EqualsAndHashCode;
 public class PageQueryGroupAlarmRuleDTO extends PageDTO {
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
     @ApiModelProperty(value = "分组id", required = true)
     private String groupId;
-
+    
     @ApiModelProperty(value = "报警条目编码", required = true)
     private String alarmItemCode;
-
+    
     @ApiModelProperty(value = "报警条件id", required = true)
     private String alarmConditionId;
-
+    
 }

+ 5 - 6
src/main/java/com/persagy/apm/model/dto/QueryGroupAlarmRuleDTO.java

@@ -1,25 +1,24 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.group.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:35:45
  */
 @Data
 @ApiModel(value = "查询集团报警规则入参")
 public class QueryGroupAlarmRuleDTO {
     @ApiModelProperty(value = "分组id", required = true)
     private String groupId;
-
+    
     @ApiModelProperty(value = "报警条目编码", required = true)
     private String alarmItemCode;
-
+    
     @ApiModelProperty(value = "报警条件id", required = true)
     private String alarmConditionId;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/QueryGroupAlarmRuleDetailDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.group.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:35:45
  */
 @Data
 @ApiModel(value = "获取集团报警规则详情入参")
@@ -16,5 +15,5 @@ public class QueryGroupAlarmRuleDetailDTO {
     @NotNull(message = "主键不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 6 - 9
src/main/java/com/persagy/apm/model/dto/UpdateGroupAlarmRuleDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.group.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:35:45
  */
 @Data
 @ApiModel(value = "更新集团报警规则入参")
@@ -19,17 +16,17 @@ public class UpdateGroupAlarmRuleDTO {
     @ApiModelProperty(value = "主键", required = true)
     @NotNull(message = "主键不能为空") // todo 更新校验规则
     private String id;
-
+    
     @ApiModelProperty(value = "分组id", required = true)
     @NotNull(message = "分组id不能为空") // todo 更新校验规则
     private String groupId;
-
+    
     @ApiModelProperty(value = "报警条目编码", required = true)
     @NotNull(message = "报警条目编码不能为空") // todo 更新校验规则
     private String alarmItemCode;
-
+    
     @ApiModelProperty(value = "报警条件id", required = true)
     @NotNull(message = "报警条件id不能为空") // todo 更新校验规则
     private String alarmConditionId;
-
+    
 }

+ 10 - 12
src/main/java/com/persagy/apm/model/vo/GroupAlarmRuleItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.group.alarmrule.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:35:45
  */
 @Data
 @ApiModel(value = "集团报警规则返回结果参数")
@@ -18,26 +16,26 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class GroupAlarmRuleItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("分组id")
     private String groupId;
-
+    
     @ApiModelProperty("报警条目编码")
     private String alarmItemCode;
-
+    
     @ApiModelProperty("报警条件id")
     private String alarmConditionId;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 10 - 12
src/main/java/com/persagy/apm/model/vo/GroupAlarmRuleListItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.group.alarmrule.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:35:45
  */
 @Data
 @ApiModel(value = "集团报警规则列表返回结果参数")
@@ -18,26 +16,26 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class GroupAlarmRuleListItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("分组id")
     private String groupId;
-
+    
     @ApiModelProperty("报警条目编码")
     private String alarmItemCode;
-
+    
     @ApiModelProperty("报警条件id")
     private String alarmConditionId;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 75 - 0
src/main/java/com/persagy/apm/alarmservice/group/alarmrule/service/IGroupAlarmRuleService.java

@@ -0,0 +1,75 @@
+package com.persagy.apm.alarmservice.group.alarmrule.service;
+
+import com.persagy.apm.alarmservice.group.alarmrule.model.*;
+import com.persagy.apm.alarmservice.group.alarmrule.model.dto.*;
+import java.util.List;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 集团报警规则(GroupAlarmRule) service接口
+ *
+ * @author lixing
+ * @version V1.0 2021-09-08 22:35:45
+ */
+public interface IGroupAlarmRuleService  {
+    
+    /**
+    * 创建集团报警规则
+    *
+    * @param addGroupAlarmRuleDTO addDTO
+    * @return 集团报警规则主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    public String createGroupAlarmRule(AddGroupAlarmRuleDTO addGroupAlarmRuleDTO);
+    
+    /**
+    * 集团报警规则详情
+    *
+    * @param id 主键
+    * @return 集团报警规则do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    public GroupAlarmRule queryGroupAlarmRuleDetail(String id);
+    
+    /**
+    * 更新集团报警规则
+    *
+    * @param updateGroupAlarmRuleDTO updateDTO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    public void updateGroupAlarmRule(UpdateGroupAlarmRuleDTO updateGroupAlarmRuleDTO);
+    
+    /**
+    * 删除集团报警规则
+    *
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    public void deleteGroupAlarmRule(String id);
+    
+    /**
+    * 查询集团报警规则
+    *
+    * @param queryGroupAlarmRuleDTO queryDTO
+    * @return List<GroupAlarmRule>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    public List<GroupAlarmRule> queryGroupAlarmRuleList(QueryGroupAlarmRuleDTO queryGroupAlarmRuleDTO);
+    
+    /**
+    * 分页查询集团报警规则
+    * 
+    * @param pageQueryGroupAlarmRuleDTO pageQueryDTO
+    * @return IPage<GroupAlarmRule>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
+    public IPage<GroupAlarmRule> pageQueryGroupAlarmRule(PageQueryGroupAlarmRuleDTO pageQueryGroupAlarmRuleDTO);
+}

+ 63 - 71
src/main/java/com/persagy/apm/service/impl/GroupAlarmRuleServiceImpl.java

@@ -1,18 +1,16 @@
-package com.persagy.apm.service.impl;
+package com.persagy.apm.alarmservice.group.alarmrule.service.impl;
 
 import com.persagy.apm.common.context.AppContext;
-import com.persagy.apm.dao.GroupAlarmRuleMapper;
-import com.persagy.apm.service.IGroupAlarmRuleService;
+import com.persagy.apm.alarmservice.group.alarmrule.dao.GroupAlarmRuleMapper;
+import com.persagy.apm.alarmservice.group.alarmrule.service.IGroupAlarmRuleService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import org.apache.commons.lang.StringUtils;
 import com.persagy.apm.common.constant.enums.ValidEnum;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.dto.*;
-
+import com.persagy.apm.alarmservice.group.alarmrule.model.*;
+import com.persagy.apm.alarmservice.group.alarmrule.model.dto.*;
 import java.util.List;
-
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.base.CaseFormat;
@@ -23,19 +21,18 @@ import org.springframework.util.CollectionUtils;
  * 集团报警规则(GroupAlarmRule) service层
  *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:05
+ * @version V1.0 2021-09-08 22:35:45
  */
 @Service
-public class GroupAlarmRuleServiceImpl extends ServiceImpl<GroupAlarmRuleMapper, GroupAlarmRule>
-        implements IGroupAlarmRuleService {
-
+public class GroupAlarmRuleServiceImpl extends ServiceImpl<GroupAlarmRuleMapper, GroupAlarmRule> 
+    implements IGroupAlarmRuleService {
+    
     /**
-     * 创建集团报警规则
-     *
-     * @return 集团报警规则主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:05
-     */
+    * 创建集团报警规则
+    * @return 集团报警规则主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
     @Override
     public String createGroupAlarmRule(AddGroupAlarmRuleDTO addGroupAlarmRuleDTO) {
         GroupAlarmRule groupAlarmRule = ConvertGroupAlarmRuleTool.INSTANCE.convertAddDto2Entity(addGroupAlarmRuleDTO);
@@ -44,7 +41,7 @@ public class GroupAlarmRuleServiceImpl extends ServiceImpl<GroupAlarmRuleMapper,
         save(groupAlarmRule);
         return groupAlarmRule.getId();
     }
-
+    
     /**
      * 如果某些字段没有赋值,使用默认的值
      *
@@ -55,17 +52,16 @@ public class GroupAlarmRuleServiceImpl extends ServiceImpl<GroupAlarmRuleMapper,
     private void setDefaultValue(GroupAlarmRule groupAlarmRule) {
         groupAlarmRule.setCreator(AppContext.getContext().getAccountId());
         // todo 其他默认的属性
-
+        
     }
-
+    
     /**
-     * 集团报警规则详情
-     *
-     * @param id 主键
-     * @return 部门do类
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:05
-     */
+    * 集团报警规则详情
+    * @param id 主键
+    * @return 部门do类
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
     @Override
     public GroupAlarmRule queryGroupAlarmRuleDetail(String id) {
         GroupAlarmRule groupAlarmRule = getById(id);
@@ -74,13 +70,12 @@ public class GroupAlarmRuleServiceImpl extends ServiceImpl<GroupAlarmRuleMapper,
         }
         return groupAlarmRule;
     }
-
+    
     /**
-     * 更新集团报警规则
-     *
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:05
-     */
+    * 更新集团报警规则
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
     @Override
     public void updateGroupAlarmRule(UpdateGroupAlarmRuleDTO updateGroupAlarmRuleDTO) {
         GroupAlarmRule groupAlarmRule = getById(updateGroupAlarmRuleDTO.getId());
@@ -88,14 +83,14 @@ public class GroupAlarmRuleServiceImpl extends ServiceImpl<GroupAlarmRuleMapper,
         groupAlarmRule.setModifier(AppContext.getContext().getAccountId());
         updateById(groupAlarmRule);
     }
-
+    
     /**
      * 校验集团报警规则是否可删除
      *
      * @param id 集团报警规则主键
      * @return 集团报警规则do类
      * @author lixing
-     * @version V1.0 2021-09-07 18:12:05
+     * @version V1.0 2021-09-08 22:35:45
      */
     public GroupAlarmRule checkDeletable(String id) {
         if (id == null) {
@@ -110,14 +105,13 @@ public class GroupAlarmRuleServiceImpl extends ServiceImpl<GroupAlarmRuleMapper,
 
         return groupAlarmRule;
     }
-
+    
     /**
-     * 删除集团报警规则
-     *
-     * @param id 主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:05
-     */
+    * 删除集团报警规则
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
     @Override
     public void deleteGroupAlarmRule(String id) {
         // 校验是否可删除
@@ -126,84 +120,82 @@ public class GroupAlarmRuleServiceImpl extends ServiceImpl<GroupAlarmRuleMapper,
         groupAlarmRule.setValid(ValidEnum.FALSE.getType());
         updateById(groupAlarmRule);
     }
-
+    
     /**
-     * 查询集团报警规则
-     *
-     * @return List<GroupAlarmRule>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:05
-     */
+    * 查询集团报警规则
+    * @return List<GroupAlarmRule>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
     @Override
     public List<GroupAlarmRule> queryGroupAlarmRuleList(QueryGroupAlarmRuleDTO queryGroupAlarmRuleDTO) {
         QueryWrapper<GroupAlarmRule> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(GroupAlarmRule.PROP_VALID, ValidEnum.TRUE.getType());
         // 默认按创建时间倒序排序
         queryWrapper.orderBy(true, false, GroupAlarmRule.PROP_CREATIONTIME);
-
+        
         if (queryGroupAlarmRuleDTO != null) {
-
+                                
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryGroupAlarmRuleDTO.getGroupId())) {
                 queryWrapper.like(GroupAlarmRule.PROP_GROUP_ID, queryGroupAlarmRuleDTO.getGroupId());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryGroupAlarmRuleDTO.getAlarmItemCode())) {
                 queryWrapper.like(GroupAlarmRule.PROP_ALARM_ITEM_CODE, queryGroupAlarmRuleDTO.getAlarmItemCode());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryGroupAlarmRuleDTO.getAlarmConditionId())) {
                 queryWrapper.like(GroupAlarmRule.PROP_ALARM_CONDITION_ID, queryGroupAlarmRuleDTO.getAlarmConditionId());
             }
-
+                                            
         }
-
+        
         return list(queryWrapper);
     }
-
+    
     /**
-     * 分页查询集团报警规则
-     *
-     * @return IPage<GroupAlarmRule>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:05
-     */
+    * 分页查询集团报警规则
+    * @return IPage<GroupAlarmRule>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:35:45
+    */
     @Override
     public IPage<GroupAlarmRule> pageQueryGroupAlarmRule(PageQueryGroupAlarmRuleDTO pageQueryGroupAlarmRuleDTO) {
         QueryWrapper<GroupAlarmRule> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(GroupAlarmRule.PROP_VALID, ValidEnum.TRUE.getType());
         // 这里认为pageQueryDTO是经过校验的,肯定包含分页信息
-        IPage<GroupAlarmRule> pageParam = new Page<>(pageQueryGroupAlarmRuleDTO.getPage(), pageQueryGroupAlarmRuleDTO.getSize(), true);
+        IPage<GroupAlarmRule> pageParam = new Page<>(pageQueryGroupAlarmRuleDTO.getPage(), pageQueryGroupAlarmRuleDTO.getSize(),true);
         // 排序信息
-        if (CollectionUtils.isEmpty(pageQueryGroupAlarmRuleDTO.getOrders())) {
+        if(CollectionUtils.isEmpty(pageQueryGroupAlarmRuleDTO.getOrders())){
             // 默认按创建时间倒序排序
             queryWrapper.orderBy(true, false, GroupAlarmRule.PROP_CREATIONTIME);
-        } else {
+        }else {
             List<Sort> orders = pageQueryGroupAlarmRuleDTO.getOrders();
-            for (Sort sort : orders) {
+            for(Sort sort: orders) {
                 // 将驼峰转换为下划线格式
-                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, sort.getColumn()));
+                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE,sort.getColumn()));
                 queryWrapper.orderBy(true, sort.isAsc(), sort.getColumn());
             }
         }
-
+                
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryGroupAlarmRuleDTO.getGroupId())) {
             queryWrapper.like(GroupAlarmRule.PROP_GROUP_ID, pageQueryGroupAlarmRuleDTO.getGroupId());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryGroupAlarmRuleDTO.getAlarmItemCode())) {
             queryWrapper.like(GroupAlarmRule.PROP_ALARM_ITEM_CODE, pageQueryGroupAlarmRuleDTO.getAlarmItemCode());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryGroupAlarmRuleDTO.getAlarmConditionId())) {
             queryWrapper.like(GroupAlarmRule.PROP_ALARM_CONDITION_ID, pageQueryGroupAlarmRuleDTO.getAlarmConditionId());
         }
-
+                                    
         return getBaseMapper().selectPage(pageParam, queryWrapper);
     }
 }

+ 5 - 3
src/main/java/com/persagy/apm/controller/GroupManagementController.java

@@ -1,4 +1,4 @@
-package com.persagy.apm.controller;
+package com.persagy.apm.alarmservice.group.management.controller;
 
 import com.alibaba.fastjson.JSONArray;
 import com.persagy.apm.common.response.CommonResult;
@@ -8,6 +8,8 @@ import com.persagy.apm.model.vo.GroupManagementVo;
 import com.persagy.apm.model.vo.GroupTreeDetailVO;
 import com.persagy.apm.model.vo.GroupTreeVO;
 import com.persagy.apm.service.GroupManagementService;
+import com.persagy.apm.alarmservice.group.management.model.vo.GroupTreeDetailVO;
+import com.persagy.apm.alarmservice.group.management.model.vo.GroupTreeVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.collections4.CollectionUtils;
@@ -50,7 +52,7 @@ public class GroupManagementController {
      * 获取分组树 
      * @author 易涛
      * @date 2021/9/8 14:44 
-     * @return java.util.List<com.persagy.apm.model.vo.GroupTreeVO>
+     * @return java.util.List<com.persagy.apm.alarmservice.group.management.model.vo.GroupTreeVO>
      */
     private List<GroupTreeVO> getGroupTree(){
         InputStream inputStream = this.getClass().getClassLoader()
@@ -81,7 +83,7 @@ public class GroupManagementController {
      * @param id
      * @author 易涛
      * @date 2021/9/8 14:50 
-     * @return com.persagy.apm.model.vo.GroupTreeVO
+     * @return com.persagy.apm.alarmservice.group.management.model.vo.GroupTreeVO
      */
     private GroupTreeDetailVO queryById(List<GroupTreeVO> groupTreeVOList,GroupTreeDetailVO groupTreeDetailVO,String id){
         for(GroupTreeVO groupTreeVO:groupTreeVOList){

+ 0 - 0
src/main/java/com/persagy/apm/alarmservice/group/management/dao/GroupManagementMapper.java


+ 1 - 1
src/main/java/com/persagy/apm/model/GroupManagement.java

@@ -1,4 +1,4 @@
-package com.persagy.apm.model;
+package com.persagy.apm.alarmservice.group.management.model;
 
 import lombok.Data;
 /*import org.springframework.data.annotation.Id;

+ 1 - 1
src/main/java/com/persagy/apm/model/vo/GroupTreeDetailVO.java

@@ -1,4 +1,4 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.group.management.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;

+ 1 - 1
src/main/java/com/persagy/apm/model/vo/GroupTreeVO.java

@@ -1,4 +1,4 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.group.management.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;

+ 1 - 1
src/main/java/com/persagy/apm/service/GroupManagementService.java

@@ -1,4 +1,4 @@
-package com.persagy.apm.service;
+package com.persagy.apm.alarmservice.group.management.service;
 
 import com.persagy.apm.model.dto.GroupManagementDTO;
 import com.persagy.apm.model.vo.GroupManagementVo;

+ 2 - 1
src/main/java/com/persagy/apm/service/impl/GroupManagementServiceImpl.java

@@ -1,4 +1,4 @@
-package com.persagy.apm.service.impl;
+package com.persagy.apm.alarmservice.group.management.service.impl;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
@@ -19,6 +19,7 @@ import org.elasticsearch.search.SearchHit;
 import org.elasticsearch.search.SearchHits;
 import org.elasticsearch.search.builder.SearchSourceBuilder;
 import org.springframework.beans.factory.annotation.Autowired;
+import com.persagy.apm.alarmservice.group.management.service.GroupManagementService;
 import org.springframework.stereotype.Service;
 
 import java.io.IOException;

+ 15 - 17
src/main/java/com/persagy/apm/controller/MonitorIndicatorController.java

@@ -1,29 +1,27 @@
-package com.persagy.apm.controller;
+package com.persagy.apm.alarmservice.monitorindicator.controller;
 
-import com.persagy.apm.service.IMonitorIndicatorService;
+import com.persagy.apm.alarmservice.monitorindicator.service.IMonitorIndicatorService;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.vo.*;
-import com.persagy.apm.model.dto.*;
+import com.persagy.apm.alarmservice.monitorindicator.model.*;
+import com.persagy.apm.alarmservice.monitorindicator.model.vo.*;
+import com.persagy.apm.alarmservice.monitorindicator.model.dto.*;
 import com.persagy.apm.common.response.*;
 import com.persagy.apm.common.utils.ResultHelper;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-
 import javax.validation.Valid;
 import java.util.List;
 
 /**
  * 监测指标控制层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:44:37
  */
-@Api(tags = "监测指标")
+@Api(tags = "监测指标") 
 @Validated
 @RestController
 @RequestMapping("monitorIndicators")
@@ -31,15 +29,15 @@ public class MonitorIndicatorController {
     @Autowired
     private IMonitorIndicatorService monitorIndicatorService;
 
-    @ApiOperation(value = "创建监测指标")
-    @PostMapping("/create")
-    public CommonResult<ApmResponseUpsertVO> createMonitorIndicator(
-            @Valid @RequestBody AddMonitorIndicatorDTO addMonitorIndicatorDTO) {
+	@ApiOperation(value = "创建监测指标")
+	@PostMapping("/create")
+	public CommonResult<ApmResponseUpsertVO> createMonitorIndicator(
+	        @Valid @RequestBody AddMonitorIndicatorDTO addMonitorIndicatorDTO) {
         String id = monitorIndicatorService.createMonitorIndicator(addMonitorIndicatorDTO);
         return ResultHelper.single(new ApmResponseUpsertVO(id));
-    }
-
-    @ApiOperation(value = "监测指标详情")
+	}
+	
+	@ApiOperation(value = "监测指标详情")
     @PostMapping("/get")
     public CommonResult<MonitorIndicatorItemVO> queryMonitorIndicatorDetail(
             @Valid @RequestBody QueryMonitorIndicatorDetailDTO queryMonitorIndicatorDetailDTO) {
@@ -75,7 +73,7 @@ public class MonitorIndicatorController {
         List<MonitorIndicatorListItemVO> resultList = ConvertMonitorIndicatorTool.INSTANCE.convert2List(monitorIndicatorList);
         return ResultHelper.multi(resultList);
     }
-
+    
     //@ApiOperation(value = "监测指标列表, 分页查询")
     //@PostMapping("/query")
     //public CommonResult<PageList<MonitorIndicatorListItemVO>> queryMonitorIndicator(

+ 4 - 5
src/main/java/com/persagy/apm/dao/MonitorIndicatorMapper.java

@@ -1,16 +1,15 @@
-package com.persagy.apm.dao;
+package com.persagy.apm.alarmservice.monitorindicator.dao;
 
-import com.persagy.apm.model.MonitorIndicator;
+import com.persagy.apm.alarmservice.monitorindicator.model.MonitorIndicator;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 监测指标(MonitorIndicator)dao层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:44:37
  */
 @Mapper
-public interface MonitorIndicatorMapper extends BaseMapper<MonitorIndicator> {
+public interface MonitorIndicatorMapper extends BaseMapper<MonitorIndicator>{
 
 }

+ 73 - 0
src/main/java/com/persagy/apm/alarmservice/monitorindicator/model/ConvertMonitorIndicatorTool.java

@@ -0,0 +1,73 @@
+package com.persagy.apm.alarmservice.monitorindicator.model;
+
+import org.mapstruct.*;
+import org.mapstruct.MappingTarget;
+import org.mapstruct.factory.Mappers;
+import com.persagy.apm.alarmservice.monitorindicator.model.vo.*;
+import com.persagy.apm.alarmservice.monitorindicator.model.dto.*;
+
+import java.util.List;
+
+/**
+ * 监测指标(MonitorIndicator) dto、vo、do转换工具类
+ * @author lixing
+ * @version V1.0 2021-09-08 22:44:38
+ */
+@Mapper(nullValueMappingStrategy = NullValueMappingStrategy.RETURN_DEFAULT,
+        nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS)
+public interface ConvertMonitorIndicatorTool {
+
+    ConvertMonitorIndicatorTool INSTANCE = Mappers.getMapper(ConvertMonitorIndicatorTool.class);
+    
+    /**
+    * do转换为ResponseItemVO
+    *
+    * @param monitorIndicator do对象
+    * @return ResponseItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:38
+    */
+    MonitorIndicatorItemVO convert2ResponseItemDTO(MonitorIndicator monitorIndicator);
+    
+    /**
+    * do转换为ResponseListItemVO
+    *
+    * @param monitorIndicator do对象
+    * @return ResponseListItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:38
+    */
+    MonitorIndicatorListItemVO convert2ResponseListItemDTO(MonitorIndicator monitorIndicator);
+
+    /**
+    * do列表转换为ResponseListItemVO列表
+    *
+    * @param monitorIndicatorList do列表
+    * @return ResponseListItemVO列表
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:38
+    */
+    List<MonitorIndicatorListItemVO> convert2List(List<MonitorIndicator> monitorIndicatorList);
+    
+    /**
+    * addDTO转换为do
+    *
+    * @param addMonitorIndicatorDTO addDTO
+    * @return 要创建的do对象 
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:38
+    */
+    MonitorIndicator convertAddDto2Entity(AddMonitorIndicatorDTO addMonitorIndicatorDTO);
+    
+    /**
+    * updateDTO转换为实体
+    *
+    * @param monitorIndicator 更新前的do对象
+    * @param updateMonitorIndicatorDTO updateDTO
+    * @return 更新后的do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:38
+    */
+    MonitorIndicator convertUpdateDto2Entity(@MappingTarget MonitorIndicator monitorIndicator, UpdateMonitorIndicatorDTO updateMonitorIndicatorDTO);
+}
+

+ 5 - 7
src/main/java/com/persagy/apm/model/MonitorIndicator.java

@@ -1,32 +1,30 @@
-package com.persagy.apm.model;
+package com.persagy.apm.alarmservice.monitorindicator.model;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import com.persagy.apm.common.model.entity.AuditableEntity;
-
 import java.io.Serializable;
 import java.util.Date;
 
 /**
  * 监测指标(MonitorIndicator)实体类
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:44:37
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
 @ApiModel(description = "监测指标")
 public class MonitorIndicator extends AuditableEntity<MonitorIndicator> implements Serializable {
-    private static final long serialVersionUID = -58697502928373181L;
+    private static final long serialVersionUID = -53576386032508621L;
 
     @ApiModelProperty("指标名称")
     private String name;
-
+    
     @ApiModelProperty("设备类")
     private String classCode;
-
+    
 
     public static String PROP_NAME = "name";
     public static String PROP_CLASS_CODE = "class_code";

+ 4 - 7
src/main/java/com/persagy/apm/model/dto/AddMonitorIndicatorDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.monitorindicator.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:44:37
  */
 @Data
 @ApiModel(value = "创建监测指标入参")
@@ -19,9 +16,9 @@ public class AddMonitorIndicatorDTO {
     @ApiModelProperty(value = "指标名称", required = true)
     @NotNull(message = "指标名称不能为空") // todo 更新校验规则
     private String name;
-
+    
     @ApiModelProperty(value = "设备类", required = true)
     @NotNull(message = "设备类不能为空") // todo 更新校验规则
     private String classCode;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/DeleteMonitorIndicatorDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.monitorindicator.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:44:37
  */
 @Data
 @ApiModel(value = "删除监测指标入参")
@@ -16,5 +15,5 @@ public class DeleteMonitorIndicatorDTO {
     @NotNull(message = "id不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 5 - 7
src/main/java/com/persagy/apm/model/dto/PageQueryMonitorIndicatorDTO.java

@@ -1,17 +1,15 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.monitorindicator.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import java.util.Date;
-
 import com.persagy.apm.common.model.dto.PageDTO;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:44:37
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
@@ -19,11 +17,11 @@ import lombok.EqualsAndHashCode;
 public class PageQueryMonitorIndicatorDTO extends PageDTO {
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
     @ApiModelProperty(value = "指标名称", required = true)
     private String name;
-
+    
     @ApiModelProperty(value = "设备类", required = true)
     private String classCode;
-
+    
 }

+ 4 - 5
src/main/java/com/persagy/apm/model/dto/QueryMonitorIndicatorDTO.java

@@ -1,22 +1,21 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.monitorindicator.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:44:37
  */
 @Data
 @ApiModel(value = "查询监测指标入参")
 public class QueryMonitorIndicatorDTO {
     @ApiModelProperty(value = "指标名称", required = true)
     private String name;
-
+    
     @ApiModelProperty(value = "设备类", required = true)
     private String classCode;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/QueryMonitorIndicatorDetailDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.monitorindicator.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:44:37
  */
 @Data
 @ApiModel(value = "获取监测指标详情入参")
@@ -16,5 +15,5 @@ public class QueryMonitorIndicatorDetailDTO {
     @NotNull(message = "主键不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 5 - 8
src/main/java/com/persagy/apm/model/dto/UpdateMonitorIndicatorDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.monitorindicator.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:44:37
  */
 @Data
 @ApiModel(value = "更新监测指标入参")
@@ -19,13 +16,13 @@ public class UpdateMonitorIndicatorDTO {
     @ApiModelProperty(value = "主键", required = true)
     @NotNull(message = "主键不能为空") // todo 更新校验规则
     private String id;
-
+    
     @ApiModelProperty(value = "指标名称", required = true)
     @NotNull(message = "指标名称不能为空") // todo 更新校验规则
     private String name;
-
+    
     @ApiModelProperty(value = "设备类", required = true)
     @NotNull(message = "设备类不能为空") // todo 更新校验规则
     private String classCode;
-
+    
 }

+ 9 - 11
src/main/java/com/persagy/apm/model/vo/MonitorIndicatorItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.monitorindicator.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:44:38
  */
 @Data
 @ApiModel(value = "监测指标返回结果参数")
@@ -18,23 +16,23 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class MonitorIndicatorItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("指标名称")
     private String name;
-
+    
     @ApiModelProperty("设备类")
     private String classCode;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 9 - 11
src/main/java/com/persagy/apm/model/vo/MonitorIndicatorListItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.monitorindicator.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:44:38
  */
 @Data
 @ApiModel(value = "监测指标列表返回结果参数")
@@ -18,23 +16,23 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class MonitorIndicatorListItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("指标名称")
     private String name;
-
+    
     @ApiModelProperty("设备类")
     private String classCode;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 75 - 0
src/main/java/com/persagy/apm/alarmservice/monitorindicator/service/IMonitorIndicatorService.java

@@ -0,0 +1,75 @@
+package com.persagy.apm.alarmservice.monitorindicator.service;
+
+import com.persagy.apm.alarmservice.monitorindicator.model.*;
+import com.persagy.apm.alarmservice.monitorindicator.model.dto.*;
+import java.util.List;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 监测指标(MonitorIndicator) service接口
+ *
+ * @author lixing
+ * @version V1.0 2021-09-08 22:44:37
+ */
+public interface IMonitorIndicatorService  {
+    
+    /**
+    * 创建监测指标
+    *
+    * @param addMonitorIndicatorDTO addDTO
+    * @return 监测指标主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
+    public String createMonitorIndicator(AddMonitorIndicatorDTO addMonitorIndicatorDTO);
+    
+    /**
+    * 监测指标详情
+    *
+    * @param id 主键
+    * @return 监测指标do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
+    public MonitorIndicator queryMonitorIndicatorDetail(String id);
+    
+    /**
+    * 更新监测指标
+    *
+    * @param updateMonitorIndicatorDTO updateDTO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
+    public void updateMonitorIndicator(UpdateMonitorIndicatorDTO updateMonitorIndicatorDTO);
+    
+    /**
+    * 删除监测指标
+    *
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
+    public void deleteMonitorIndicator(String id);
+    
+    /**
+    * 查询监测指标
+    *
+    * @param queryMonitorIndicatorDTO queryDTO
+    * @return List<MonitorIndicator>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
+    public List<MonitorIndicator> queryMonitorIndicatorList(QueryMonitorIndicatorDTO queryMonitorIndicatorDTO);
+    
+    /**
+    * 分页查询监测指标
+    * 
+    * @param pageQueryMonitorIndicatorDTO pageQueryDTO
+    * @return IPage<MonitorIndicator>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
+    public IPage<MonitorIndicator> pageQueryMonitorIndicator(PageQueryMonitorIndicatorDTO pageQueryMonitorIndicatorDTO);
+}

+ 61 - 69
src/main/java/com/persagy/apm/service/impl/MonitorIndicatorServiceImpl.java

@@ -1,18 +1,16 @@
-package com.persagy.apm.service.impl;
+package com.persagy.apm.alarmservice.monitorindicator.service.impl;
 
 import com.persagy.apm.common.context.AppContext;
-import com.persagy.apm.dao.MonitorIndicatorMapper;
-import com.persagy.apm.service.IMonitorIndicatorService;
+import com.persagy.apm.alarmservice.monitorindicator.dao.MonitorIndicatorMapper;
+import com.persagy.apm.alarmservice.monitorindicator.service.IMonitorIndicatorService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import org.apache.commons.lang.StringUtils;
 import com.persagy.apm.common.constant.enums.ValidEnum;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.dto.*;
-
+import com.persagy.apm.alarmservice.monitorindicator.model.*;
+import com.persagy.apm.alarmservice.monitorindicator.model.dto.*;
 import java.util.List;
-
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.base.CaseFormat;
@@ -23,19 +21,18 @@ import org.springframework.util.CollectionUtils;
  * 监测指标(MonitorIndicator) service层
  *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:06
+ * @version V1.0 2021-09-08 22:44:37
  */
 @Service
-public class MonitorIndicatorServiceImpl extends ServiceImpl<MonitorIndicatorMapper, MonitorIndicator>
-        implements IMonitorIndicatorService {
-
+public class MonitorIndicatorServiceImpl extends ServiceImpl<MonitorIndicatorMapper, MonitorIndicator> 
+    implements IMonitorIndicatorService {
+    
     /**
-     * 创建监测指标
-     *
-     * @return 监测指标主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:06
-     */
+    * 创建监测指标
+    * @return 监测指标主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
     @Override
     public String createMonitorIndicator(AddMonitorIndicatorDTO addMonitorIndicatorDTO) {
         MonitorIndicator monitorIndicator = ConvertMonitorIndicatorTool.INSTANCE.convertAddDto2Entity(addMonitorIndicatorDTO);
@@ -44,7 +41,7 @@ public class MonitorIndicatorServiceImpl extends ServiceImpl<MonitorIndicatorMap
         save(monitorIndicator);
         return monitorIndicator.getId();
     }
-
+    
     /**
      * 如果某些字段没有赋值,使用默认的值
      *
@@ -55,17 +52,16 @@ public class MonitorIndicatorServiceImpl extends ServiceImpl<MonitorIndicatorMap
     private void setDefaultValue(MonitorIndicator monitorIndicator) {
         monitorIndicator.setCreator(AppContext.getContext().getAccountId());
         // todo 其他默认的属性
-
+        
     }
-
+    
     /**
-     * 监测指标详情
-     *
-     * @param id 主键
-     * @return 部门do类
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:06
-     */
+    * 监测指标详情
+    * @param id 主键
+    * @return 部门do类
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
     @Override
     public MonitorIndicator queryMonitorIndicatorDetail(String id) {
         MonitorIndicator monitorIndicator = getById(id);
@@ -74,13 +70,12 @@ public class MonitorIndicatorServiceImpl extends ServiceImpl<MonitorIndicatorMap
         }
         return monitorIndicator;
     }
-
+    
     /**
-     * 更新监测指标
-     *
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:06
-     */
+    * 更新监测指标
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
     @Override
     public void updateMonitorIndicator(UpdateMonitorIndicatorDTO updateMonitorIndicatorDTO) {
         MonitorIndicator monitorIndicator = getById(updateMonitorIndicatorDTO.getId());
@@ -88,14 +83,14 @@ public class MonitorIndicatorServiceImpl extends ServiceImpl<MonitorIndicatorMap
         monitorIndicator.setModifier(AppContext.getContext().getAccountId());
         updateById(monitorIndicator);
     }
-
+    
     /**
      * 校验监测指标是否可删除
      *
      * @param id 监测指标主键
      * @return 监测指标do类
      * @author lixing
-     * @version V1.0 2021-09-07 18:12:06
+     * @version V1.0 2021-09-08 22:44:37
      */
     public MonitorIndicator checkDeletable(String id) {
         if (id == null) {
@@ -110,14 +105,13 @@ public class MonitorIndicatorServiceImpl extends ServiceImpl<MonitorIndicatorMap
 
         return monitorIndicator;
     }
-
+    
     /**
-     * 删除监测指标
-     *
-     * @param id 主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:06
-     */
+    * 删除监测指标
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
     @Override
     public void deleteMonitorIndicator(String id) {
         // 校验是否可删除
@@ -126,74 +120,72 @@ public class MonitorIndicatorServiceImpl extends ServiceImpl<MonitorIndicatorMap
         monitorIndicator.setValid(ValidEnum.FALSE.getType());
         updateById(monitorIndicator);
     }
-
+    
     /**
-     * 查询监测指标
-     *
-     * @return List<MonitorIndicator>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:06
-     */
+    * 查询监测指标
+    * @return List<MonitorIndicator>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
     @Override
     public List<MonitorIndicator> queryMonitorIndicatorList(QueryMonitorIndicatorDTO queryMonitorIndicatorDTO) {
         QueryWrapper<MonitorIndicator> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(MonitorIndicator.PROP_VALID, ValidEnum.TRUE.getType());
         // 默认按创建时间倒序排序
         queryWrapper.orderBy(true, false, MonitorIndicator.PROP_CREATIONTIME);
-
+        
         if (queryMonitorIndicatorDTO != null) {
-
+                                
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryMonitorIndicatorDTO.getName())) {
                 queryWrapper.like(MonitorIndicator.PROP_NAME, queryMonitorIndicatorDTO.getName());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryMonitorIndicatorDTO.getClassCode())) {
                 queryWrapper.like(MonitorIndicator.PROP_CLASS_CODE, queryMonitorIndicatorDTO.getClassCode());
             }
-
+                                            
         }
-
+        
         return list(queryWrapper);
     }
-
+    
     /**
-     * 分页查询监测指标
-     *
-     * @return IPage<MonitorIndicator>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:06
-     */
+    * 分页查询监测指标
+    * @return IPage<MonitorIndicator>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:44:37
+    */
     @Override
     public IPage<MonitorIndicator> pageQueryMonitorIndicator(PageQueryMonitorIndicatorDTO pageQueryMonitorIndicatorDTO) {
         QueryWrapper<MonitorIndicator> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(MonitorIndicator.PROP_VALID, ValidEnum.TRUE.getType());
         // 这里认为pageQueryDTO是经过校验的,肯定包含分页信息
-        IPage<MonitorIndicator> pageParam = new Page<>(pageQueryMonitorIndicatorDTO.getPage(), pageQueryMonitorIndicatorDTO.getSize(), true);
+        IPage<MonitorIndicator> pageParam = new Page<>(pageQueryMonitorIndicatorDTO.getPage(), pageQueryMonitorIndicatorDTO.getSize(),true);
         // 排序信息
-        if (CollectionUtils.isEmpty(pageQueryMonitorIndicatorDTO.getOrders())) {
+        if(CollectionUtils.isEmpty(pageQueryMonitorIndicatorDTO.getOrders())){
             // 默认按创建时间倒序排序
             queryWrapper.orderBy(true, false, MonitorIndicator.PROP_CREATIONTIME);
-        } else {
+        }else {
             List<Sort> orders = pageQueryMonitorIndicatorDTO.getOrders();
-            for (Sort sort : orders) {
+            for(Sort sort: orders) {
                 // 将驼峰转换为下划线格式
-                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, sort.getColumn()));
+                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE,sort.getColumn()));
                 queryWrapper.orderBy(true, sort.isAsc(), sort.getColumn());
             }
         }
-
+                
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryMonitorIndicatorDTO.getName())) {
             queryWrapper.like(MonitorIndicator.PROP_NAME, pageQueryMonitorIndicatorDTO.getName());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryMonitorIndicatorDTO.getClassCode())) {
             queryWrapper.like(MonitorIndicator.PROP_CLASS_CODE, pageQueryMonitorIndicatorDTO.getClassCode());
         }
-
+                                    
         return getBaseMapper().selectPage(pageParam, queryWrapper);
     }
 }

+ 15 - 17
src/main/java/com/persagy/apm/controller/ProjectAlarmRuleController.java

@@ -1,29 +1,27 @@
-package com.persagy.apm.controller;
+package com.persagy.apm.alarmservice.project.alarmrule.controller;
 
-import com.persagy.apm.service.IProjectAlarmRuleService;
+import com.persagy.apm.alarmservice.project.alarmrule.service.IProjectAlarmRuleService;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.vo.*;
-import com.persagy.apm.model.dto.*;
+import com.persagy.apm.alarmservice.project.alarmrule.model.*;
+import com.persagy.apm.alarmservice.project.alarmrule.model.vo.*;
+import com.persagy.apm.alarmservice.project.alarmrule.model.dto.*;
 import com.persagy.apm.common.response.*;
 import com.persagy.apm.common.utils.ResultHelper;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-
 import javax.validation.Valid;
 import java.util.List;
 
 /**
  * 项目报警规则控制层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:46:16
  */
-@Api(tags = "项目报警规则")
+@Api(tags = "项目报警规则") 
 @Validated
 @RestController
 @RequestMapping("projectAlarmRules")
@@ -31,15 +29,15 @@ public class ProjectAlarmRuleController {
     @Autowired
     private IProjectAlarmRuleService projectAlarmRuleService;
 
-    @ApiOperation(value = "创建项目报警规则")
-    @PostMapping("/create")
-    public CommonResult<ApmResponseUpsertVO> createProjectAlarmRule(
-            @Valid @RequestBody AddProjectAlarmRuleDTO addProjectAlarmRuleDTO) {
+	@ApiOperation(value = "创建项目报警规则")
+	@PostMapping("/create")
+	public CommonResult<ApmResponseUpsertVO> createProjectAlarmRule(
+	        @Valid @RequestBody AddProjectAlarmRuleDTO addProjectAlarmRuleDTO) {
         String id = projectAlarmRuleService.createProjectAlarmRule(addProjectAlarmRuleDTO);
         return ResultHelper.single(new ApmResponseUpsertVO(id));
-    }
-
-    @ApiOperation(value = "项目报警规则详情")
+	}
+	
+	@ApiOperation(value = "项目报警规则详情")
     @PostMapping("/get")
     public CommonResult<ProjectAlarmRuleItemVO> queryProjectAlarmRuleDetail(
             @Valid @RequestBody QueryProjectAlarmRuleDetailDTO queryProjectAlarmRuleDetailDTO) {
@@ -75,7 +73,7 @@ public class ProjectAlarmRuleController {
         List<ProjectAlarmRuleListItemVO> resultList = ConvertProjectAlarmRuleTool.INSTANCE.convert2List(projectAlarmRuleList);
         return ResultHelper.multi(resultList);
     }
-
+    
     //@ApiOperation(value = "项目报警规则列表, 分页查询")
     //@PostMapping("/query")
     //public CommonResult<PageList<ProjectAlarmRuleListItemVO>> queryProjectAlarmRule(

+ 4 - 5
src/main/java/com/persagy/apm/dao/ProjectAlarmRuleMapper.java

@@ -1,16 +1,15 @@
-package com.persagy.apm.dao;
+package com.persagy.apm.alarmservice.project.alarmrule.dao;
 
-import com.persagy.apm.model.ProjectAlarmRule;
+import com.persagy.apm.alarmservice.project.alarmrule.model.ProjectAlarmRule;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 项目报警规则(ProjectAlarmRule)dao层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:46:16
  */
 @Mapper
-public interface ProjectAlarmRuleMapper extends BaseMapper<ProjectAlarmRule> {
+public interface ProjectAlarmRuleMapper extends BaseMapper<ProjectAlarmRule>{
 
 }

+ 73 - 0
src/main/java/com/persagy/apm/alarmservice/project/alarmrule/model/ConvertProjectAlarmRuleTool.java

@@ -0,0 +1,73 @@
+package com.persagy.apm.alarmservice.project.alarmrule.model;
+
+import org.mapstruct.*;
+import org.mapstruct.MappingTarget;
+import org.mapstruct.factory.Mappers;
+import com.persagy.apm.alarmservice.project.alarmrule.model.vo.*;
+import com.persagy.apm.alarmservice.project.alarmrule.model.dto.*;
+
+import java.util.List;
+
+/**
+ * 项目报警规则(ProjectAlarmRule) dto、vo、do转换工具类
+ * @author lixing
+ * @version V1.0 2021-09-08 22:46:16
+ */
+@Mapper(nullValueMappingStrategy = NullValueMappingStrategy.RETURN_DEFAULT,
+        nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS)
+public interface ConvertProjectAlarmRuleTool {
+
+    ConvertProjectAlarmRuleTool INSTANCE = Mappers.getMapper(ConvertProjectAlarmRuleTool.class);
+    
+    /**
+    * do转换为ResponseItemVO
+    *
+    * @param projectAlarmRule do对象
+    * @return ResponseItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    ProjectAlarmRuleItemVO convert2ResponseItemDTO(ProjectAlarmRule projectAlarmRule);
+    
+    /**
+    * do转换为ResponseListItemVO
+    *
+    * @param projectAlarmRule do对象
+    * @return ResponseListItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    ProjectAlarmRuleListItemVO convert2ResponseListItemDTO(ProjectAlarmRule projectAlarmRule);
+
+    /**
+    * do列表转换为ResponseListItemVO列表
+    *
+    * @param projectAlarmRuleList do列表
+    * @return ResponseListItemVO列表
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    List<ProjectAlarmRuleListItemVO> convert2List(List<ProjectAlarmRule> projectAlarmRuleList);
+    
+    /**
+    * addDTO转换为do
+    *
+    * @param addProjectAlarmRuleDTO addDTO
+    * @return 要创建的do对象 
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    ProjectAlarmRule convertAddDto2Entity(AddProjectAlarmRuleDTO addProjectAlarmRuleDTO);
+    
+    /**
+    * updateDTO转换为实体
+    *
+    * @param projectAlarmRule 更新前的do对象
+    * @param updateProjectAlarmRuleDTO updateDTO
+    * @return 更新后的do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    ProjectAlarmRule convertUpdateDto2Entity(@MappingTarget ProjectAlarmRule projectAlarmRule, UpdateProjectAlarmRuleDTO updateProjectAlarmRuleDTO);
+}
+

+ 8 - 10
src/main/java/com/persagy/apm/model/ProjectAlarmRule.java

@@ -1,41 +1,39 @@
-package com.persagy.apm.model;
+package com.persagy.apm.alarmservice.project.alarmrule.model;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import com.persagy.apm.common.model.entity.AuditableEntity;
-
 import java.io.Serializable;
 import java.util.Date;
 
 /**
  * 项目报警规则(ProjectAlarmRule)实体类
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:46:16
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
 @ApiModel(description = "项目报警规则")
 public class ProjectAlarmRule extends AuditableEntity<ProjectAlarmRule> implements Serializable {
-    private static final long serialVersionUID = 308173810358543687L;
+    private static final long serialVersionUID = 563273856588564615L;
 
     @ApiModelProperty("分组id")
     private String groupId;
-
+    
     @ApiModelProperty("报警条目编码")
     private String alarmItemCode;
-
+    
     @ApiModelProperty("报警条件id")
     private String alarmConditionId;
-
+    
     @ApiModelProperty("所属类型(0项目自定义、1集团标准)")
     private Integer belong;
-
+    
     @ApiModelProperty("项目id")
     private String projectId;
-
+    
 
     public static String PROP_GROUP_ID = "group_id";
     public static String PROP_ALARM_ITEM_CODE = "alarm_item_code";

+ 7 - 10
src/main/java/com/persagy/apm/model/dto/AddProjectAlarmRuleDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:46:16
  */
 @Data
 @ApiModel(value = "创建项目报警规则入参")
@@ -19,21 +16,21 @@ public class AddProjectAlarmRuleDTO {
     @ApiModelProperty(value = "分组id", required = true)
     @NotNull(message = "分组id不能为空") // todo 更新校验规则
     private String groupId;
-
+    
     @ApiModelProperty(value = "报警条目编码", required = true)
     @NotNull(message = "报警条目编码不能为空") // todo 更新校验规则
     private String alarmItemCode;
-
+    
     @ApiModelProperty(value = "报警条件id", required = true)
     @NotNull(message = "报警条件id不能为空") // todo 更新校验规则
     private String alarmConditionId;
-
+    
     @ApiModelProperty(value = "所属类型(0项目自定义、1集团标准)", required = true)
     @NotNull(message = "所属类型(0项目自定义、1集团标准)不能为空") // todo 更新校验规则
     private Integer belong;
-
+    
     @ApiModelProperty(value = "项目id", required = true)
     @NotNull(message = "项目id不能为空") // todo 更新校验规则
     private String projectId;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/DeleteProjectAlarmRuleDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:16
  */
 @Data
 @ApiModel(value = "删除项目报警规则入参")
@@ -16,5 +15,5 @@ public class DeleteProjectAlarmRuleDTO {
     @NotNull(message = "id不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 8 - 10
src/main/java/com/persagy/apm/model/dto/PageQueryProjectAlarmRuleDTO.java

@@ -1,17 +1,15 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import java.util.Date;
-
 import com.persagy.apm.common.model.dto.PageDTO;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:16
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
@@ -19,20 +17,20 @@ import lombok.EqualsAndHashCode;
 public class PageQueryProjectAlarmRuleDTO extends PageDTO {
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
     @ApiModelProperty(value = "分组id", required = true)
     private String groupId;
-
+    
     @ApiModelProperty(value = "报警条目编码", required = true)
     private String alarmItemCode;
-
+    
     @ApiModelProperty(value = "报警条件id", required = true)
     private String alarmConditionId;
-
+    
     @ApiModelProperty(value = "所属类型(0项目自定义、1集团标准)", required = true)
     private Integer belong;
-
+    
     @ApiModelProperty(value = "项目id", required = true)
     private String projectId;
-
+    
 }

+ 7 - 8
src/main/java/com/persagy/apm/model/dto/QueryProjectAlarmRuleDTO.java

@@ -1,31 +1,30 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:16
  */
 @Data
 @ApiModel(value = "查询项目报警规则入参")
 public class QueryProjectAlarmRuleDTO {
     @ApiModelProperty(value = "分组id", required = true)
     private String groupId;
-
+    
     @ApiModelProperty(value = "报警条目编码", required = true)
     private String alarmItemCode;
-
+    
     @ApiModelProperty(value = "报警条件id", required = true)
     private String alarmConditionId;
-
+    
     @ApiModelProperty(value = "所属类型(0项目自定义、1集团标准)", required = true)
     private Integer belong;
-
+    
     @ApiModelProperty(value = "项目id", required = true)
     private String projectId;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/QueryProjectAlarmRuleDetailDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:46:16
  */
 @Data
 @ApiModel(value = "获取项目报警规则详情入参")
@@ -16,5 +15,5 @@ public class QueryProjectAlarmRuleDetailDTO {
     @NotNull(message = "主键不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 8 - 11
src/main/java/com/persagy/apm/model/dto/UpdateProjectAlarmRuleDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmrule.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:46:16
  */
 @Data
 @ApiModel(value = "更新项目报警规则入参")
@@ -19,25 +16,25 @@ public class UpdateProjectAlarmRuleDTO {
     @ApiModelProperty(value = "主键", required = true)
     @NotNull(message = "主键不能为空") // todo 更新校验规则
     private String id;
-
+    
     @ApiModelProperty(value = "分组id", required = true)
     @NotNull(message = "分组id不能为空") // todo 更新校验规则
     private String groupId;
-
+    
     @ApiModelProperty(value = "报警条目编码", required = true)
     @NotNull(message = "报警条目编码不能为空") // todo 更新校验规则
     private String alarmItemCode;
-
+    
     @ApiModelProperty(value = "报警条件id", required = true)
     @NotNull(message = "报警条件id不能为空") // todo 更新校验规则
     private String alarmConditionId;
-
+    
     @ApiModelProperty(value = "所属类型(0项目自定义、1集团标准)", required = true)
     @NotNull(message = "所属类型(0项目自定义、1集团标准)不能为空") // todo 更新校验规则
     private Integer belong;
-
+    
     @ApiModelProperty(value = "项目id", required = true)
     @NotNull(message = "项目id不能为空") // todo 更新校验规则
     private String projectId;
-
+    
 }

+ 12 - 14
src/main/java/com/persagy/apm/model/vo/ProjectAlarmRuleItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.project.alarmrule.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:16
  */
 @Data
 @ApiModel(value = "项目报警规则返回结果参数")
@@ -18,32 +16,32 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class ProjectAlarmRuleItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("分组id")
     private String groupId;
-
+    
     @ApiModelProperty("报警条目编码")
     private String alarmItemCode;
-
+    
     @ApiModelProperty("报警条件id")
     private String alarmConditionId;
-
+    
     @ApiModelProperty("所属类型(0项目自定义、1集团标准)")
     private Integer belong;
-
+    
     @ApiModelProperty("项目id")
     private String projectId;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 12 - 14
src/main/java/com/persagy/apm/model/vo/ProjectAlarmRuleListItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.project.alarmrule.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:16
  */
 @Data
 @ApiModel(value = "项目报警规则列表返回结果参数")
@@ -18,32 +16,32 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class ProjectAlarmRuleListItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("分组id")
     private String groupId;
-
+    
     @ApiModelProperty("报警条目编码")
     private String alarmItemCode;
-
+    
     @ApiModelProperty("报警条件id")
     private String alarmConditionId;
-
+    
     @ApiModelProperty("所属类型(0项目自定义、1集团标准)")
     private Integer belong;
-
+    
     @ApiModelProperty("项目id")
     private String projectId;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 75 - 0
src/main/java/com/persagy/apm/alarmservice/project/alarmrule/service/IProjectAlarmRuleService.java

@@ -0,0 +1,75 @@
+package com.persagy.apm.alarmservice.project.alarmrule.service;
+
+import com.persagy.apm.alarmservice.project.alarmrule.model.*;
+import com.persagy.apm.alarmservice.project.alarmrule.model.dto.*;
+import java.util.List;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 项目报警规则(ProjectAlarmRule) service接口
+ *
+ * @author lixing
+ * @version V1.0 2021-09-08 22:46:16
+ */
+public interface IProjectAlarmRuleService  {
+    
+    /**
+    * 创建项目报警规则
+    *
+    * @param addProjectAlarmRuleDTO addDTO
+    * @return 项目报警规则主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    public String createProjectAlarmRule(AddProjectAlarmRuleDTO addProjectAlarmRuleDTO);
+    
+    /**
+    * 项目报警规则详情
+    *
+    * @param id 主键
+    * @return 项目报警规则do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    public ProjectAlarmRule queryProjectAlarmRuleDetail(String id);
+    
+    /**
+    * 更新项目报警规则
+    *
+    * @param updateProjectAlarmRuleDTO updateDTO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    public void updateProjectAlarmRule(UpdateProjectAlarmRuleDTO updateProjectAlarmRuleDTO);
+    
+    /**
+    * 删除项目报警规则
+    *
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    public void deleteProjectAlarmRule(String id);
+    
+    /**
+    * 查询项目报警规则
+    *
+    * @param queryProjectAlarmRuleDTO queryDTO
+    * @return List<ProjectAlarmRule>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    public List<ProjectAlarmRule> queryProjectAlarmRuleList(QueryProjectAlarmRuleDTO queryProjectAlarmRuleDTO);
+    
+    /**
+    * 分页查询项目报警规则
+    * 
+    * @param pageQueryProjectAlarmRuleDTO pageQueryDTO
+    * @return IPage<ProjectAlarmRule>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
+    public IPage<ProjectAlarmRule> pageQueryProjectAlarmRule(PageQueryProjectAlarmRuleDTO pageQueryProjectAlarmRuleDTO);
+}

+ 67 - 75
src/main/java/com/persagy/apm/service/impl/ProjectAlarmRuleServiceImpl.java

@@ -1,18 +1,16 @@
-package com.persagy.apm.service.impl;
+package com.persagy.apm.alarmservice.project.alarmrule.service.impl;
 
 import com.persagy.apm.common.context.AppContext;
-import com.persagy.apm.dao.ProjectAlarmRuleMapper;
-import com.persagy.apm.service.IProjectAlarmRuleService;
+import com.persagy.apm.alarmservice.project.alarmrule.dao.ProjectAlarmRuleMapper;
+import com.persagy.apm.alarmservice.project.alarmrule.service.IProjectAlarmRuleService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import org.apache.commons.lang.StringUtils;
 import com.persagy.apm.common.constant.enums.ValidEnum;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.dto.*;
-
+import com.persagy.apm.alarmservice.project.alarmrule.model.*;
+import com.persagy.apm.alarmservice.project.alarmrule.model.dto.*;
 import java.util.List;
-
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.base.CaseFormat;
@@ -23,19 +21,18 @@ import org.springframework.util.CollectionUtils;
  * 项目报警规则(ProjectAlarmRule) service层
  *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:07
+ * @version V1.0 2021-09-08 22:46:16
  */
 @Service
-public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMapper, ProjectAlarmRule>
-        implements IProjectAlarmRuleService {
-
+public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMapper, ProjectAlarmRule> 
+    implements IProjectAlarmRuleService {
+    
     /**
-     * 创建项目报警规则
-     *
-     * @return 项目报警规则主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:07
-     */
+    * 创建项目报警规则
+    * @return 项目报警规则主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
     @Override
     public String createProjectAlarmRule(AddProjectAlarmRuleDTO addProjectAlarmRuleDTO) {
         ProjectAlarmRule projectAlarmRule = ConvertProjectAlarmRuleTool.INSTANCE.convertAddDto2Entity(addProjectAlarmRuleDTO);
@@ -44,7 +41,7 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
         save(projectAlarmRule);
         return projectAlarmRule.getId();
     }
-
+    
     /**
      * 如果某些字段没有赋值,使用默认的值
      *
@@ -55,17 +52,16 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
     private void setDefaultValue(ProjectAlarmRule projectAlarmRule) {
         projectAlarmRule.setCreator(AppContext.getContext().getAccountId());
         // todo 其他默认的属性
-
+        
     }
-
+    
     /**
-     * 项目报警规则详情
-     *
-     * @param id 主键
-     * @return 部门do类
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:07
-     */
+    * 项目报警规则详情
+    * @param id 主键
+    * @return 部门do类
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
     @Override
     public ProjectAlarmRule queryProjectAlarmRuleDetail(String id) {
         ProjectAlarmRule projectAlarmRule = getById(id);
@@ -74,13 +70,12 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
         }
         return projectAlarmRule;
     }
-
+    
     /**
-     * 更新项目报警规则
-     *
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:07
-     */
+    * 更新项目报警规则
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
     @Override
     public void updateProjectAlarmRule(UpdateProjectAlarmRuleDTO updateProjectAlarmRuleDTO) {
         ProjectAlarmRule projectAlarmRule = getById(updateProjectAlarmRuleDTO.getId());
@@ -88,14 +83,14 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
         projectAlarmRule.setModifier(AppContext.getContext().getAccountId());
         updateById(projectAlarmRule);
     }
-
+    
     /**
      * 校验项目报警规则是否可删除
      *
      * @param id 项目报警规则主键
      * @return 项目报警规则do类
      * @author lixing
-     * @version V1.0 2021-09-07 18:12:07
+     * @version V1.0 2021-09-08 22:46:16
      */
     public ProjectAlarmRule checkDeletable(String id) {
         if (id == null) {
@@ -110,14 +105,13 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
 
         return projectAlarmRule;
     }
-
+    
     /**
-     * 删除项目报警规则
-     *
-     * @param id 主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:07
-     */
+    * 删除项目报警规则
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
     @Override
     public void deleteProjectAlarmRule(String id) {
         // 校验是否可删除
@@ -126,102 +120,100 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
         projectAlarmRule.setValid(ValidEnum.FALSE.getType());
         updateById(projectAlarmRule);
     }
-
+    
     /**
-     * 查询项目报警规则
-     *
-     * @return List<ProjectAlarmRule>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:07
-     */
+    * 查询项目报警规则
+    * @return List<ProjectAlarmRule>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
     @Override
     public List<ProjectAlarmRule> queryProjectAlarmRuleList(QueryProjectAlarmRuleDTO queryProjectAlarmRuleDTO) {
         QueryWrapper<ProjectAlarmRule> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(ProjectAlarmRule.PROP_VALID, ValidEnum.TRUE.getType());
         // 默认按创建时间倒序排序
         queryWrapper.orderBy(true, false, ProjectAlarmRule.PROP_CREATIONTIME);
-
+        
         if (queryProjectAlarmRuleDTO != null) {
-
+                                
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryProjectAlarmRuleDTO.getGroupId())) {
                 queryWrapper.like(ProjectAlarmRule.PROP_GROUP_ID, queryProjectAlarmRuleDTO.getGroupId());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryProjectAlarmRuleDTO.getAlarmItemCode())) {
                 queryWrapper.like(ProjectAlarmRule.PROP_ALARM_ITEM_CODE, queryProjectAlarmRuleDTO.getAlarmItemCode());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryProjectAlarmRuleDTO.getAlarmConditionId())) {
                 queryWrapper.like(ProjectAlarmRule.PROP_ALARM_CONDITION_ID, queryProjectAlarmRuleDTO.getAlarmConditionId());
             }
-
+                                            
             if (queryProjectAlarmRuleDTO.getBelong() != null) {
                 queryWrapper.eq(ProjectAlarmRule.PROP_BELONG, queryProjectAlarmRuleDTO.getBelong());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryProjectAlarmRuleDTO.getProjectId())) {
                 queryWrapper.like(ProjectAlarmRule.PROP_PROJECT_ID, queryProjectAlarmRuleDTO.getProjectId());
             }
-
+                                            
         }
-
+        
         return list(queryWrapper);
     }
-
+    
     /**
-     * 分页查询项目报警规则
-     *
-     * @return IPage<ProjectAlarmRule>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:07
-     */
+    * 分页查询项目报警规则
+    * @return IPage<ProjectAlarmRule>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:16
+    */
     @Override
     public IPage<ProjectAlarmRule> pageQueryProjectAlarmRule(PageQueryProjectAlarmRuleDTO pageQueryProjectAlarmRuleDTO) {
         QueryWrapper<ProjectAlarmRule> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(ProjectAlarmRule.PROP_VALID, ValidEnum.TRUE.getType());
         // 这里认为pageQueryDTO是经过校验的,肯定包含分页信息
-        IPage<ProjectAlarmRule> pageParam = new Page<>(pageQueryProjectAlarmRuleDTO.getPage(), pageQueryProjectAlarmRuleDTO.getSize(), true);
+        IPage<ProjectAlarmRule> pageParam = new Page<>(pageQueryProjectAlarmRuleDTO.getPage(), pageQueryProjectAlarmRuleDTO.getSize(),true);
         // 排序信息
-        if (CollectionUtils.isEmpty(pageQueryProjectAlarmRuleDTO.getOrders())) {
+        if(CollectionUtils.isEmpty(pageQueryProjectAlarmRuleDTO.getOrders())){
             // 默认按创建时间倒序排序
             queryWrapper.orderBy(true, false, ProjectAlarmRule.PROP_CREATIONTIME);
-        } else {
+        }else {
             List<Sort> orders = pageQueryProjectAlarmRuleDTO.getOrders();
-            for (Sort sort : orders) {
+            for(Sort sort: orders) {
                 // 将驼峰转换为下划线格式
-                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, sort.getColumn()));
+                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE,sort.getColumn()));
                 queryWrapper.orderBy(true, sort.isAsc(), sort.getColumn());
             }
         }
-
+                
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryProjectAlarmRuleDTO.getGroupId())) {
             queryWrapper.like(ProjectAlarmRule.PROP_GROUP_ID, pageQueryProjectAlarmRuleDTO.getGroupId());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryProjectAlarmRuleDTO.getAlarmItemCode())) {
             queryWrapper.like(ProjectAlarmRule.PROP_ALARM_ITEM_CODE, pageQueryProjectAlarmRuleDTO.getAlarmItemCode());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryProjectAlarmRuleDTO.getAlarmConditionId())) {
             queryWrapper.like(ProjectAlarmRule.PROP_ALARM_CONDITION_ID, pageQueryProjectAlarmRuleDTO.getAlarmConditionId());
         }
-
+                            
         if (pageQueryProjectAlarmRuleDTO.getBelong() != null) {
             queryWrapper.eq(ProjectAlarmRule.PROP_BELONG, pageQueryProjectAlarmRuleDTO.getBelong());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryProjectAlarmRuleDTO.getProjectId())) {
             queryWrapper.like(ProjectAlarmRule.PROP_PROJECT_ID, pageQueryProjectAlarmRuleDTO.getProjectId());
         }
-
+                                    
         return getBaseMapper().selectPage(pageParam, queryWrapper);
     }
 }

+ 15 - 17
src/main/java/com/persagy/apm/controller/ProjectAlarmRuleObjRelController.java

@@ -1,29 +1,27 @@
-package com.persagy.apm.controller;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.controller;
 
-import com.persagy.apm.service.IProjectAlarmRuleObjRelService;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.service.IProjectAlarmRuleObjRelService;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.vo.*;
-import com.persagy.apm.model.dto.*;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.model.*;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.model.vo.*;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.model.dto.*;
 import com.persagy.apm.common.response.*;
 import com.persagy.apm.common.utils.ResultHelper;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-
 import javax.validation.Valid;
 import java.util.List;
 
 /**
  * 项目报警规则与监测对象的关联控制层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
-@Api(tags = "项目报警规则与监测对象的关联")
+@Api(tags = "项目报警规则与监测对象的关联") 
 @Validated
 @RestController
 @RequestMapping("projectAlarmRuleObjRels")
@@ -31,15 +29,15 @@ public class ProjectAlarmRuleObjRelController {
     @Autowired
     private IProjectAlarmRuleObjRelService projectAlarmRuleObjRelService;
 
-    @ApiOperation(value = "创建项目报警规则与监测对象的关联")
-    @PostMapping("/create")
-    public CommonResult<ApmResponseUpsertVO> createProjectAlarmRuleObjRel(
-            @Valid @RequestBody AddProjectAlarmRuleObjRelDTO addProjectAlarmRuleObjRelDTO) {
+	@ApiOperation(value = "创建项目报警规则与监测对象的关联")
+	@PostMapping("/create")
+	public CommonResult<ApmResponseUpsertVO> createProjectAlarmRuleObjRel(
+	        @Valid @RequestBody AddProjectAlarmRuleObjRelDTO addProjectAlarmRuleObjRelDTO) {
         String id = projectAlarmRuleObjRelService.createProjectAlarmRuleObjRel(addProjectAlarmRuleObjRelDTO);
         return ResultHelper.single(new ApmResponseUpsertVO(id));
-    }
-
-    @ApiOperation(value = "项目报警规则与监测对象的关联详情")
+	}
+	
+	@ApiOperation(value = "项目报警规则与监测对象的关联详情")
     @PostMapping("/get")
     public CommonResult<ProjectAlarmRuleObjRelItemVO> queryProjectAlarmRuleObjRelDetail(
             @Valid @RequestBody QueryProjectAlarmRuleObjRelDetailDTO queryProjectAlarmRuleObjRelDetailDTO) {
@@ -75,7 +73,7 @@ public class ProjectAlarmRuleObjRelController {
         List<ProjectAlarmRuleObjRelListItemVO> resultList = ConvertProjectAlarmRuleObjRelTool.INSTANCE.convert2List(projectAlarmRuleObjRelList);
         return ResultHelper.multi(resultList);
     }
-
+    
     //@ApiOperation(value = "项目报警规则与监测对象的关联列表, 分页查询")
     //@PostMapping("/query")
     //public CommonResult<PageList<ProjectAlarmRuleObjRelListItemVO>> queryProjectAlarmRuleObjRel(

+ 4 - 5
src/main/java/com/persagy/apm/dao/ProjectAlarmRuleObjRelMapper.java

@@ -1,16 +1,15 @@
-package com.persagy.apm.dao;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.dao;
 
-import com.persagy.apm.model.ProjectAlarmRuleObjRel;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.model.ProjectAlarmRuleObjRel;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 项目报警规则与监测对象的关联(ProjectAlarmRuleObjRel)dao层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @Mapper
-public interface ProjectAlarmRuleObjRelMapper extends BaseMapper<ProjectAlarmRuleObjRel> {
+public interface ProjectAlarmRuleObjRelMapper extends BaseMapper<ProjectAlarmRuleObjRel>{
 
 }

+ 73 - 0
src/main/java/com/persagy/apm/alarmservice/project/alarmruleobjrel/model/ConvertProjectAlarmRuleObjRelTool.java

@@ -0,0 +1,73 @@
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.model;
+
+import org.mapstruct.*;
+import org.mapstruct.MappingTarget;
+import org.mapstruct.factory.Mappers;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.model.vo.*;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.model.dto.*;
+
+import java.util.List;
+
+/**
+ * 项目报警规则与监测对象的关联(ProjectAlarmRuleObjRel) dto、vo、do转换工具类
+ * @author lixing
+ * @version V1.0 2021-09-08 22:46:37
+ */
+@Mapper(nullValueMappingStrategy = NullValueMappingStrategy.RETURN_DEFAULT,
+        nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS)
+public interface ConvertProjectAlarmRuleObjRelTool {
+
+    ConvertProjectAlarmRuleObjRelTool INSTANCE = Mappers.getMapper(ConvertProjectAlarmRuleObjRelTool.class);
+    
+    /**
+    * do转换为ResponseItemVO
+    *
+    * @param projectAlarmRuleObjRel do对象
+    * @return ResponseItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    ProjectAlarmRuleObjRelItemVO convert2ResponseItemDTO(ProjectAlarmRuleObjRel projectAlarmRuleObjRel);
+    
+    /**
+    * do转换为ResponseListItemVO
+    *
+    * @param projectAlarmRuleObjRel do对象
+    * @return ResponseListItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    ProjectAlarmRuleObjRelListItemVO convert2ResponseListItemDTO(ProjectAlarmRuleObjRel projectAlarmRuleObjRel);
+
+    /**
+    * do列表转换为ResponseListItemVO列表
+    *
+    * @param projectAlarmRuleObjRelList do列表
+    * @return ResponseListItemVO列表
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    List<ProjectAlarmRuleObjRelListItemVO> convert2List(List<ProjectAlarmRuleObjRel> projectAlarmRuleObjRelList);
+    
+    /**
+    * addDTO转换为do
+    *
+    * @param addProjectAlarmRuleObjRelDTO addDTO
+    * @return 要创建的do对象 
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    ProjectAlarmRuleObjRel convertAddDto2Entity(AddProjectAlarmRuleObjRelDTO addProjectAlarmRuleObjRelDTO);
+    
+    /**
+    * updateDTO转换为实体
+    *
+    * @param projectAlarmRuleObjRel 更新前的do对象
+    * @param updateProjectAlarmRuleObjRelDTO updateDTO
+    * @return 更新后的do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    ProjectAlarmRuleObjRel convertUpdateDto2Entity(@MappingTarget ProjectAlarmRuleObjRel projectAlarmRuleObjRel, UpdateProjectAlarmRuleObjRelDTO updateProjectAlarmRuleObjRelDTO);
+}
+

+ 7 - 9
src/main/java/com/persagy/apm/model/ProjectAlarmRuleObjRel.java

@@ -1,38 +1,36 @@
-package com.persagy.apm.model;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.model;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import com.persagy.apm.common.model.entity.AuditableEntity;
-
 import java.io.Serializable;
 import java.util.Date;
 
 /**
  * 项目报警规则与监测对象的关联(ProjectAlarmRuleObjRel)实体类
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
 @ApiModel(description = "项目报警规则与监测对象的关联")
 public class ProjectAlarmRuleObjRel extends AuditableEntity<ProjectAlarmRuleObjRel> implements Serializable {
-    private static final long serialVersionUID = 246932386228580969L;
+    private static final long serialVersionUID = -66793720778399542L;
 
     @ApiModelProperty("项目报警规则id")
     private String projectAlarmRuleId;
-
+    
     @ApiModelProperty("设备ID")
     private String equipId;
-
+    
     @ApiModelProperty("屏蔽状态 1-open、0- 屏蔽")
     private Integer open;
-
+    
     @ApiModelProperty("项目id")
     private String projectId;
-
+    
 
     public static String PROP_PROJECT_ALARM_RULE_ID = "project_alarm_rule_id";
     public static String PROP_EQUIP_ID = "equip_id";

+ 6 - 9
src/main/java/com/persagy/apm/model/dto/AddProjectAlarmRuleObjRelDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @Data
 @ApiModel(value = "创建项目报警规则与监测对象的关联入参")
@@ -19,17 +16,17 @@ public class AddProjectAlarmRuleObjRelDTO {
     @ApiModelProperty(value = "项目报警规则id", required = true)
     @NotNull(message = "项目报警规则id不能为空") // todo 更新校验规则
     private String projectAlarmRuleId;
-
+    
     @ApiModelProperty(value = "设备ID", required = true)
     @NotNull(message = "设备ID不能为空") // todo 更新校验规则
     private String equipId;
-
+    
     @ApiModelProperty(value = "屏蔽状态 1-open、0- 屏蔽", required = true)
     @NotNull(message = "屏蔽状态 1-open、0- 屏蔽不能为空") // todo 更新校验规则
     private Integer open;
-
+    
     @ApiModelProperty(value = "项目id", required = true)
     @NotNull(message = "项目id不能为空") // todo 更新校验规则
     private String projectId;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/DeleteProjectAlarmRuleObjRelDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @Data
 @ApiModel(value = "删除项目报警规则与监测对象的关联入参")
@@ -16,5 +15,5 @@ public class DeleteProjectAlarmRuleObjRelDTO {
     @NotNull(message = "id不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 7 - 9
src/main/java/com/persagy/apm/model/dto/PageQueryProjectAlarmRuleObjRelDTO.java

@@ -1,17 +1,15 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import java.util.Date;
-
 import com.persagy.apm.common.model.dto.PageDTO;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
@@ -19,17 +17,17 @@ import lombok.EqualsAndHashCode;
 public class PageQueryProjectAlarmRuleObjRelDTO extends PageDTO {
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
     @ApiModelProperty(value = "项目报警规则id", required = true)
     private String projectAlarmRuleId;
-
+    
     @ApiModelProperty(value = "设备ID", required = true)
     private String equipId;
-
+    
     @ApiModelProperty(value = "屏蔽状态 1-open、0- 屏蔽", required = true)
     private Integer open;
-
+    
     @ApiModelProperty(value = "项目id", required = true)
     private String projectId;
-
+    
 }

+ 6 - 7
src/main/java/com/persagy/apm/model/dto/QueryProjectAlarmRuleObjRelDTO.java

@@ -1,28 +1,27 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @Data
 @ApiModel(value = "查询项目报警规则与监测对象的关联入参")
 public class QueryProjectAlarmRuleObjRelDTO {
     @ApiModelProperty(value = "项目报警规则id", required = true)
     private String projectAlarmRuleId;
-
+    
     @ApiModelProperty(value = "设备ID", required = true)
     private String equipId;
-
+    
     @ApiModelProperty(value = "屏蔽状态 1-open、0- 屏蔽", required = true)
     private Integer open;
-
+    
     @ApiModelProperty(value = "项目id", required = true)
     private String projectId;
-
+    
 }

+ 3 - 4
src/main/java/com/persagy/apm/model/dto/QueryProjectAlarmRuleObjRelDetailDTO.java

@@ -1,14 +1,13 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import javax.validation.constraints.NotNull;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @Data
 @ApiModel(value = "获取项目报警规则与监测对象的关联详情入参")
@@ -16,5 +15,5 @@ public class QueryProjectAlarmRuleObjRelDetailDTO {
     @NotNull(message = "主键不能为空")
     @ApiModelProperty(value = "主键", required = true)
     private String id;
-
+    
 }

+ 7 - 10
src/main/java/com/persagy/apm/model/dto/UpdateProjectAlarmRuleObjRelDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @Data
 @ApiModel(value = "更新项目报警规则与监测对象的关联入参")
@@ -19,21 +16,21 @@ public class UpdateProjectAlarmRuleObjRelDTO {
     @ApiModelProperty(value = "主键", required = true)
     @NotNull(message = "主键不能为空") // todo 更新校验规则
     private String id;
-
+    
     @ApiModelProperty(value = "项目报警规则id", required = true)
     @NotNull(message = "项目报警规则id不能为空") // todo 更新校验规则
     private String projectAlarmRuleId;
-
+    
     @ApiModelProperty(value = "设备ID", required = true)
     @NotNull(message = "设备ID不能为空") // todo 更新校验规则
     private String equipId;
-
+    
     @ApiModelProperty(value = "屏蔽状态 1-open、0- 屏蔽", required = true)
     @NotNull(message = "屏蔽状态 1-open、0- 屏蔽不能为空") // todo 更新校验规则
     private Integer open;
-
+    
     @ApiModelProperty(value = "项目id", required = true)
     @NotNull(message = "项目id不能为空") // todo 更新校验规则
     private String projectId;
-
+    
 }

+ 11 - 13
src/main/java/com/persagy/apm/model/vo/ProjectAlarmRuleObjRelItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @Data
 @ApiModel(value = "项目报警规则与监测对象的关联返回结果参数")
@@ -18,29 +16,29 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class ProjectAlarmRuleObjRelItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("项目报警规则id")
     private String projectAlarmRuleId;
-
+    
     @ApiModelProperty("设备ID")
     private String equipId;
-
+    
     @ApiModelProperty("屏蔽状态 1-open、0- 屏蔽")
     private Integer open;
-
+    
     @ApiModelProperty("项目id")
     private String projectId;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 11 - 13
src/main/java/com/persagy/apm/model/vo/ProjectAlarmRuleObjRelListItemVO.java

@@ -1,16 +1,14 @@
-package com.persagy.apm.model.vo;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.model.vo;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.util.Date;
-
 import com.fasterxml.jackson.annotation.JsonInclude;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @Data
 @ApiModel(value = "项目报警规则与监测对象的关联列表返回结果参数")
@@ -18,29 +16,29 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 public class ProjectAlarmRuleObjRelListItemVO {
     @ApiModelProperty("主键")
     private String id;
-
+    
     @ApiModelProperty("项目报警规则id")
     private String projectAlarmRuleId;
-
+    
     @ApiModelProperty("设备ID")
     private String equipId;
-
+    
     @ApiModelProperty("屏蔽状态 1-open、0- 屏蔽")
     private Integer open;
-
+    
     @ApiModelProperty("项目id")
     private String projectId;
-
+    
     @ApiModelProperty("创建人")
     private String creator;
-
+    
     @ApiModelProperty("创建时间")
     private Date creationTime;
-
+    
     @ApiModelProperty("修改人")
     private String modifier;
-
+    
     @ApiModelProperty("修改时间")
     private Date modifiedTime;
-
+    
 }

+ 75 - 0
src/main/java/com/persagy/apm/alarmservice/project/alarmruleobjrel/service/IProjectAlarmRuleObjRelService.java

@@ -0,0 +1,75 @@
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.service;
+
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.model.*;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.model.dto.*;
+import java.util.List;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 项目报警规则与监测对象的关联(ProjectAlarmRuleObjRel) service接口
+ *
+ * @author lixing
+ * @version V1.0 2021-09-08 22:46:37
+ */
+public interface IProjectAlarmRuleObjRelService  {
+    
+    /**
+    * 创建项目报警规则与监测对象的关联
+    *
+    * @param addProjectAlarmRuleObjRelDTO addDTO
+    * @return 项目报警规则与监测对象的关联主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    public String createProjectAlarmRuleObjRel(AddProjectAlarmRuleObjRelDTO addProjectAlarmRuleObjRelDTO);
+    
+    /**
+    * 项目报警规则与监测对象的关联详情
+    *
+    * @param id 主键
+    * @return 项目报警规则与监测对象的关联do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    public ProjectAlarmRuleObjRel queryProjectAlarmRuleObjRelDetail(String id);
+    
+    /**
+    * 更新项目报警规则与监测对象的关联
+    *
+    * @param updateProjectAlarmRuleObjRelDTO updateDTO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    public void updateProjectAlarmRuleObjRel(UpdateProjectAlarmRuleObjRelDTO updateProjectAlarmRuleObjRelDTO);
+    
+    /**
+    * 删除项目报警规则与监测对象的关联
+    *
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    public void deleteProjectAlarmRuleObjRel(String id);
+    
+    /**
+    * 查询项目报警规则与监测对象的关联
+    *
+    * @param queryProjectAlarmRuleObjRelDTO queryDTO
+    * @return List<ProjectAlarmRuleObjRel>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    public List<ProjectAlarmRuleObjRel> queryProjectAlarmRuleObjRelList(QueryProjectAlarmRuleObjRelDTO queryProjectAlarmRuleObjRelDTO);
+    
+    /**
+    * 分页查询项目报警规则与监测对象的关联
+    * 
+    * @param pageQueryProjectAlarmRuleObjRelDTO pageQueryDTO
+    * @return IPage<ProjectAlarmRuleObjRel>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
+    public IPage<ProjectAlarmRuleObjRel> pageQueryProjectAlarmRuleObjRel(PageQueryProjectAlarmRuleObjRelDTO pageQueryProjectAlarmRuleObjRelDTO);
+}

+ 65 - 73
src/main/java/com/persagy/apm/service/impl/ProjectAlarmRuleObjRelServiceImpl.java

@@ -1,18 +1,16 @@
-package com.persagy.apm.service.impl;
+package com.persagy.apm.alarmservice.project.alarmruleobjrel.service.impl;
 
 import com.persagy.apm.common.context.AppContext;
-import com.persagy.apm.dao.ProjectAlarmRuleObjRelMapper;
-import com.persagy.apm.service.IProjectAlarmRuleObjRelService;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.dao.ProjectAlarmRuleObjRelMapper;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.service.IProjectAlarmRuleObjRelService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import org.apache.commons.lang.StringUtils;
 import com.persagy.apm.common.constant.enums.ValidEnum;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.dto.*;
-
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.model.*;
+import com.persagy.apm.alarmservice.project.alarmruleobjrel.model.dto.*;
 import java.util.List;
-
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.base.CaseFormat;
@@ -23,19 +21,18 @@ import org.springframework.util.CollectionUtils;
  * 项目报警规则与监测对象的关联(ProjectAlarmRuleObjRel) service层
  *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:08
+ * @version V1.0 2021-09-08 22:46:37
  */
 @Service
-public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmRuleObjRelMapper, ProjectAlarmRuleObjRel>
-        implements IProjectAlarmRuleObjRelService {
-
+public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmRuleObjRelMapper, ProjectAlarmRuleObjRel> 
+    implements IProjectAlarmRuleObjRelService {
+    
     /**
-     * 创建项目报警规则与监测对象的关联
-     *
-     * @return 项目报警规则与监测对象的关联主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:08
-     */
+    * 创建项目报警规则与监测对象的关联
+    * @return 项目报警规则与监测对象的关联主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
     @Override
     public String createProjectAlarmRuleObjRel(AddProjectAlarmRuleObjRelDTO addProjectAlarmRuleObjRelDTO) {
         ProjectAlarmRuleObjRel projectAlarmRuleObjRel = ConvertProjectAlarmRuleObjRelTool.INSTANCE.convertAddDto2Entity(addProjectAlarmRuleObjRelDTO);
@@ -44,7 +41,7 @@ public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmR
         save(projectAlarmRuleObjRel);
         return projectAlarmRuleObjRel.getId();
     }
-
+    
     /**
      * 如果某些字段没有赋值,使用默认的值
      *
@@ -55,17 +52,16 @@ public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmR
     private void setDefaultValue(ProjectAlarmRuleObjRel projectAlarmRuleObjRel) {
         projectAlarmRuleObjRel.setCreator(AppContext.getContext().getAccountId());
         // todo 其他默认的属性
-
+        
     }
-
+    
     /**
-     * 项目报警规则与监测对象的关联详情
-     *
-     * @param id 主键
-     * @return 部门do类
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:08
-     */
+    * 项目报警规则与监测对象的关联详情
+    * @param id 主键
+    * @return 部门do类
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
     @Override
     public ProjectAlarmRuleObjRel queryProjectAlarmRuleObjRelDetail(String id) {
         ProjectAlarmRuleObjRel projectAlarmRuleObjRel = getById(id);
@@ -74,13 +70,12 @@ public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmR
         }
         return projectAlarmRuleObjRel;
     }
-
+    
     /**
-     * 更新项目报警规则与监测对象的关联
-     *
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:08
-     */
+    * 更新项目报警规则与监测对象的关联
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
     @Override
     public void updateProjectAlarmRuleObjRel(UpdateProjectAlarmRuleObjRelDTO updateProjectAlarmRuleObjRelDTO) {
         ProjectAlarmRuleObjRel projectAlarmRuleObjRel = getById(updateProjectAlarmRuleObjRelDTO.getId());
@@ -88,14 +83,14 @@ public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmR
         projectAlarmRuleObjRel.setModifier(AppContext.getContext().getAccountId());
         updateById(projectAlarmRuleObjRel);
     }
-
+    
     /**
      * 校验项目报警规则与监测对象的关联是否可删除
      *
      * @param id 项目报警规则与监测对象的关联主键
      * @return 项目报警规则与监测对象的关联do类
      * @author lixing
-     * @version V1.0 2021-09-07 18:12:08
+     * @version V1.0 2021-09-08 22:46:37
      */
     public ProjectAlarmRuleObjRel checkDeletable(String id) {
         if (id == null) {
@@ -110,14 +105,13 @@ public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmR
 
         return projectAlarmRuleObjRel;
     }
-
+    
     /**
-     * 删除项目报警规则与监测对象的关联
-     *
-     * @param id 主键
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:08
-     */
+    * 删除项目报警规则与监测对象的关联
+    * @param id 主键
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
     @Override
     public void deleteProjectAlarmRuleObjRel(String id) {
         // 校验是否可删除
@@ -126,92 +120,90 @@ public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmR
         projectAlarmRuleObjRel.setValid(ValidEnum.FALSE.getType());
         updateById(projectAlarmRuleObjRel);
     }
-
+    
     /**
-     * 查询项目报警规则与监测对象的关联
-     *
-     * @return List<ProjectAlarmRuleObjRel>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:08
-     */
+    * 查询项目报警规则与监测对象的关联
+    * @return List<ProjectAlarmRuleObjRel>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
     @Override
     public List<ProjectAlarmRuleObjRel> queryProjectAlarmRuleObjRelList(QueryProjectAlarmRuleObjRelDTO queryProjectAlarmRuleObjRelDTO) {
         QueryWrapper<ProjectAlarmRuleObjRel> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(ProjectAlarmRuleObjRel.PROP_VALID, ValidEnum.TRUE.getType());
         // 默认按创建时间倒序排序
         queryWrapper.orderBy(true, false, ProjectAlarmRuleObjRel.PROP_CREATIONTIME);
-
+        
         if (queryProjectAlarmRuleObjRelDTO != null) {
-
+                                
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryProjectAlarmRuleObjRelDTO.getProjectAlarmRuleId())) {
                 queryWrapper.like(ProjectAlarmRuleObjRel.PROP_PROJECT_ALARM_RULE_ID, queryProjectAlarmRuleObjRelDTO.getProjectAlarmRuleId());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryProjectAlarmRuleObjRelDTO.getEquipId())) {
                 queryWrapper.like(ProjectAlarmRuleObjRel.PROP_EQUIP_ID, queryProjectAlarmRuleObjRelDTO.getEquipId());
             }
-
+                                            
             if (queryProjectAlarmRuleObjRelDTO.getOpen() != null) {
                 queryWrapper.eq(ProjectAlarmRuleObjRel.PROP_OPEN, queryProjectAlarmRuleObjRelDTO.getOpen());
             }
-
+                                        
             // todo 需判断使用like还是eq
             if (StringUtils.isNotEmpty(queryProjectAlarmRuleObjRelDTO.getProjectId())) {
                 queryWrapper.like(ProjectAlarmRuleObjRel.PROP_PROJECT_ID, queryProjectAlarmRuleObjRelDTO.getProjectId());
             }
-
+                                            
         }
-
+        
         return list(queryWrapper);
     }
-
+    
     /**
-     * 分页查询项目报警规则与监测对象的关联
-     *
-     * @return IPage<ProjectAlarmRuleObjRel>
-     * @author lixing
-     * @version V1.0 2021-09-07 18:12:08
-     */
+    * 分页查询项目报警规则与监测对象的关联
+    * @return IPage<ProjectAlarmRuleObjRel>
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:37
+    */
     @Override
     public IPage<ProjectAlarmRuleObjRel> pageQueryProjectAlarmRuleObjRel(PageQueryProjectAlarmRuleObjRelDTO pageQueryProjectAlarmRuleObjRelDTO) {
         QueryWrapper<ProjectAlarmRuleObjRel> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(ProjectAlarmRuleObjRel.PROP_VALID, ValidEnum.TRUE.getType());
         // 这里认为pageQueryDTO是经过校验的,肯定包含分页信息
-        IPage<ProjectAlarmRuleObjRel> pageParam = new Page<>(pageQueryProjectAlarmRuleObjRelDTO.getPage(), pageQueryProjectAlarmRuleObjRelDTO.getSize(), true);
+        IPage<ProjectAlarmRuleObjRel> pageParam = new Page<>(pageQueryProjectAlarmRuleObjRelDTO.getPage(), pageQueryProjectAlarmRuleObjRelDTO.getSize(),true);
         // 排序信息
-        if (CollectionUtils.isEmpty(pageQueryProjectAlarmRuleObjRelDTO.getOrders())) {
+        if(CollectionUtils.isEmpty(pageQueryProjectAlarmRuleObjRelDTO.getOrders())){
             // 默认按创建时间倒序排序
             queryWrapper.orderBy(true, false, ProjectAlarmRuleObjRel.PROP_CREATIONTIME);
-        } else {
+        }else {
             List<Sort> orders = pageQueryProjectAlarmRuleObjRelDTO.getOrders();
-            for (Sort sort : orders) {
+            for(Sort sort: orders) {
                 // 将驼峰转换为下划线格式
-                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, sort.getColumn()));
+                sort.setColumn(CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE,sort.getColumn()));
                 queryWrapper.orderBy(true, sort.isAsc(), sort.getColumn());
             }
         }
-
+                
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryProjectAlarmRuleObjRelDTO.getProjectAlarmRuleId())) {
             queryWrapper.like(ProjectAlarmRuleObjRel.PROP_PROJECT_ALARM_RULE_ID, pageQueryProjectAlarmRuleObjRelDTO.getProjectAlarmRuleId());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryProjectAlarmRuleObjRelDTO.getEquipId())) {
             queryWrapper.like(ProjectAlarmRuleObjRel.PROP_EQUIP_ID, pageQueryProjectAlarmRuleObjRelDTO.getEquipId());
         }
-
+                            
         if (pageQueryProjectAlarmRuleObjRelDTO.getOpen() != null) {
             queryWrapper.eq(ProjectAlarmRuleObjRel.PROP_OPEN, pageQueryProjectAlarmRuleObjRelDTO.getOpen());
         }
-
+                            
         // todo 需判断使用like还是eq
         if (StringUtils.isNotEmpty(pageQueryProjectAlarmRuleObjRelDTO.getProjectId())) {
             queryWrapper.like(ProjectAlarmRuleObjRel.PROP_PROJECT_ID, pageQueryProjectAlarmRuleObjRelDTO.getProjectId());
         }
-
+                                    
         return getBaseMapper().selectPage(pageParam, queryWrapper);
     }
 }

+ 15 - 17
src/main/java/com/persagy/apm/controller/ProjectMonitorIndicatorConfigController.java

@@ -1,29 +1,27 @@
-package com.persagy.apm.controller;
+package com.persagy.apm.alarmservice.project.monitorindicatorconfig.controller;
 
-import com.persagy.apm.service.IProjectMonitorIndicatorConfigService;
+import com.persagy.apm.alarmservice.project.monitorindicatorconfig.service.IProjectMonitorIndicatorConfigService;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.persagy.apm.model.*;
-import com.persagy.apm.model.vo.*;
-import com.persagy.apm.model.dto.*;
+import com.persagy.apm.alarmservice.project.monitorindicatorconfig.model.*;
+import com.persagy.apm.alarmservice.project.monitorindicatorconfig.model.vo.*;
+import com.persagy.apm.alarmservice.project.monitorindicatorconfig.model.dto.*;
 import com.persagy.apm.common.response.*;
 import com.persagy.apm.common.utils.ResultHelper;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-
 import javax.validation.Valid;
 import java.util.List;
 
 /**
  * 项目监测指标配置控制层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:09
+ * @version V1.0 2021-09-08 22:46:56
  */
-@Api(tags = "项目监测指标配置")
+@Api(tags = "项目监测指标配置") 
 @Validated
 @RestController
 @RequestMapping("projectMonitorIndicatorConfigs")
@@ -31,15 +29,15 @@ public class ProjectMonitorIndicatorConfigController {
     @Autowired
     private IProjectMonitorIndicatorConfigService projectMonitorIndicatorConfigService;
 
-    @ApiOperation(value = "创建项目监测指标配置")
-    @PostMapping("/create")
-    public CommonResult<ApmResponseUpsertVO> createProjectMonitorIndicatorConfig(
-            @Valid @RequestBody AddProjectMonitorIndicatorConfigDTO addProjectMonitorIndicatorConfigDTO) {
+	@ApiOperation(value = "创建项目监测指标配置")
+	@PostMapping("/create")
+	public CommonResult<ApmResponseUpsertVO> createProjectMonitorIndicatorConfig(
+	        @Valid @RequestBody AddProjectMonitorIndicatorConfigDTO addProjectMonitorIndicatorConfigDTO) {
         String id = projectMonitorIndicatorConfigService.createProjectMonitorIndicatorConfig(addProjectMonitorIndicatorConfigDTO);
         return ResultHelper.single(new ApmResponseUpsertVO(id));
-    }
-
-    @ApiOperation(value = "项目监测指标配置详情")
+	}
+	
+	@ApiOperation(value = "项目监测指标配置详情")
     @PostMapping("/get")
     public CommonResult<ProjectMonitorIndicatorConfigItemVO> queryProjectMonitorIndicatorConfigDetail(
             @Valid @RequestBody QueryProjectMonitorIndicatorConfigDetailDTO queryProjectMonitorIndicatorConfigDetailDTO) {
@@ -75,7 +73,7 @@ public class ProjectMonitorIndicatorConfigController {
         List<ProjectMonitorIndicatorConfigListItemVO> resultList = ConvertProjectMonitorIndicatorConfigTool.INSTANCE.convert2List(projectMonitorIndicatorConfigList);
         return ResultHelper.multi(resultList);
     }
-
+    
     //@ApiOperation(value = "项目监测指标配置列表, 分页查询")
     //@PostMapping("/query")
     //public CommonResult<PageList<ProjectMonitorIndicatorConfigListItemVO>> queryProjectMonitorIndicatorConfig(

+ 4 - 5
src/main/java/com/persagy/apm/dao/ProjectMonitorIndicatorConfigMapper.java

@@ -1,16 +1,15 @@
-package com.persagy.apm.dao;
+package com.persagy.apm.alarmservice.project.monitorindicatorconfig.dao;
 
-import com.persagy.apm.model.ProjectMonitorIndicatorConfig;
+import com.persagy.apm.alarmservice.project.monitorindicatorconfig.model.ProjectMonitorIndicatorConfig;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 项目监测指标配置(ProjectMonitorIndicatorConfig)dao层
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:09
+ * @version V1.0 2021-09-08 22:46:56
  */
 @Mapper
-public interface ProjectMonitorIndicatorConfigMapper extends BaseMapper<ProjectMonitorIndicatorConfig> {
+public interface ProjectMonitorIndicatorConfigMapper extends BaseMapper<ProjectMonitorIndicatorConfig>{
 
 }

+ 73 - 0
src/main/java/com/persagy/apm/alarmservice/project/monitorindicatorconfig/model/ConvertProjectMonitorIndicatorConfigTool.java

@@ -0,0 +1,73 @@
+package com.persagy.apm.alarmservice.project.monitorindicatorconfig.model;
+
+import org.mapstruct.*;
+import org.mapstruct.MappingTarget;
+import org.mapstruct.factory.Mappers;
+import com.persagy.apm.alarmservice.project.monitorindicatorconfig.model.vo.*;
+import com.persagy.apm.alarmservice.project.monitorindicatorconfig.model.dto.*;
+
+import java.util.List;
+
+/**
+ * 项目监测指标配置(ProjectMonitorIndicatorConfig) dto、vo、do转换工具类
+ * @author lixing
+ * @version V1.0 2021-09-08 22:46:56
+ */
+@Mapper(nullValueMappingStrategy = NullValueMappingStrategy.RETURN_DEFAULT,
+        nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS)
+public interface ConvertProjectMonitorIndicatorConfigTool {
+
+    ConvertProjectMonitorIndicatorConfigTool INSTANCE = Mappers.getMapper(ConvertProjectMonitorIndicatorConfigTool.class);
+    
+    /**
+    * do转换为ResponseItemVO
+    *
+    * @param projectMonitorIndicatorConfig do对象
+    * @return ResponseItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:56
+    */
+    ProjectMonitorIndicatorConfigItemVO convert2ResponseItemDTO(ProjectMonitorIndicatorConfig projectMonitorIndicatorConfig);
+    
+    /**
+    * do转换为ResponseListItemVO
+    *
+    * @param projectMonitorIndicatorConfig do对象
+    * @return ResponseListItemVO
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:56
+    */
+    ProjectMonitorIndicatorConfigListItemVO convert2ResponseListItemDTO(ProjectMonitorIndicatorConfig projectMonitorIndicatorConfig);
+
+    /**
+    * do列表转换为ResponseListItemVO列表
+    *
+    * @param projectMonitorIndicatorConfigList do列表
+    * @return ResponseListItemVO列表
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:56
+    */
+    List<ProjectMonitorIndicatorConfigListItemVO> convert2List(List<ProjectMonitorIndicatorConfig> projectMonitorIndicatorConfigList);
+    
+    /**
+    * addDTO转换为do
+    *
+    * @param addProjectMonitorIndicatorConfigDTO addDTO
+    * @return 要创建的do对象 
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:56
+    */
+    ProjectMonitorIndicatorConfig convertAddDto2Entity(AddProjectMonitorIndicatorConfigDTO addProjectMonitorIndicatorConfigDTO);
+    
+    /**
+    * updateDTO转换为实体
+    *
+    * @param projectMonitorIndicatorConfig 更新前的do对象
+    * @param updateProjectMonitorIndicatorConfigDTO updateDTO
+    * @return 更新后的do对象
+    * @author lixing
+    * @version V1.0 2021-09-08 22:46:56
+    */
+    ProjectMonitorIndicatorConfig convertUpdateDto2Entity(@MappingTarget ProjectMonitorIndicatorConfig projectMonitorIndicatorConfig, UpdateProjectMonitorIndicatorConfigDTO updateProjectMonitorIndicatorConfigDTO);
+}
+

+ 7 - 9
src/main/java/com/persagy/apm/model/ProjectMonitorIndicatorConfig.java

@@ -1,38 +1,36 @@
-package com.persagy.apm.model;
+package com.persagy.apm.alarmservice.project.monitorindicatorconfig.model;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import com.persagy.apm.common.model.entity.AuditableEntity;
-
 import java.io.Serializable;
 import java.util.Date;
 
 /**
  * 项目监测指标配置(ProjectMonitorIndicatorConfig)实体类
- *
  * @author lixing
- * @version V1.0 2021-09-07 18:12:09
+ * @version V1.0 2021-09-08 22:46:56
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
 @ApiModel(description = "项目监测指标配置")
 public class ProjectMonitorIndicatorConfig extends AuditableEntity<ProjectMonitorIndicatorConfig> implements Serializable {
-    private static final long serialVersionUID = -20655826712418348L;
+    private static final long serialVersionUID = -84873878154784806L;
 
     @ApiModelProperty("监测对象id")
     private String objId;
-
+    
     @ApiModelProperty("监测指标id")
     private String monitorIndicatorId;
-
+    
     @ApiModelProperty("计算方式id")
     private String caculateMethodId;
-
+    
     @ApiModelProperty("项目id")
     private String projectId;
-
+    
 
     public static String PROP_OBJ_ID = "obj_id";
     public static String PROP_MONITOR_INDICATOR_ID = "monitor_indicator_id";

+ 6 - 9
src/main/java/com/persagy/apm/model/dto/AddProjectMonitorIndicatorConfigDTO.java

@@ -1,17 +1,14 @@
-package com.persagy.apm.model.dto;
+package com.persagy.apm.alarmservice.project.monitorindicatorconfig.model.dto;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import javax.validation.constraints.NotNull;
-
 import lombok.Data;
-
 import java.util.Date;
 
 /**
  * @author lixing
- * @version V1.0 2021-09-07 18:12:09
+ * @version V1.0 2021-09-08 22:46:56
  */
 @Data
 @ApiModel(value = "创建项目监测指标配置入参")
@@ -19,17 +16,17 @@ public class AddProjectMonitorIndicatorConfigDTO {
     @ApiModelProperty(value = "监测对象id", required = true)
     @NotNull(message = "监测对象id不能为空") // todo 更新校验规则
     private String objId;
-
+    
     @ApiModelProperty(value = "监测指标id", required = true)
     @NotNull(message = "监测指标id不能为空") // todo 更新校验规则
     private String monitorIndicatorId;
-
+    
     @ApiModelProperty(value = "计算方式id", required = true)
     @NotNull(message = "计算方式id不能为空") // todo 更新校验规则
     private String caculateMethodId;
-
+    
     @ApiModelProperty(value = "项目id", required = true)
     @NotNull(message = "项目id不能为空") // todo 更新校验规则
     private String projectId;
-
+    
 }

+ 0 - 0
src/main/java/com/persagy/apm/model/dto/DeleteProjectMonitorIndicatorConfigDTO.java


Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott