diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java new file mode 100644 index 0000000..21f5dc3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusDeviceMapper; +import com.casic.missiles.modular.system.model.BusDevice; +import com.casic.missiles.modular.system.service.IBusDeviceService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 设备表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusDeviceServiceImpl extends ServiceImpl implements IBusDeviceService { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java new file mode 100644 index 0000000..21f5dc3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusDeviceMapper; +import com.casic.missiles.modular.system.model.BusDevice; +import com.casic.missiles.modular.system.service.IBusDeviceService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 设备表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusDeviceServiceImpl extends ServiceImpl implements IBusDeviceService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java new file mode 100644 index 0000000..d4d9ce3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusWellInfoMapper; +import com.casic.missiles.modular.system.model.BusWellInfo; + +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 闸井信息表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusWellInfoServiceImpl extends ServiceImpl implements IBusWellInfoService { + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java new file mode 100644 index 0000000..21f5dc3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusDeviceMapper; +import com.casic.missiles.modular.system.model.BusDevice; +import com.casic.missiles.modular.system.service.IBusDeviceService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 设备表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusDeviceServiceImpl extends ServiceImpl implements IBusDeviceService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java new file mode 100644 index 0000000..d4d9ce3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusWellInfoMapper; +import com.casic.missiles.modular.system.model.BusWellInfo; + +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 闸井信息表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusWellInfoServiceImpl extends ServiceImpl implements IBusWellInfoService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java index 2e0cdfe..3d01bf9 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java @@ -1,12 +1,18 @@ package com.casic.missiles.modular.system.service.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.dao.NoiseMapper; +import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.service.INoiseService; - +import com.casic.missiles.modular.system.util.DateUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import java.util.Date; + /** *

* 噪声记录仪上传数据 服务实现类 @@ -15,11 +21,39 @@ * @author stylefeng123 * @since 2024-02-28 */ + @Service public class NoiseServiceImpl extends ServiceImpl implements INoiseService { + private static final Logger logger = LoggerFactory.getLogger(NoiseServiceImpl.class); + private static final String[] mType = {"Data", "Event", "SetResponse", "GetResponse", "StartupRequest"}; @Override public void processData(String recordValue) { - + JSONObject json = JSONObject.parseObject(recordValue); + String devCode = json.get("devCode").toString(); + logger.info("--------RECEIVE:设备编号:" + devCode + ",上传数据:" + json.toString() + "-------"); + JSONObject jsonObject = (JSONObject) json.get("mBody"); + if (mType[0].equals(json.get("mType")) || mType[3].equals(json.get("mType"))) {//存储上报数据 + String cell = null!=jsonObject.get("cell")?jsonObject.get("cell").toString():""; + String pci = null!=jsonObject.get("pci")?jsonObject.get("pci").toString():""; + String rsrp = null!=jsonObject.get("rsrp")?jsonObject.get("rsrp").toString():""; + String snr = null!= jsonObject.get("snr")?jsonObject.get("snr").toString():""; + JSONArray jsonArray = (JSONArray) jsonObject.get("datas"); + for (int i = 0; i < jsonArray.size(); i++) { + try { + String val = ((JSONObject) jsonArray.get(i)).get("noiseVal").toString(); + String freq = ((JSONObject) jsonArray.get(i)).get("noiseFreq").toString(); + String upTime = ((JSONObject) jsonArray.get(i)).get("uptime").toString(); + String noiseSampleValues = ((JSONObject) jsonArray.get(i)).get("noiseSampleValues").toString(); + val = String.format("%.2f", Double.valueOf(val)); + freq = String.format("%.2f", Double.valueOf(freq)); + this.baseMapper.insert(new Noise(devCode, val, noiseSampleValues, DateUtils.sdf4.parse(DateUtils.DateFormat(upTime)), + new Date(), cell, pci, rsrp, snr)); + } catch (Exception e) { + e.printStackTrace(); + logger.error("--------ERROR:设备编号:" + devCode + ",存储数据:" + jsonArray.get(i).toString() + "失败-------"); + } + } + } } } diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java new file mode 100644 index 0000000..21f5dc3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusDeviceMapper; +import com.casic.missiles.modular.system.model.BusDevice; +import com.casic.missiles.modular.system.service.IBusDeviceService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 设备表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusDeviceServiceImpl extends ServiceImpl implements IBusDeviceService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java new file mode 100644 index 0000000..d4d9ce3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusWellInfoMapper; +import com.casic.missiles.modular.system.model.BusWellInfo; + +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 闸井信息表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusWellInfoServiceImpl extends ServiceImpl implements IBusWellInfoService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java index 2e0cdfe..3d01bf9 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java @@ -1,12 +1,18 @@ package com.casic.missiles.modular.system.service.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.dao.NoiseMapper; +import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.service.INoiseService; - +import com.casic.missiles.modular.system.util.DateUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import java.util.Date; + /** *

* 噪声记录仪上传数据 服务实现类 @@ -15,11 +21,39 @@ * @author stylefeng123 * @since 2024-02-28 */ + @Service public class NoiseServiceImpl extends ServiceImpl implements INoiseService { + private static final Logger logger = LoggerFactory.getLogger(NoiseServiceImpl.class); + private static final String[] mType = {"Data", "Event", "SetResponse", "GetResponse", "StartupRequest"}; @Override public void processData(String recordValue) { - + JSONObject json = JSONObject.parseObject(recordValue); + String devCode = json.get("devCode").toString(); + logger.info("--------RECEIVE:设备编号:" + devCode + ",上传数据:" + json.toString() + "-------"); + JSONObject jsonObject = (JSONObject) json.get("mBody"); + if (mType[0].equals(json.get("mType")) || mType[3].equals(json.get("mType"))) {//存储上报数据 + String cell = null!=jsonObject.get("cell")?jsonObject.get("cell").toString():""; + String pci = null!=jsonObject.get("pci")?jsonObject.get("pci").toString():""; + String rsrp = null!=jsonObject.get("rsrp")?jsonObject.get("rsrp").toString():""; + String snr = null!= jsonObject.get("snr")?jsonObject.get("snr").toString():""; + JSONArray jsonArray = (JSONArray) jsonObject.get("datas"); + for (int i = 0; i < jsonArray.size(); i++) { + try { + String val = ((JSONObject) jsonArray.get(i)).get("noiseVal").toString(); + String freq = ((JSONObject) jsonArray.get(i)).get("noiseFreq").toString(); + String upTime = ((JSONObject) jsonArray.get(i)).get("uptime").toString(); + String noiseSampleValues = ((JSONObject) jsonArray.get(i)).get("noiseSampleValues").toString(); + val = String.format("%.2f", Double.valueOf(val)); + freq = String.format("%.2f", Double.valueOf(freq)); + this.baseMapper.insert(new Noise(devCode, val, noiseSampleValues, DateUtils.sdf4.parse(DateUtils.DateFormat(upTime)), + new Date(), cell, pci, rsrp, snr)); + } catch (Exception e) { + e.printStackTrace(); + logger.error("--------ERROR:设备编号:" + devCode + ",存储数据:" + jsonArray.get(i).toString() + "失败-------"); + } + } + } } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java new file mode 100644 index 0000000..279e916 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java @@ -0,0 +1,34 @@ +package com.casic.missiles.modular.system.util; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * Created by Administrator on 2015/2/25. + */ +public class DateUtils { + public static SimpleDateFormat sdf_day = new SimpleDateFormat("yyyy-MM-dd"); + public static SimpleDateFormat sdf_day_time = new SimpleDateFormat("yyyyMMddhhmmss"); + public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static final SimpleDateFormat sdf5 = new SimpleDateFormat("HH:mm:ss"); + public static final SimpleDateFormat sdf6 = new SimpleDateFormat("yyyyMMdd"); + + public static String DateFormat(String dataString) { + + String strymd = dataString.substring(0, 8); + String str1 = strymd.substring(0, 4) + "-" + strymd.substring(4, 6) + "-" + strymd.substring(6, 8) + " "; + String strhms = dataString.substring(8); + String str2 =strhms.substring(0,2)+":"+strhms.substring(2,4)+":"+strhms.substring(4,6); + dataString =str1+str2; + return dataString; + } + + public static Date getSevenBeforeDate() throws ParseException { + Calendar calendar=Calendar.getInstance(); + calendar.add(calendar.DATE,-7); + Date sevenBeforDate=calendar.getTime(); + return sevenBeforDate; + } +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java new file mode 100644 index 0000000..21f5dc3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusDeviceMapper; +import com.casic.missiles.modular.system.model.BusDevice; +import com.casic.missiles.modular.system.service.IBusDeviceService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 设备表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusDeviceServiceImpl extends ServiceImpl implements IBusDeviceService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java new file mode 100644 index 0000000..d4d9ce3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusWellInfoMapper; +import com.casic.missiles.modular.system.model.BusWellInfo; + +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 闸井信息表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusWellInfoServiceImpl extends ServiceImpl implements IBusWellInfoService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java index 2e0cdfe..3d01bf9 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java @@ -1,12 +1,18 @@ package com.casic.missiles.modular.system.service.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.dao.NoiseMapper; +import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.service.INoiseService; - +import com.casic.missiles.modular.system.util.DateUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import java.util.Date; + /** *

* 噪声记录仪上传数据 服务实现类 @@ -15,11 +21,39 @@ * @author stylefeng123 * @since 2024-02-28 */ + @Service public class NoiseServiceImpl extends ServiceImpl implements INoiseService { + private static final Logger logger = LoggerFactory.getLogger(NoiseServiceImpl.class); + private static final String[] mType = {"Data", "Event", "SetResponse", "GetResponse", "StartupRequest"}; @Override public void processData(String recordValue) { - + JSONObject json = JSONObject.parseObject(recordValue); + String devCode = json.get("devCode").toString(); + logger.info("--------RECEIVE:设备编号:" + devCode + ",上传数据:" + json.toString() + "-------"); + JSONObject jsonObject = (JSONObject) json.get("mBody"); + if (mType[0].equals(json.get("mType")) || mType[3].equals(json.get("mType"))) {//存储上报数据 + String cell = null!=jsonObject.get("cell")?jsonObject.get("cell").toString():""; + String pci = null!=jsonObject.get("pci")?jsonObject.get("pci").toString():""; + String rsrp = null!=jsonObject.get("rsrp")?jsonObject.get("rsrp").toString():""; + String snr = null!= jsonObject.get("snr")?jsonObject.get("snr").toString():""; + JSONArray jsonArray = (JSONArray) jsonObject.get("datas"); + for (int i = 0; i < jsonArray.size(); i++) { + try { + String val = ((JSONObject) jsonArray.get(i)).get("noiseVal").toString(); + String freq = ((JSONObject) jsonArray.get(i)).get("noiseFreq").toString(); + String upTime = ((JSONObject) jsonArray.get(i)).get("uptime").toString(); + String noiseSampleValues = ((JSONObject) jsonArray.get(i)).get("noiseSampleValues").toString(); + val = String.format("%.2f", Double.valueOf(val)); + freq = String.format("%.2f", Double.valueOf(freq)); + this.baseMapper.insert(new Noise(devCode, val, noiseSampleValues, DateUtils.sdf4.parse(DateUtils.DateFormat(upTime)), + new Date(), cell, pci, rsrp, snr)); + } catch (Exception e) { + e.printStackTrace(); + logger.error("--------ERROR:设备编号:" + devCode + ",存储数据:" + jsonArray.get(i).toString() + "失败-------"); + } + } + } } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java new file mode 100644 index 0000000..279e916 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java @@ -0,0 +1,34 @@ +package com.casic.missiles.modular.system.util; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * Created by Administrator on 2015/2/25. + */ +public class DateUtils { + public static SimpleDateFormat sdf_day = new SimpleDateFormat("yyyy-MM-dd"); + public static SimpleDateFormat sdf_day_time = new SimpleDateFormat("yyyyMMddhhmmss"); + public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static final SimpleDateFormat sdf5 = new SimpleDateFormat("HH:mm:ss"); + public static final SimpleDateFormat sdf6 = new SimpleDateFormat("yyyyMMdd"); + + public static String DateFormat(String dataString) { + + String strymd = dataString.substring(0, 8); + String str1 = strymd.substring(0, 4) + "-" + strymd.substring(4, 6) + "-" + strymd.substring(6, 8) + " "; + String strhms = dataString.substring(8); + String str2 =strhms.substring(0,2)+":"+strhms.substring(2,4)+":"+strhms.substring(4,6); + dataString =str1+str2; + return dataString; + } + + public static Date getSevenBeforeDate() throws ParseException { + Calendar calendar=Calendar.getInstance(); + calendar.add(calendar.DATE,-7); + Date sevenBeforDate=calendar.getTime(); + return sevenBeforDate; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java new file mode 100644 index 0000000..cefc922 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.util; + + +import com.baomidou.mybatisplus.generator.FastAutoGenerator; +import com.baomidou.mybatisplus.generator.config.rules.DateType; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/code") +public class GeneratorCodeUtil { + + + @GetMapping("generator") + public static void main(String [] args) { + // 获取用户程序当前路径 + String projectPath = System.getProperty("user.dir"); + // 设置输出到的目录 + String out = projectPath + "/src/main/java"; +// 设置mapper.xml生成路径 + + + FastAutoGenerator.create("jdbc:mysql://111.198.10.15:11336/casic_correlator?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=UTC&&allowMultiQueries=true", "root", "Casic203") + .globalConfig(builder -> { + builder.author("zt") // 设置作者 + .enableSwagger() // 开启 swagger 模式 + .fileOverride() // 覆盖已生成文件 + .outputDir(projectPath) + .dateType(DateType.TIME_PACK); // 指定输出目录 + }) + .packageConfig(builder -> { + builder.parent("com.casic.missiles.modular.system") + .entity("model") + .service("service") + .serviceImpl("service.impl") + .mapper("dao") + .controller("controller"); // 设置mapperXml生成路径 + }) + .strategyConfig(builder -> { + builder + .addInclude("alarm_records","alarm_rule"); // 设置需要生成的表名 +// .addTablePrefix("blog_", "c_"); // 设置过滤表前缀 + }) +// .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板 + .execute(); + } + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java new file mode 100644 index 0000000..21f5dc3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusDeviceMapper; +import com.casic.missiles.modular.system.model.BusDevice; +import com.casic.missiles.modular.system.service.IBusDeviceService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 设备表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusDeviceServiceImpl extends ServiceImpl implements IBusDeviceService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java new file mode 100644 index 0000000..d4d9ce3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusWellInfoMapper; +import com.casic.missiles.modular.system.model.BusWellInfo; + +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 闸井信息表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusWellInfoServiceImpl extends ServiceImpl implements IBusWellInfoService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java index 2e0cdfe..3d01bf9 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java @@ -1,12 +1,18 @@ package com.casic.missiles.modular.system.service.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.dao.NoiseMapper; +import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.service.INoiseService; - +import com.casic.missiles.modular.system.util.DateUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import java.util.Date; + /** *

* 噪声记录仪上传数据 服务实现类 @@ -15,11 +21,39 @@ * @author stylefeng123 * @since 2024-02-28 */ + @Service public class NoiseServiceImpl extends ServiceImpl implements INoiseService { + private static final Logger logger = LoggerFactory.getLogger(NoiseServiceImpl.class); + private static final String[] mType = {"Data", "Event", "SetResponse", "GetResponse", "StartupRequest"}; @Override public void processData(String recordValue) { - + JSONObject json = JSONObject.parseObject(recordValue); + String devCode = json.get("devCode").toString(); + logger.info("--------RECEIVE:设备编号:" + devCode + ",上传数据:" + json.toString() + "-------"); + JSONObject jsonObject = (JSONObject) json.get("mBody"); + if (mType[0].equals(json.get("mType")) || mType[3].equals(json.get("mType"))) {//存储上报数据 + String cell = null!=jsonObject.get("cell")?jsonObject.get("cell").toString():""; + String pci = null!=jsonObject.get("pci")?jsonObject.get("pci").toString():""; + String rsrp = null!=jsonObject.get("rsrp")?jsonObject.get("rsrp").toString():""; + String snr = null!= jsonObject.get("snr")?jsonObject.get("snr").toString():""; + JSONArray jsonArray = (JSONArray) jsonObject.get("datas"); + for (int i = 0; i < jsonArray.size(); i++) { + try { + String val = ((JSONObject) jsonArray.get(i)).get("noiseVal").toString(); + String freq = ((JSONObject) jsonArray.get(i)).get("noiseFreq").toString(); + String upTime = ((JSONObject) jsonArray.get(i)).get("uptime").toString(); + String noiseSampleValues = ((JSONObject) jsonArray.get(i)).get("noiseSampleValues").toString(); + val = String.format("%.2f", Double.valueOf(val)); + freq = String.format("%.2f", Double.valueOf(freq)); + this.baseMapper.insert(new Noise(devCode, val, noiseSampleValues, DateUtils.sdf4.parse(DateUtils.DateFormat(upTime)), + new Date(), cell, pci, rsrp, snr)); + } catch (Exception e) { + e.printStackTrace(); + logger.error("--------ERROR:设备编号:" + devCode + ",存储数据:" + jsonArray.get(i).toString() + "失败-------"); + } + } + } } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java new file mode 100644 index 0000000..279e916 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java @@ -0,0 +1,34 @@ +package com.casic.missiles.modular.system.util; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * Created by Administrator on 2015/2/25. + */ +public class DateUtils { + public static SimpleDateFormat sdf_day = new SimpleDateFormat("yyyy-MM-dd"); + public static SimpleDateFormat sdf_day_time = new SimpleDateFormat("yyyyMMddhhmmss"); + public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static final SimpleDateFormat sdf5 = new SimpleDateFormat("HH:mm:ss"); + public static final SimpleDateFormat sdf6 = new SimpleDateFormat("yyyyMMdd"); + + public static String DateFormat(String dataString) { + + String strymd = dataString.substring(0, 8); + String str1 = strymd.substring(0, 4) + "-" + strymd.substring(4, 6) + "-" + strymd.substring(6, 8) + " "; + String strhms = dataString.substring(8); + String str2 =strhms.substring(0,2)+":"+strhms.substring(2,4)+":"+strhms.substring(4,6); + dataString =str1+str2; + return dataString; + } + + public static Date getSevenBeforeDate() throws ParseException { + Calendar calendar=Calendar.getInstance(); + calendar.add(calendar.DATE,-7); + Date sevenBeforDate=calendar.getTime(); + return sevenBeforDate; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java new file mode 100644 index 0000000..cefc922 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.util; + + +import com.baomidou.mybatisplus.generator.FastAutoGenerator; +import com.baomidou.mybatisplus.generator.config.rules.DateType; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/code") +public class GeneratorCodeUtil { + + + @GetMapping("generator") + public static void main(String [] args) { + // 获取用户程序当前路径 + String projectPath = System.getProperty("user.dir"); + // 设置输出到的目录 + String out = projectPath + "/src/main/java"; +// 设置mapper.xml生成路径 + + + FastAutoGenerator.create("jdbc:mysql://111.198.10.15:11336/casic_correlator?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=UTC&&allowMultiQueries=true", "root", "Casic203") + .globalConfig(builder -> { + builder.author("zt") // 设置作者 + .enableSwagger() // 开启 swagger 模式 + .fileOverride() // 覆盖已生成文件 + .outputDir(projectPath) + .dateType(DateType.TIME_PACK); // 指定输出目录 + }) + .packageConfig(builder -> { + builder.parent("com.casic.missiles.modular.system") + .entity("model") + .service("service") + .serviceImpl("service.impl") + .mapper("dao") + .controller("controller"); // 设置mapperXml生成路径 + }) + .strategyConfig(builder -> { + builder + .addInclude("alarm_records","alarm_rule"); // 设置需要生成的表名 +// .addTablePrefix("blog_", "c_"); // 设置过滤表前缀 + }) +// .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板 + .execute(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java new file mode 100644 index 0000000..1e8c12a --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java @@ -0,0 +1,39 @@ +package com.casic.missiles.modular.system.util; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.ReturnDTO; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:56 + */ +public class ReturnUtil { + public ReturnUtil() { + } + + public static ReturnDTO success() { + return new ReturnDTO(ResponseData.DEFAULT_SUCCESS_CODE, ResponseData.DEFAULT_SUCCESS_MESSAGE); + } + + public static ReturnDTO success(Object data) { + return new ReturnDTO(ResponseData.DEFAULT_SUCCESS_CODE, ResponseData.DEFAULT_SUCCESS_MESSAGE, data); + } + + public static ReturnDTO success(Integer code, String message) { + return new ReturnDTO(code, message); + } + + public static ReturnDTO failed() { + return new ReturnDTO(ResponseData.DEFAULT_ERROR_CODE, ResponseData.DEFAULT_ERROR_MESSAGE); + } + + public static ReturnDTO failed(String message) { + return new ReturnDTO(ResponseData.DEFAULT_ERROR_CODE, message); + } + + public static ReturnDTO failed(Integer code, String message) { + return new ReturnDTO(code, message); + } + +} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java new file mode 100644 index 0000000..21f5dc3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusDeviceMapper; +import com.casic.missiles.modular.system.model.BusDevice; +import com.casic.missiles.modular.system.service.IBusDeviceService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 设备表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusDeviceServiceImpl extends ServiceImpl implements IBusDeviceService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java new file mode 100644 index 0000000..d4d9ce3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusWellInfoMapper; +import com.casic.missiles.modular.system.model.BusWellInfo; + +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 闸井信息表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusWellInfoServiceImpl extends ServiceImpl implements IBusWellInfoService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java index 2e0cdfe..3d01bf9 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java @@ -1,12 +1,18 @@ package com.casic.missiles.modular.system.service.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.dao.NoiseMapper; +import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.service.INoiseService; - +import com.casic.missiles.modular.system.util.DateUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import java.util.Date; + /** *

* 噪声记录仪上传数据 服务实现类 @@ -15,11 +21,39 @@ * @author stylefeng123 * @since 2024-02-28 */ + @Service public class NoiseServiceImpl extends ServiceImpl implements INoiseService { + private static final Logger logger = LoggerFactory.getLogger(NoiseServiceImpl.class); + private static final String[] mType = {"Data", "Event", "SetResponse", "GetResponse", "StartupRequest"}; @Override public void processData(String recordValue) { - + JSONObject json = JSONObject.parseObject(recordValue); + String devCode = json.get("devCode").toString(); + logger.info("--------RECEIVE:设备编号:" + devCode + ",上传数据:" + json.toString() + "-------"); + JSONObject jsonObject = (JSONObject) json.get("mBody"); + if (mType[0].equals(json.get("mType")) || mType[3].equals(json.get("mType"))) {//存储上报数据 + String cell = null!=jsonObject.get("cell")?jsonObject.get("cell").toString():""; + String pci = null!=jsonObject.get("pci")?jsonObject.get("pci").toString():""; + String rsrp = null!=jsonObject.get("rsrp")?jsonObject.get("rsrp").toString():""; + String snr = null!= jsonObject.get("snr")?jsonObject.get("snr").toString():""; + JSONArray jsonArray = (JSONArray) jsonObject.get("datas"); + for (int i = 0; i < jsonArray.size(); i++) { + try { + String val = ((JSONObject) jsonArray.get(i)).get("noiseVal").toString(); + String freq = ((JSONObject) jsonArray.get(i)).get("noiseFreq").toString(); + String upTime = ((JSONObject) jsonArray.get(i)).get("uptime").toString(); + String noiseSampleValues = ((JSONObject) jsonArray.get(i)).get("noiseSampleValues").toString(); + val = String.format("%.2f", Double.valueOf(val)); + freq = String.format("%.2f", Double.valueOf(freq)); + this.baseMapper.insert(new Noise(devCode, val, noiseSampleValues, DateUtils.sdf4.parse(DateUtils.DateFormat(upTime)), + new Date(), cell, pci, rsrp, snr)); + } catch (Exception e) { + e.printStackTrace(); + logger.error("--------ERROR:设备编号:" + devCode + ",存储数据:" + jsonArray.get(i).toString() + "失败-------"); + } + } + } } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java new file mode 100644 index 0000000..279e916 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java @@ -0,0 +1,34 @@ +package com.casic.missiles.modular.system.util; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * Created by Administrator on 2015/2/25. + */ +public class DateUtils { + public static SimpleDateFormat sdf_day = new SimpleDateFormat("yyyy-MM-dd"); + public static SimpleDateFormat sdf_day_time = new SimpleDateFormat("yyyyMMddhhmmss"); + public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static final SimpleDateFormat sdf5 = new SimpleDateFormat("HH:mm:ss"); + public static final SimpleDateFormat sdf6 = new SimpleDateFormat("yyyyMMdd"); + + public static String DateFormat(String dataString) { + + String strymd = dataString.substring(0, 8); + String str1 = strymd.substring(0, 4) + "-" + strymd.substring(4, 6) + "-" + strymd.substring(6, 8) + " "; + String strhms = dataString.substring(8); + String str2 =strhms.substring(0,2)+":"+strhms.substring(2,4)+":"+strhms.substring(4,6); + dataString =str1+str2; + return dataString; + } + + public static Date getSevenBeforeDate() throws ParseException { + Calendar calendar=Calendar.getInstance(); + calendar.add(calendar.DATE,-7); + Date sevenBeforDate=calendar.getTime(); + return sevenBeforDate; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java new file mode 100644 index 0000000..cefc922 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.util; + + +import com.baomidou.mybatisplus.generator.FastAutoGenerator; +import com.baomidou.mybatisplus.generator.config.rules.DateType; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/code") +public class GeneratorCodeUtil { + + + @GetMapping("generator") + public static void main(String [] args) { + // 获取用户程序当前路径 + String projectPath = System.getProperty("user.dir"); + // 设置输出到的目录 + String out = projectPath + "/src/main/java"; +// 设置mapper.xml生成路径 + + + FastAutoGenerator.create("jdbc:mysql://111.198.10.15:11336/casic_correlator?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=UTC&&allowMultiQueries=true", "root", "Casic203") + .globalConfig(builder -> { + builder.author("zt") // 设置作者 + .enableSwagger() // 开启 swagger 模式 + .fileOverride() // 覆盖已生成文件 + .outputDir(projectPath) + .dateType(DateType.TIME_PACK); // 指定输出目录 + }) + .packageConfig(builder -> { + builder.parent("com.casic.missiles.modular.system") + .entity("model") + .service("service") + .serviceImpl("service.impl") + .mapper("dao") + .controller("controller"); // 设置mapperXml生成路径 + }) + .strategyConfig(builder -> { + builder + .addInclude("alarm_records","alarm_rule"); // 设置需要生成的表名 +// .addTablePrefix("blog_", "c_"); // 设置过滤表前缀 + }) +// .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板 + .execute(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java new file mode 100644 index 0000000..1e8c12a --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java @@ -0,0 +1,39 @@ +package com.casic.missiles.modular.system.util; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.ReturnDTO; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:56 + */ +public class ReturnUtil { + public ReturnUtil() { + } + + public static ReturnDTO success() { + return new ReturnDTO(ResponseData.DEFAULT_SUCCESS_CODE, ResponseData.DEFAULT_SUCCESS_MESSAGE); + } + + public static ReturnDTO success(Object data) { + return new ReturnDTO(ResponseData.DEFAULT_SUCCESS_CODE, ResponseData.DEFAULT_SUCCESS_MESSAGE, data); + } + + public static ReturnDTO success(Integer code, String message) { + return new ReturnDTO(code, message); + } + + public static ReturnDTO failed() { + return new ReturnDTO(ResponseData.DEFAULT_ERROR_CODE, ResponseData.DEFAULT_ERROR_MESSAGE); + } + + public static ReturnDTO failed(String message) { + return new ReturnDTO(ResponseData.DEFAULT_ERROR_CODE, message); + } + + public static ReturnDTO failed(Integer code, String message) { + return new ReturnDTO(code, message); + } + +} diff --git a/casic-web/pom.xml b/casic-web/pom.xml index 18de6e0..1a75041 100644 --- a/casic-web/pom.xml +++ b/casic-web/pom.xml @@ -61,6 +61,16 @@ com.casic casic-core ${core.version} + + + + + + + + + + com.casic @@ -71,10 +81,19 @@ io.springfox springfox-swagger-ui + + io.swagger + swagger-models + com.casic + casic-knife4j-boot-starter + ${extension.version} + + + com.casic casic-admin-support ${admin.version} diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java new file mode 100644 index 0000000..21f5dc3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusDeviceMapper; +import com.casic.missiles.modular.system.model.BusDevice; +import com.casic.missiles.modular.system.service.IBusDeviceService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 设备表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusDeviceServiceImpl extends ServiceImpl implements IBusDeviceService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java new file mode 100644 index 0000000..d4d9ce3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusWellInfoMapper; +import com.casic.missiles.modular.system.model.BusWellInfo; + +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 闸井信息表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusWellInfoServiceImpl extends ServiceImpl implements IBusWellInfoService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java index 2e0cdfe..3d01bf9 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java @@ -1,12 +1,18 @@ package com.casic.missiles.modular.system.service.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.dao.NoiseMapper; +import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.service.INoiseService; - +import com.casic.missiles.modular.system.util.DateUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import java.util.Date; + /** *

* 噪声记录仪上传数据 服务实现类 @@ -15,11 +21,39 @@ * @author stylefeng123 * @since 2024-02-28 */ + @Service public class NoiseServiceImpl extends ServiceImpl implements INoiseService { + private static final Logger logger = LoggerFactory.getLogger(NoiseServiceImpl.class); + private static final String[] mType = {"Data", "Event", "SetResponse", "GetResponse", "StartupRequest"}; @Override public void processData(String recordValue) { - + JSONObject json = JSONObject.parseObject(recordValue); + String devCode = json.get("devCode").toString(); + logger.info("--------RECEIVE:设备编号:" + devCode + ",上传数据:" + json.toString() + "-------"); + JSONObject jsonObject = (JSONObject) json.get("mBody"); + if (mType[0].equals(json.get("mType")) || mType[3].equals(json.get("mType"))) {//存储上报数据 + String cell = null!=jsonObject.get("cell")?jsonObject.get("cell").toString():""; + String pci = null!=jsonObject.get("pci")?jsonObject.get("pci").toString():""; + String rsrp = null!=jsonObject.get("rsrp")?jsonObject.get("rsrp").toString():""; + String snr = null!= jsonObject.get("snr")?jsonObject.get("snr").toString():""; + JSONArray jsonArray = (JSONArray) jsonObject.get("datas"); + for (int i = 0; i < jsonArray.size(); i++) { + try { + String val = ((JSONObject) jsonArray.get(i)).get("noiseVal").toString(); + String freq = ((JSONObject) jsonArray.get(i)).get("noiseFreq").toString(); + String upTime = ((JSONObject) jsonArray.get(i)).get("uptime").toString(); + String noiseSampleValues = ((JSONObject) jsonArray.get(i)).get("noiseSampleValues").toString(); + val = String.format("%.2f", Double.valueOf(val)); + freq = String.format("%.2f", Double.valueOf(freq)); + this.baseMapper.insert(new Noise(devCode, val, noiseSampleValues, DateUtils.sdf4.parse(DateUtils.DateFormat(upTime)), + new Date(), cell, pci, rsrp, snr)); + } catch (Exception e) { + e.printStackTrace(); + logger.error("--------ERROR:设备编号:" + devCode + ",存储数据:" + jsonArray.get(i).toString() + "失败-------"); + } + } + } } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java new file mode 100644 index 0000000..279e916 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java @@ -0,0 +1,34 @@ +package com.casic.missiles.modular.system.util; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * Created by Administrator on 2015/2/25. + */ +public class DateUtils { + public static SimpleDateFormat sdf_day = new SimpleDateFormat("yyyy-MM-dd"); + public static SimpleDateFormat sdf_day_time = new SimpleDateFormat("yyyyMMddhhmmss"); + public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static final SimpleDateFormat sdf5 = new SimpleDateFormat("HH:mm:ss"); + public static final SimpleDateFormat sdf6 = new SimpleDateFormat("yyyyMMdd"); + + public static String DateFormat(String dataString) { + + String strymd = dataString.substring(0, 8); + String str1 = strymd.substring(0, 4) + "-" + strymd.substring(4, 6) + "-" + strymd.substring(6, 8) + " "; + String strhms = dataString.substring(8); + String str2 =strhms.substring(0,2)+":"+strhms.substring(2,4)+":"+strhms.substring(4,6); + dataString =str1+str2; + return dataString; + } + + public static Date getSevenBeforeDate() throws ParseException { + Calendar calendar=Calendar.getInstance(); + calendar.add(calendar.DATE,-7); + Date sevenBeforDate=calendar.getTime(); + return sevenBeforDate; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java new file mode 100644 index 0000000..cefc922 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.util; + + +import com.baomidou.mybatisplus.generator.FastAutoGenerator; +import com.baomidou.mybatisplus.generator.config.rules.DateType; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/code") +public class GeneratorCodeUtil { + + + @GetMapping("generator") + public static void main(String [] args) { + // 获取用户程序当前路径 + String projectPath = System.getProperty("user.dir"); + // 设置输出到的目录 + String out = projectPath + "/src/main/java"; +// 设置mapper.xml生成路径 + + + FastAutoGenerator.create("jdbc:mysql://111.198.10.15:11336/casic_correlator?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=UTC&&allowMultiQueries=true", "root", "Casic203") + .globalConfig(builder -> { + builder.author("zt") // 设置作者 + .enableSwagger() // 开启 swagger 模式 + .fileOverride() // 覆盖已生成文件 + .outputDir(projectPath) + .dateType(DateType.TIME_PACK); // 指定输出目录 + }) + .packageConfig(builder -> { + builder.parent("com.casic.missiles.modular.system") + .entity("model") + .service("service") + .serviceImpl("service.impl") + .mapper("dao") + .controller("controller"); // 设置mapperXml生成路径 + }) + .strategyConfig(builder -> { + builder + .addInclude("alarm_records","alarm_rule"); // 设置需要生成的表名 +// .addTablePrefix("blog_", "c_"); // 设置过滤表前缀 + }) +// .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板 + .execute(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java new file mode 100644 index 0000000..1e8c12a --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java @@ -0,0 +1,39 @@ +package com.casic.missiles.modular.system.util; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.ReturnDTO; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:56 + */ +public class ReturnUtil { + public ReturnUtil() { + } + + public static ReturnDTO success() { + return new ReturnDTO(ResponseData.DEFAULT_SUCCESS_CODE, ResponseData.DEFAULT_SUCCESS_MESSAGE); + } + + public static ReturnDTO success(Object data) { + return new ReturnDTO(ResponseData.DEFAULT_SUCCESS_CODE, ResponseData.DEFAULT_SUCCESS_MESSAGE, data); + } + + public static ReturnDTO success(Integer code, String message) { + return new ReturnDTO(code, message); + } + + public static ReturnDTO failed() { + return new ReturnDTO(ResponseData.DEFAULT_ERROR_CODE, ResponseData.DEFAULT_ERROR_MESSAGE); + } + + public static ReturnDTO failed(String message) { + return new ReturnDTO(ResponseData.DEFAULT_ERROR_CODE, message); + } + + public static ReturnDTO failed(Integer code, String message) { + return new ReturnDTO(code, message); + } + +} diff --git a/casic-web/pom.xml b/casic-web/pom.xml index 18de6e0..1a75041 100644 --- a/casic-web/pom.xml +++ b/casic-web/pom.xml @@ -61,6 +61,16 @@ com.casic casic-core ${core.version} + + + + + + + + + + com.casic @@ -71,10 +81,19 @@ io.springfox springfox-swagger-ui + + io.swagger + swagger-models + com.casic + casic-knife4j-boot-starter + ${extension.version} + + + com.casic casic-admin-support ${admin.version} diff --git a/casic-web/src/main/java/com/casic/missiles/config/WebMvcConfig.java b/casic-web/src/main/java/com/casic/missiles/config/WebMvcConfig.java new file mode 100644 index 0000000..4f4ec87 --- /dev/null +++ b/casic-web/src/main/java/com/casic/missiles/config/WebMvcConfig.java @@ -0,0 +1,143 @@ +package com.casic.missiles.config; + +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.serializer.SerializeConfig; +import com.alibaba.fastjson.serializer.SerializerFeature; +import com.alibaba.fastjson.serializer.ToStringSerializer; +import com.alibaba.fastjson.serializer.ValueFilter; +import com.alibaba.fastjson.support.config.FastJsonConfig; +import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; +import com.casic.missiles.config.properties.CasicProperties; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.boot.web.servlet.ServletComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.MediaType; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; +import org.springframework.web.servlet.LocaleResolver; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; +import org.springframework.web.servlet.i18n.CookieLocaleResolver; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.nio.charset.Charset; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.Locale; + + +@ServletComponentScan(basePackageClasses = {DefaultFastjsonConfig.class}) +@ConditionalOnClass(com.alibaba.fastjson.JSON.class) +@ConditionalOnMissingBean(FastJsonHttpMessageConverter.class) +@Configuration +class WebMvcConfig extends WebMvcConfigurationSupport { + @Value("${spring.messages.locale:SIMPLIFIED_CHINESE}") + private String locale; + + public WebMvcConfig() { + } + + @Autowired + private CasicProperties casicProperties; + + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + //Spring Boot自动配置自己不会自动把/swagger-ui.html这个路径映射到对应的目录META-INF/resources/下面 + registry.addResourceHandler("swagger-ui.html").addResourceLocations( + "classpath:/META-INF/resources/"); + registry.addResourceHandler("/webjars/**").addResourceLocations( + "classpath:/META-INF/resources/webjars/"); + registry.addResourceHandler("doc.html").addResourceLocations( + "classpath:/META-INF/resources/"); + registry.addResourceHandler("/favicon.ico").addResourceLocations( + "classpath:/META-INF/resources/"); + if (StrUtil.isNotEmpty(casicProperties.getFile().getUploadPath())) { + registry.addResourceHandler("/static/**").addResourceLocations("file:" + casicProperties.getFile().getUploadPath()); + } + super.addResourceHandlers(registry); + } + + @Override + public LocaleResolver localeResolver() { + CookieLocaleResolver slr = new CookieLocaleResolver(); + //设置默认区域,Locale.SIMPLIFIED_CHINESE + switch (locale) { + case "US": + slr.setDefaultLocale(Locale.US); + break; + default: + slr.setDefaultLocale(Locale.SIMPLIFIED_CHINESE); + } + //设置cookie有效期. + slr.setCookieMaxAge(3600); + return slr; + } + + @Override + public void configureMessageConverters(List> converters) { + Iterator> iterator = converters.iterator(); + //先把JackSon的消息转换器删除. 在SpringBoot2.X时代,必须要排除JackSon消息转换器。 + while (iterator.hasNext()) { + HttpMessageConverter converter = iterator.next(); + if (converter instanceof MappingJackson2HttpMessageConverter) { + iterator.remove(); + } + } + FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter(); + converter.setFastJsonConfig(fastjsonConfig()); + converter.setSupportedMediaTypes(getSupportedMediaType()); + converters.add(converter); + } + + /** + * fastjson的配置 + */ + public FastJsonConfig fastjsonConfig() { + FastJsonConfig fastJsonConfig = new FastJsonConfig(); + fastJsonConfig.setSerializerFeatures( + SerializerFeature.PrettyFormat, + SerializerFeature.WriteMapNullValue, + SerializerFeature.WriteEnumUsingToString + ); + //修改,设置全局时间为精确到天,页面列表显示不带时分秒 + fastJsonConfig.setDateFormat("yyyy-MM-dd HH:mm:ss"); +// fastJsonConfig.setDateFormat("yyyy-MM-dd"); + ValueFilter valueFilter = new ValueFilter() { + @Override + public Object process(Object o, String s, Object o1) { + if (null == o1) { + o1 = ""; + } + return o1; + } + }; + fastJsonConfig.setCharset(Charset.forName("utf-8")); + fastJsonConfig.setSerializeFilters(valueFilter); + + //解决Long转json精度丢失的问题 + SerializeConfig serializeConfig = SerializeConfig.globalInstance; + serializeConfig.put(BigInteger.class, ToStringSerializer.instance); + serializeConfig.put(Long.class, ToStringSerializer.instance); + serializeConfig.put(BigDecimal.class, ToStringSerializer.instance); +// serializeConfig.put(Long.TYPE, ToStringSerializer.instance); + fastJsonConfig.setSerializeConfig(serializeConfig); + return fastJsonConfig; + } + + /** + * 支持的mediaType类型 + */ + public List getSupportedMediaType() { + ArrayList mediaTypes = new ArrayList<>(); + mediaTypes.add(MediaType.APPLICATION_JSON_UTF8); + + return mediaTypes; + } + +} + diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java new file mode 100644 index 0000000..21f5dc3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusDeviceMapper; +import com.casic.missiles.modular.system.model.BusDevice; +import com.casic.missiles.modular.system.service.IBusDeviceService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 设备表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusDeviceServiceImpl extends ServiceImpl implements IBusDeviceService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java new file mode 100644 index 0000000..d4d9ce3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusWellInfoMapper; +import com.casic.missiles.modular.system.model.BusWellInfo; + +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 闸井信息表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusWellInfoServiceImpl extends ServiceImpl implements IBusWellInfoService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java index 2e0cdfe..3d01bf9 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java @@ -1,12 +1,18 @@ package com.casic.missiles.modular.system.service.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.dao.NoiseMapper; +import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.service.INoiseService; - +import com.casic.missiles.modular.system.util.DateUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import java.util.Date; + /** *

* 噪声记录仪上传数据 服务实现类 @@ -15,11 +21,39 @@ * @author stylefeng123 * @since 2024-02-28 */ + @Service public class NoiseServiceImpl extends ServiceImpl implements INoiseService { + private static final Logger logger = LoggerFactory.getLogger(NoiseServiceImpl.class); + private static final String[] mType = {"Data", "Event", "SetResponse", "GetResponse", "StartupRequest"}; @Override public void processData(String recordValue) { - + JSONObject json = JSONObject.parseObject(recordValue); + String devCode = json.get("devCode").toString(); + logger.info("--------RECEIVE:设备编号:" + devCode + ",上传数据:" + json.toString() + "-------"); + JSONObject jsonObject = (JSONObject) json.get("mBody"); + if (mType[0].equals(json.get("mType")) || mType[3].equals(json.get("mType"))) {//存储上报数据 + String cell = null!=jsonObject.get("cell")?jsonObject.get("cell").toString():""; + String pci = null!=jsonObject.get("pci")?jsonObject.get("pci").toString():""; + String rsrp = null!=jsonObject.get("rsrp")?jsonObject.get("rsrp").toString():""; + String snr = null!= jsonObject.get("snr")?jsonObject.get("snr").toString():""; + JSONArray jsonArray = (JSONArray) jsonObject.get("datas"); + for (int i = 0; i < jsonArray.size(); i++) { + try { + String val = ((JSONObject) jsonArray.get(i)).get("noiseVal").toString(); + String freq = ((JSONObject) jsonArray.get(i)).get("noiseFreq").toString(); + String upTime = ((JSONObject) jsonArray.get(i)).get("uptime").toString(); + String noiseSampleValues = ((JSONObject) jsonArray.get(i)).get("noiseSampleValues").toString(); + val = String.format("%.2f", Double.valueOf(val)); + freq = String.format("%.2f", Double.valueOf(freq)); + this.baseMapper.insert(new Noise(devCode, val, noiseSampleValues, DateUtils.sdf4.parse(DateUtils.DateFormat(upTime)), + new Date(), cell, pci, rsrp, snr)); + } catch (Exception e) { + e.printStackTrace(); + logger.error("--------ERROR:设备编号:" + devCode + ",存储数据:" + jsonArray.get(i).toString() + "失败-------"); + } + } + } } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java new file mode 100644 index 0000000..279e916 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java @@ -0,0 +1,34 @@ +package com.casic.missiles.modular.system.util; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * Created by Administrator on 2015/2/25. + */ +public class DateUtils { + public static SimpleDateFormat sdf_day = new SimpleDateFormat("yyyy-MM-dd"); + public static SimpleDateFormat sdf_day_time = new SimpleDateFormat("yyyyMMddhhmmss"); + public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static final SimpleDateFormat sdf5 = new SimpleDateFormat("HH:mm:ss"); + public static final SimpleDateFormat sdf6 = new SimpleDateFormat("yyyyMMdd"); + + public static String DateFormat(String dataString) { + + String strymd = dataString.substring(0, 8); + String str1 = strymd.substring(0, 4) + "-" + strymd.substring(4, 6) + "-" + strymd.substring(6, 8) + " "; + String strhms = dataString.substring(8); + String str2 =strhms.substring(0,2)+":"+strhms.substring(2,4)+":"+strhms.substring(4,6); + dataString =str1+str2; + return dataString; + } + + public static Date getSevenBeforeDate() throws ParseException { + Calendar calendar=Calendar.getInstance(); + calendar.add(calendar.DATE,-7); + Date sevenBeforDate=calendar.getTime(); + return sevenBeforDate; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java new file mode 100644 index 0000000..cefc922 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.util; + + +import com.baomidou.mybatisplus.generator.FastAutoGenerator; +import com.baomidou.mybatisplus.generator.config.rules.DateType; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/code") +public class GeneratorCodeUtil { + + + @GetMapping("generator") + public static void main(String [] args) { + // 获取用户程序当前路径 + String projectPath = System.getProperty("user.dir"); + // 设置输出到的目录 + String out = projectPath + "/src/main/java"; +// 设置mapper.xml生成路径 + + + FastAutoGenerator.create("jdbc:mysql://111.198.10.15:11336/casic_correlator?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=UTC&&allowMultiQueries=true", "root", "Casic203") + .globalConfig(builder -> { + builder.author("zt") // 设置作者 + .enableSwagger() // 开启 swagger 模式 + .fileOverride() // 覆盖已生成文件 + .outputDir(projectPath) + .dateType(DateType.TIME_PACK); // 指定输出目录 + }) + .packageConfig(builder -> { + builder.parent("com.casic.missiles.modular.system") + .entity("model") + .service("service") + .serviceImpl("service.impl") + .mapper("dao") + .controller("controller"); // 设置mapperXml生成路径 + }) + .strategyConfig(builder -> { + builder + .addInclude("alarm_records","alarm_rule"); // 设置需要生成的表名 +// .addTablePrefix("blog_", "c_"); // 设置过滤表前缀 + }) +// .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板 + .execute(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java new file mode 100644 index 0000000..1e8c12a --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java @@ -0,0 +1,39 @@ +package com.casic.missiles.modular.system.util; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.ReturnDTO; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:56 + */ +public class ReturnUtil { + public ReturnUtil() { + } + + public static ReturnDTO success() { + return new ReturnDTO(ResponseData.DEFAULT_SUCCESS_CODE, ResponseData.DEFAULT_SUCCESS_MESSAGE); + } + + public static ReturnDTO success(Object data) { + return new ReturnDTO(ResponseData.DEFAULT_SUCCESS_CODE, ResponseData.DEFAULT_SUCCESS_MESSAGE, data); + } + + public static ReturnDTO success(Integer code, String message) { + return new ReturnDTO(code, message); + } + + public static ReturnDTO failed() { + return new ReturnDTO(ResponseData.DEFAULT_ERROR_CODE, ResponseData.DEFAULT_ERROR_MESSAGE); + } + + public static ReturnDTO failed(String message) { + return new ReturnDTO(ResponseData.DEFAULT_ERROR_CODE, message); + } + + public static ReturnDTO failed(Integer code, String message) { + return new ReturnDTO(code, message); + } + +} diff --git a/casic-web/pom.xml b/casic-web/pom.xml index 18de6e0..1a75041 100644 --- a/casic-web/pom.xml +++ b/casic-web/pom.xml @@ -61,6 +61,16 @@ com.casic casic-core ${core.version} + + + + + + + + + + com.casic @@ -71,10 +81,19 @@ io.springfox springfox-swagger-ui + + io.swagger + swagger-models + com.casic + casic-knife4j-boot-starter + ${extension.version} + + + com.casic casic-admin-support ${admin.version} diff --git a/casic-web/src/main/java/com/casic/missiles/config/WebMvcConfig.java b/casic-web/src/main/java/com/casic/missiles/config/WebMvcConfig.java new file mode 100644 index 0000000..4f4ec87 --- /dev/null +++ b/casic-web/src/main/java/com/casic/missiles/config/WebMvcConfig.java @@ -0,0 +1,143 @@ +package com.casic.missiles.config; + +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.serializer.SerializeConfig; +import com.alibaba.fastjson.serializer.SerializerFeature; +import com.alibaba.fastjson.serializer.ToStringSerializer; +import com.alibaba.fastjson.serializer.ValueFilter; +import com.alibaba.fastjson.support.config.FastJsonConfig; +import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; +import com.casic.missiles.config.properties.CasicProperties; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.boot.web.servlet.ServletComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.MediaType; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; +import org.springframework.web.servlet.LocaleResolver; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; +import org.springframework.web.servlet.i18n.CookieLocaleResolver; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.nio.charset.Charset; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.Locale; + + +@ServletComponentScan(basePackageClasses = {DefaultFastjsonConfig.class}) +@ConditionalOnClass(com.alibaba.fastjson.JSON.class) +@ConditionalOnMissingBean(FastJsonHttpMessageConverter.class) +@Configuration +class WebMvcConfig extends WebMvcConfigurationSupport { + @Value("${spring.messages.locale:SIMPLIFIED_CHINESE}") + private String locale; + + public WebMvcConfig() { + } + + @Autowired + private CasicProperties casicProperties; + + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + //Spring Boot自动配置自己不会自动把/swagger-ui.html这个路径映射到对应的目录META-INF/resources/下面 + registry.addResourceHandler("swagger-ui.html").addResourceLocations( + "classpath:/META-INF/resources/"); + registry.addResourceHandler("/webjars/**").addResourceLocations( + "classpath:/META-INF/resources/webjars/"); + registry.addResourceHandler("doc.html").addResourceLocations( + "classpath:/META-INF/resources/"); + registry.addResourceHandler("/favicon.ico").addResourceLocations( + "classpath:/META-INF/resources/"); + if (StrUtil.isNotEmpty(casicProperties.getFile().getUploadPath())) { + registry.addResourceHandler("/static/**").addResourceLocations("file:" + casicProperties.getFile().getUploadPath()); + } + super.addResourceHandlers(registry); + } + + @Override + public LocaleResolver localeResolver() { + CookieLocaleResolver slr = new CookieLocaleResolver(); + //设置默认区域,Locale.SIMPLIFIED_CHINESE + switch (locale) { + case "US": + slr.setDefaultLocale(Locale.US); + break; + default: + slr.setDefaultLocale(Locale.SIMPLIFIED_CHINESE); + } + //设置cookie有效期. + slr.setCookieMaxAge(3600); + return slr; + } + + @Override + public void configureMessageConverters(List> converters) { + Iterator> iterator = converters.iterator(); + //先把JackSon的消息转换器删除. 在SpringBoot2.X时代,必须要排除JackSon消息转换器。 + while (iterator.hasNext()) { + HttpMessageConverter converter = iterator.next(); + if (converter instanceof MappingJackson2HttpMessageConverter) { + iterator.remove(); + } + } + FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter(); + converter.setFastJsonConfig(fastjsonConfig()); + converter.setSupportedMediaTypes(getSupportedMediaType()); + converters.add(converter); + } + + /** + * fastjson的配置 + */ + public FastJsonConfig fastjsonConfig() { + FastJsonConfig fastJsonConfig = new FastJsonConfig(); + fastJsonConfig.setSerializerFeatures( + SerializerFeature.PrettyFormat, + SerializerFeature.WriteMapNullValue, + SerializerFeature.WriteEnumUsingToString + ); + //修改,设置全局时间为精确到天,页面列表显示不带时分秒 + fastJsonConfig.setDateFormat("yyyy-MM-dd HH:mm:ss"); +// fastJsonConfig.setDateFormat("yyyy-MM-dd"); + ValueFilter valueFilter = new ValueFilter() { + @Override + public Object process(Object o, String s, Object o1) { + if (null == o1) { + o1 = ""; + } + return o1; + } + }; + fastJsonConfig.setCharset(Charset.forName("utf-8")); + fastJsonConfig.setSerializeFilters(valueFilter); + + //解决Long转json精度丢失的问题 + SerializeConfig serializeConfig = SerializeConfig.globalInstance; + serializeConfig.put(BigInteger.class, ToStringSerializer.instance); + serializeConfig.put(Long.class, ToStringSerializer.instance); + serializeConfig.put(BigDecimal.class, ToStringSerializer.instance); +// serializeConfig.put(Long.TYPE, ToStringSerializer.instance); + fastJsonConfig.setSerializeConfig(serializeConfig); + return fastJsonConfig; + } + + /** + * 支持的mediaType类型 + */ + public List getSupportedMediaType() { + ArrayList mediaTypes = new ArrayList<>(); + mediaTypes.add(MediaType.APPLICATION_JSON_UTF8); + + return mediaTypes; + } + +} + diff --git a/casic-web/src/main/resources/config/application-dev.yml b/casic-web/src/main/resources/config/application-dev.yml index cb3c6ae..4c976ae 100644 --- a/casic-web/src/main/resources/config/application-dev.yml +++ b/casic-web/src/main/resources/config/application-dev.yml @@ -30,7 +30,7 @@ # earliest:重置为分区中最小的offset; # latest:重置为分区中最新的offset(消费分区中新产生的数据); # none:只要有一个分区不存在已提交的offset,就抛出异常; - auto-offset-reset: latest + auto-offset-reset: earliest max-poll-records: 500 #单次拉取消息的最大条数 key-deserializer: org.apache.kafka.common.serialization.StringDeserializer value-deserializer: org.apache.kafka.common.serialization.StringDeserializer @@ -55,7 +55,7 @@ # redisValueSerializer: org.springframework.data.redis.serializer.JdkSerializationRedisSerializer casic: #kaptcha-open: false #是否开启登录时验证码 (true/false) - no-login-urls: ${casic.sysUrl}/user/login,${casic.sysUrl}/user/appLogin,${casic.sysUrl}/kaptcha/base64,${casic.sysUrl}/config/baseConfig,/route/mockToken + no-login-urls: ${casic.sysUrl}/user/login,${casic.sysUrl}/user/appLogin,${casic.sysUrl}/kaptcha/base64,${casic.sysUrl}/config/baseConfig,/route/mockToken,/v2/api-docs,/v2/api-docs-ext,/doc.html,/v2/api-docs/swagger-ui.html,/swagger-resources,/code/generator,/webjars/** #flowable数据源和多数据源配置 db: init: diff --git a/casic-server/pom.xml b/casic-server/pom.xml index c4b6c82..536b0b1 100644 --- a/casic-server/pom.xml +++ b/casic-server/pom.xml @@ -40,6 +40,25 @@ org.springframework.kafka spring-kafka + + + + com.baomidou + mybatis-plus-generator + 3.5.1 + + + + org.apache.velocity + velocity-engine-core + 2.3 + + + io.swagger + swagger-annotations + 1.5.18 + compile + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java new file mode 100644 index 0000000..5847359 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/config/MybatisPlusConfig.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.system.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class MybatisPlusConfig { + + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor(){ + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + return interceptor; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java new file mode 100644 index 0000000..dee717e --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRecords") +public class AlarmRecordsController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java new file mode 100644 index 0000000..8f67f57 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRuleController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 报警规则表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/alarmRule") +public class AlarmRuleController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java new file mode 100644 index 0000000..12eb38b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -0,0 +1,73 @@ +package com.casic.missiles.modular.system.controller; + + +import com.casic.missiles.model.exception.ServiceException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.casic.missiles.modular.system.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +/** + *

+ * 设备表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Api(tags = "设备表接口") +@Slf4j +@RestController +@RequestMapping("/busDevice") +public class BusDeviceController { + @Autowired + private IBusWellInfoService busWellInfoService; + + @ApiOperation("添加设备") + @GetMapping("/add") + public Object add(BusWellInfo busWellInfo) { + + try { + if(null==busWellInfo.getResponsibleDept()){ + busWellInfo.setResponsibleDept(Long.valueOf(busWellInfo.getDeptid().toString())); + } + +// List deptTopRoleUsers = permissionService.getRoleUsersByTips(busWellInfo.getResponsibleDept(),"leader",true); +// if(ToolUtil.isNotEmpty(deptTopRoleUsers)){ +// busWellInfo.setStaff(deptTopRoleUsers.get(0).getId().toString()); +// } + busWellInfoService.save(busWellInfo); + } catch (Exception e) { + ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); + String errorMsg = "点位添加失败"; + if (e instanceof DuplicateKeyException) { + errorMsg = "点位编号重复"; + } else if (e instanceof ServiceException) { + ServiceException gunException = (ServiceException) e; + errorMsg = gunException.getMessage(); + } +// Loggererror("点位添加失败", e); + gunsException.setErrorMessage(errorMsg); + throw gunsException; + } + + return ResponseData.success(); + } + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java new file mode 100644 index 0000000..d8d6264 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; + +/** + *

+ * 点位信息表 前端控制器 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Controller +@RequestMapping("/busWellInfo") +public class BusWellInfoController { + +} + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java deleted file mode 100644 index 87b6fec..0000000 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/DemoController.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.casic.missiles.modular.system.controller; - - -import com.casic.missiles.model.application.event.core.EventPublisher; -import com.casic.missiles.model.application.event.enums.ModelEventTypeEnum; -import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.event.UserEvent; -import com.casic.missiles.modular.system.model.User; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; - -/** - * @ClassName DemoController - * @Description TODO - * @Author lenovo - * @Date 2020/6/13 15:38 - * @Version 1.0 - */ -@RestController -@RequestMapping("/demo") -public class DemoController { - @Autowired - private EventPublisher publisher; - - /** - * 获取mockToken - */ - @PostMapping("/list") - @ResponseBody - public Object list() { - User user = new User(); - user.setAccount("张三"); - publisher.publishEvent(new UserEvent(ModelEventTypeEnum.ADD, user)); - return ResponseData.success(); - } - - -} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java new file mode 100644 index 0000000..7b9749c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRecordsMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java new file mode 100644 index 0000000..3b23a4d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/AlarmRuleMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 报警规则表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface AlarmRuleMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java new file mode 100644 index 0000000..6bb41a6 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusDeviceMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusDeviceMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java new file mode 100644 index 0000000..ada539c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/BusWellInfoMapper.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dao; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 闸井信息表 Mapper 接口 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface BusWellInfoMapper extends BaseMapper { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml new file mode 100644 index 0000000..3fb41f9 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml new file mode 100644 index 0000000..13f83a7 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml new file mode 100644 index 0000000..7fdbdec --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusDeviceMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml new file mode 100644 index 0000000..4f9fd47 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusWellInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java new file mode 100644 index 0000000..9656851 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/ReturnDTO.java @@ -0,0 +1,37 @@ +package com.casic.missiles.modular.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:51 + */ +@Data +@ApiModel +public class ReturnDTO implements Serializable { + @ApiModelProperty(value = "返回码", dataType = "String") + private Integer code; + @ApiModelProperty(value = "提示信息", dataType = "String") + private String message; + @ApiModelProperty(value = "返回值", dataType = "Object") + private T data; + + public ReturnDTO(Integer code, String message, T data) { + this.code = code; + this.message = message; + this.data = data; + } + + public ReturnDTO(Integer code, String message) { + this.code = code; + this.message = message; + } + + public ReturnDTO() { + } +} \ No newline at end of file diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java new file mode 100644 index 0000000..e074f7c --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/BusinessExceptionEnum.java @@ -0,0 +1,58 @@ +package com.casic.missiles.modular.system.enums; + +import com.casic.missiles.model.exception.AbstractBaseExceptionEnum; + +/** + * @Description: + */ +public enum BusinessExceptionEnum implements AbstractBaseExceptionEnum { + + ID_NULL(2400, "主键不能为空"), + + HANDLE_FAILED(500, "操作失败"), + + ALARM_CODE_FAILED(5003, "报警编号不能为空"), + + CODE_NULL(501, "字典code不能为空"), + + SAVE_FAILED(400, "保存失败"), + + TEST_URL_NULL(2090, "测试地址为空!"), + + PARAM_IS_NULL(2080, "参数有误!"), + + FILE_NULL(2091, "导入文件为空!"), + + RECORD_NULL(2093, "未查询到相关记录!"), + + FILE_READ_ROW_FAILED(2092, "读入excel异常!"), + + MONITOR_VALID_FAILED(2099, "云台登录地址重复"); + + + private Integer code; + private String message; + + BusinessExceptionEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + @Override + public Integer getCode() { + return this.code; + } + + public void setCode(Integer code) { + this.code = code; + } + + @Override + public String getMessage() { + return this.message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java new file mode 100644 index 0000000..cdc35a0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/enums/DictEnum.java @@ -0,0 +1,46 @@ +package com.casic.missiles.modular.system.enums; + +/** + * @Description: 字典名枚举 + * @Author: zt + * @Date: 2023/4/20 10:41 + */ +public interface DictEnum { + //测试通过 + String TEST_PASSED = "通过"; + //测试不通过 + String TEST_FAILED = "不通过"; + //测试状态 + String TEST_STATUS = "1"; + //发布平台 + String PLATE = "plate"; + //一级标签 + String FIRST_TAG = "tags"; + //下发 + String PROCESS_SEND = "4"; + + String VALID_ADD = "0"; + + String VALID_DELETE = "1"; + //未报警 + String ALARM_OFF = "0"; + //报警 + String ALARM_NO= "1"; + //投票支持 + String VOTE_APPROVE = "1"; + //投票反对 + String VOTE_AGAINST = "0"; + + String ALARM_PREFIX = "XJBJ"; + + String TASK_PREFIX = "XJRW"; + + String RECOGNITION_PREFIX = "XJSB"; + + String TASK_STATUS = "inspectionStatus"; + + //离线 + String CAR_OFF = "0"; + //在线 + String CAR_NO= "1"; +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java new file mode 100644 index 0000000..d3408e0 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/exception/BusinessException.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.system.exception; + +import com.casic.missiles.modular.system.enums.BusinessExceptionEnum; +import lombok.Getter; +import lombok.Setter; + +/** + * @Description: 业务异常 + */ +public class BusinessException extends RuntimeException { + private static final long serialVersionUID = 1L; + + @Getter + @Setter + private Integer code; + @Getter + @Setter + private String message; + + public BusinessException(Integer code, String message) { + super(message); + this.code = code; + this.message = message; + } + + public BusinessException(BusinessExceptionEnum exceptionEnum) { + super(exceptionEnum.getMessage()); + this.code = exceptionEnum.getCode(); + this.message = exceptionEnum.getMessage(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..dc2f09b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/handler/GlobalExceptionHandler.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.system.handler; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.exception.BusinessException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.annotation.Order; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + + +@Slf4j +@Order(1) +@ControllerAdvice +public class GlobalExceptionHandler { + + /** + * 业务异常捕获处理 + */ + @ResponseBody + @ExceptionHandler({BusinessException.class}) + public Object handleError(BusinessException exception) { + return ResponseData.error(exception.getCode(), exception.getMessage()); + } + +// /** +// * 编号重复异常捕获处理 +// */ +// @ResponseBody +// @ExceptionHandler({DuplicateKeyException.class}) +// public Object handleDuplicateKeyException() { +// return ReturnUtil.failed(BusinessExceptionEnum.DUPLICATE_NUMBER.getCode(), BusinessExceptionEnum.DUPLICATE_NUMBER.getMessage()); +// } +// +// /** +// * 参数校验失败异常 +// */ +// @ResponseBody +// @ExceptionHandler({MethodArgumentNotValidException.class}) +// public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException exception) { +// return ReturnUtil.failed(BusinessExceptionEnum.PARAM_INVALID.getCode(), exception.getFieldError().getDefaultMessage()); +// } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java new file mode 100644 index 0000000..4ff240b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRecords.java @@ -0,0 +1,173 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_records") +@ApiModel(value = "AlarmRecords对象", description = "") +public class AlarmRecords implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + private Long id; + + @ApiModelProperty("设备ID") + private Long deviceId; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("闸井编号") + private String wellCode; + + @ApiModelProperty("告警类型") + private String alarmType; + + @ApiModelProperty("告警内容") + private String alarmContent; + + @ApiModelProperty("告警数值") + private String alarmValue; + + @ApiModelProperty("告警等级") + private Integer alarmLevel; + + @ApiModelProperty("告警时间") + private LocalDateTime alarmTime; + + @ApiModelProperty("告警状态( 0:因新报警而自动取消,1:正在报警,2:因工单结束而消警,3:因数据正常而消警)") + private String status; + + @ApiModelProperty("工单编号") + private Long jobId; + + @ApiModelProperty("告警详情") + private String alarmMsg; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getDeviceId() { + return deviceId; + } + + public void setDeviceId(Long deviceId) { + this.deviceId = deviceId; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getAlarmType() { + return alarmType; + } + + public void setAlarmType(String alarmType) { + this.alarmType = alarmType; + } + + public String getAlarmContent() { + return alarmContent; + } + + public void setAlarmContent(String alarmContent) { + this.alarmContent = alarmContent; + } + + public String getAlarmValue() { + return alarmValue; + } + + public void setAlarmValue(String alarmValue) { + this.alarmValue = alarmValue; + } + + public Integer getAlarmLevel() { + return alarmLevel; + } + + public void setAlarmLevel(Integer alarmLevel) { + this.alarmLevel = alarmLevel; + } + + public LocalDateTime getAlarmTime() { + return alarmTime; + } + + public void setAlarmTime(LocalDateTime alarmTime) { + this.alarmTime = alarmTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Long getJobId() { + return jobId; + } + + public void setJobId(Long jobId) { + this.jobId = jobId; + } + + public String getAlarmMsg() { + return alarmMsg; + } + + public void setAlarmMsg(String alarmMsg) { + this.alarmMsg = alarmMsg; + } + + @Override + public String toString() { + return "AlarmRecords{" + + "id=" + id + + ", deviceId=" + deviceId + + ", devcode=" + devcode + + ", wellCode=" + wellCode + + ", alarmType=" + alarmType + + ", alarmContent=" + alarmContent + + ", alarmValue=" + alarmValue + + ", alarmLevel=" + alarmLevel + + ", alarmTime=" + alarmTime + + ", status=" + status + + ", jobId=" + jobId + + ", alarmMsg=" + alarmMsg + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java new file mode 100644 index 0000000..559479b --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/AlarmRule.java @@ -0,0 +1,152 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 报警规则表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("alarm_rule") +@ApiModel(value = "AlarmRule对象", description = "报警规则表") +public class AlarmRule implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("自增主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("报警上限") + private Float highvalue; + + @ApiModelProperty("报警下限") + private Float lowvalue; + + @ApiModelProperty("超时时间") + private Float overtime; + + @ApiModelProperty("突然阈值") + private Float saltation; + + @ApiModelProperty("传感器编号") + private String sensorcode; + + @ApiModelProperty("报警等级") + private String grade; + + @ApiModelProperty("时间戳") + private LocalDateTime ts; + + @ApiModelProperty("操作人姓名") + private String operator; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public Float getHighvalue() { + return highvalue; + } + + public void setHighvalue(Float highvalue) { + this.highvalue = highvalue; + } + + public Float getLowvalue() { + return lowvalue; + } + + public void setLowvalue(Float lowvalue) { + this.lowvalue = lowvalue; + } + + public Float getOvertime() { + return overtime; + } + + public void setOvertime(Float overtime) { + this.overtime = overtime; + } + + public Float getSaltation() { + return saltation; + } + + public void setSaltation(Float saltation) { + this.saltation = saltation; + } + + public String getSensorcode() { + return sensorcode; + } + + public void setSensorcode(String sensorcode) { + this.sensorcode = sensorcode; + } + + public String getGrade() { + return grade; + } + + public void setGrade(String grade) { + this.grade = grade; + } + + public LocalDateTime getTs() { + return ts; + } + + public void setTs(LocalDateTime ts) { + this.ts = ts; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + @Override + public String toString() { + return "AlarmRule{" + + "id=" + id + + ", devcode=" + devcode + + ", highvalue=" + highvalue + + ", lowvalue=" + lowvalue + + ", overtime=" + overtime + + ", saltation=" + saltation + + ", sensorcode=" + sensorcode + + ", grade=" + grade + + ", ts=" + ts + + ", operator=" + operator + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java new file mode 100644 index 0000000..3f96b01 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusDevice.java @@ -0,0 +1,176 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 设备表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_device") +@ApiModel(value = "BusDevice对象", description = "设备表") +public class BusDevice implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备名称") + private String deviceName; + + @ApiModelProperty("在线状态") + private String onlineState; + + @ApiModelProperty("设备类型") + private String deviceType; + + private String signal; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("安装时间") + private LocalDate installDate; + + @ApiModelProperty("最新状态时间") + private LocalDateTime logtime; + + @ApiModelProperty("设备型号(关联型号表)") + private Long version; + + @ApiModelProperty("安装高度") + private Double installHeight; + + @ApiModelProperty("浮子电线长度") + private Double lineLength; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDevcode() { + return devcode; + } + + public void setDevcode(String devcode) { + this.devcode = devcode; + } + + public String getDeviceName() { + return deviceName; + } + + public void setDeviceName(String deviceName) { + this.deviceName = deviceName; + } + + public String getOnlineState() { + return onlineState; + } + + public void setOnlineState(String onlineState) { + this.onlineState = onlineState; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getSignal() { + return signal; + } + + public void setSignal(String signal) { + this.signal = signal; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public LocalDate getInstallDate() { + return installDate; + } + + public void setInstallDate(LocalDate installDate) { + this.installDate = installDate; + } + + public LocalDateTime getLogtime() { + return logtime; + } + + public void setLogtime(LocalDateTime logtime) { + this.logtime = logtime; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public Double getInstallHeight() { + return installHeight; + } + + public void setInstallHeight(Double installHeight) { + this.installHeight = installHeight; + } + + public Double getLineLength() { + return lineLength; + } + + public void setLineLength(Double lineLength) { + this.lineLength = lineLength; + } + + @Override + public String toString() { + return "BusDevice{" + + "id=" + id + + ", devcode=" + devcode + + ", deviceName=" + deviceName + + ", onlineState=" + onlineState + + ", deviceType=" + deviceType + + ", signal=" + signal + + ", valid=" + valid + + ", installDate=" + installDate + + ", logtime=" + logtime + + ", version=" + version + + ", installHeight=" + installHeight + + ", lineLength=" + lineLength + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java new file mode 100644 index 0000000..d147505 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/BusWellInfo.java @@ -0,0 +1,343 @@ +package com.casic.missiles.modular.system.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDate; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + *

+ * 闸井信息表 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@TableName("bus_well_info") +@ApiModel(value = "BusWellInfo对象", description = "闸井信息表") +public class BusWellInfo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(value = "ID", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("井盖编号") + private String wellCode; + + @ApiModelProperty("井盖名称") + private String wellName; + + @ApiModelProperty("井深") + private Float deep; + + @ApiModelProperty("第三方坐标系X") + private String coordinateX; + + @ApiModelProperty("第三方坐标Y") + private String coordinateY; + + @ApiModelProperty("百度经度") + private String lngBaidu; + + @ApiModelProperty("百度纬度") + private String latBaidu; + + @ApiModelProperty("高德经度") + private String lngGaode; + + @ApiModelProperty("高德纬度") + private String latGaode; + + @ApiModelProperty("区域") + private String area; + + @ApiModelProperty("位置") + private String position; + + @ApiModelProperty("部门编号(权属单位)") + private String deptid; + + @ApiModelProperty("责任部门(维护部门)") + private Long responsibleDept; + + @ApiModelProperty("路标图片路径集合") + private String photos; + + @ApiModelProperty("备注") + private String notes; + + @ApiModelProperty("井类型") + private String wellType; + + @ApiModelProperty("责任人") + private String staff; + + @ApiModelProperty("电话") + private String tel; + + @ApiModelProperty("时间戳") + private LocalDate ts; + + @ApiModelProperty("是否有效") + private String valid; + + @ApiModelProperty("布防状态") + private String bfzt; + + @ApiModelProperty("井标签备用1,分组") + private String wellFlag1; + + @ApiModelProperty("井标签备用2") + private String wellFlag2; + + @ApiModelProperty("井标签备用3") + private String wellFlag3; + + private String road; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getWellCode() { + return wellCode; + } + + public void setWellCode(String wellCode) { + this.wellCode = wellCode; + } + + public String getWellName() { + return wellName; + } + + public void setWellName(String wellName) { + this.wellName = wellName; + } + + public Float getDeep() { + return deep; + } + + public void setDeep(Float deep) { + this.deep = deep; + } + + public String getCoordinateX() { + return coordinateX; + } + + public void setCoordinateX(String coordinateX) { + this.coordinateX = coordinateX; + } + + public String getCoordinateY() { + return coordinateY; + } + + public void setCoordinateY(String coordinateY) { + this.coordinateY = coordinateY; + } + + public String getLngBaidu() { + return lngBaidu; + } + + public void setLngBaidu(String lngBaidu) { + this.lngBaidu = lngBaidu; + } + + public String getLatBaidu() { + return latBaidu; + } + + public void setLatBaidu(String latBaidu) { + this.latBaidu = latBaidu; + } + + public String getLngGaode() { + return lngGaode; + } + + public void setLngGaode(String lngGaode) { + this.lngGaode = lngGaode; + } + + public String getLatGaode() { + return latGaode; + } + + public void setLatGaode(String latGaode) { + this.latGaode = latGaode; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + + public String getDeptid() { + return deptid; + } + + public void setDeptid(String deptid) { + this.deptid = deptid; + } + + public Long getResponsibleDept() { + return responsibleDept; + } + + public void setResponsibleDept(Long responsibleDept) { + this.responsibleDept = responsibleDept; + } + + public String getPhotos() { + return photos; + } + + public void setPhotos(String photos) { + this.photos = photos; + } + + public String getNotes() { + return notes; + } + + public void setNotes(String notes) { + this.notes = notes; + } + + public String getWellType() { + return wellType; + } + + public void setWellType(String wellType) { + this.wellType = wellType; + } + + public String getStaff() { + return staff; + } + + public void setStaff(String staff) { + this.staff = staff; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public LocalDate getTs() { + return ts; + } + + public void setTs(LocalDate ts) { + this.ts = ts; + } + + public String getValid() { + return valid; + } + + public void setValid(String valid) { + this.valid = valid; + } + + public String getBfzt() { + return bfzt; + } + + public void setBfzt(String bfzt) { + this.bfzt = bfzt; + } + + public String getWellFlag1() { + return wellFlag1; + } + + public void setWellFlag1(String wellFlag1) { + this.wellFlag1 = wellFlag1; + } + + public String getWellFlag2() { + return wellFlag2; + } + + public void setWellFlag2(String wellFlag2) { + this.wellFlag2 = wellFlag2; + } + + public String getWellFlag3() { + return wellFlag3; + } + + public void setWellFlag3(String wellFlag3) { + this.wellFlag3 = wellFlag3; + } + + public String getRoad() { + return road; + } + + public void setRoad(String road) { + this.road = road; + } + + @Override + public String toString() { + return "BusWellInfo{" + + "id=" + id + + ", wellCode=" + wellCode + + ", wellName=" + wellName + + ", deep=" + deep + + ", coordinateX=" + coordinateX + + ", coordinateY=" + coordinateY + + ", lngBaidu=" + lngBaidu + + ", latBaidu=" + latBaidu + + ", lngGaode=" + lngGaode + + ", latGaode=" + latGaode + + ", area=" + area + + ", position=" + position + + ", deptid=" + deptid + + ", responsibleDept=" + responsibleDept + + ", photos=" + photos + + ", notes=" + notes + + ", wellType=" + wellType + + ", staff=" + staff + + ", tel=" + tel + + ", ts=" + ts + + ", valid=" + valid + + ", bfzt=" + bfzt + + ", wellFlag1=" + wellFlag1 + + ", wellFlag2=" + wellFlag2 + + ", wellFlag3=" + wellFlag3 + + ", road=" + road + + "}"; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java index ab68658..9dae90d 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/model/Noise.java @@ -38,6 +38,11 @@ @TableField("DDATA") private String ddata; /** + * 原始数据 + */ + @TableField("RAWDATA") + private String rawData; + /** * 采集时间 */ @TableField("UPTIME") @@ -49,6 +54,13 @@ private Date logtime; @TableField("DESCN") private String descn; + + @TableField("pci") + private String pci; + @TableField("rsrp") + private String rsrp; + @TableField("snr") + private String snr; @Override public String toString() { return "Noise{" + @@ -60,4 +72,21 @@ ", descn=" + descn + "}"; } + + public Noise() { + } + + public Noise(String devcode, String ddata, String rawData, + Date uptime, Date logtime, String descn, + String pci, String rsrp, String snr) { + this.devcode = devcode; + this.ddata = ddata; + this.rawData = rawData; + this.uptime = uptime; + this.logtime = logtime; + this.descn = descn; + this.pci = pci; + this.rsrp = rsrp; + this.snr = snr; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java new file mode 100644 index 0000000..8e593ce --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRecordsService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRecordsService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java new file mode 100644 index 0000000..d374cb2 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IAlarmRuleService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 报警规则表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IAlarmRuleService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java new file mode 100644 index 0000000..39a9b93 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusDeviceService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusDevice; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 设备表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusDeviceService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java new file mode 100644 index 0000000..be21c85 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/IBusWellInfoService.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.service; + +import com.casic.missiles.modular.system.model.BusWellInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 闸井信息表 服务类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +public interface IBusWellInfoService extends IService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java new file mode 100644 index 0000000..e18c90d --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRecords; +import com.casic.missiles.modular.system.dao.AlarmRecordsMapper; +import com.casic.missiles.modular.system.service.IAlarmRecordsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRecordsServiceImpl extends ServiceImpl implements IAlarmRecordsService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java new file mode 100644 index 0000000..71ef4a1 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/AlarmRuleServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.model.AlarmRule; +import com.casic.missiles.modular.system.dao.AlarmRuleMapper; +import com.casic.missiles.modular.system.service.IAlarmRuleService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 报警规则表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class AlarmRuleServiceImpl extends ServiceImpl implements IAlarmRuleService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java new file mode 100644 index 0000000..21f5dc3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusDeviceServiceImpl.java @@ -0,0 +1,20 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusDeviceMapper; +import com.casic.missiles.modular.system.model.BusDevice; +import com.casic.missiles.modular.system.service.IBusDeviceService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 设备表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusDeviceServiceImpl extends ServiceImpl implements IBusDeviceService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java new file mode 100644 index 0000000..d4d9ce3 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/BusWellInfoServiceImpl.java @@ -0,0 +1,21 @@ +package com.casic.missiles.modular.system.service.impl; + +import com.casic.missiles.modular.system.dao.BusWellInfoMapper; +import com.casic.missiles.modular.system.model.BusWellInfo; + +import com.casic.missiles.modular.system.service.IBusWellInfoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 闸井信息表 服务实现类 + *

+ * + * @author zt + * @since 2024-03-06 + */ +@Service +public class BusWellInfoServiceImpl extends ServiceImpl implements IBusWellInfoService { + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java index 2e0cdfe..3d01bf9 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java @@ -1,12 +1,18 @@ package com.casic.missiles.modular.system.service.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.dao.NoiseMapper; +import com.casic.missiles.modular.system.model.Noise; import com.casic.missiles.modular.system.service.INoiseService; - +import com.casic.missiles.modular.system.util.DateUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import java.util.Date; + /** *

* 噪声记录仪上传数据 服务实现类 @@ -15,11 +21,39 @@ * @author stylefeng123 * @since 2024-02-28 */ + @Service public class NoiseServiceImpl extends ServiceImpl implements INoiseService { + private static final Logger logger = LoggerFactory.getLogger(NoiseServiceImpl.class); + private static final String[] mType = {"Data", "Event", "SetResponse", "GetResponse", "StartupRequest"}; @Override public void processData(String recordValue) { - + JSONObject json = JSONObject.parseObject(recordValue); + String devCode = json.get("devCode").toString(); + logger.info("--------RECEIVE:设备编号:" + devCode + ",上传数据:" + json.toString() + "-------"); + JSONObject jsonObject = (JSONObject) json.get("mBody"); + if (mType[0].equals(json.get("mType")) || mType[3].equals(json.get("mType"))) {//存储上报数据 + String cell = null!=jsonObject.get("cell")?jsonObject.get("cell").toString():""; + String pci = null!=jsonObject.get("pci")?jsonObject.get("pci").toString():""; + String rsrp = null!=jsonObject.get("rsrp")?jsonObject.get("rsrp").toString():""; + String snr = null!= jsonObject.get("snr")?jsonObject.get("snr").toString():""; + JSONArray jsonArray = (JSONArray) jsonObject.get("datas"); + for (int i = 0; i < jsonArray.size(); i++) { + try { + String val = ((JSONObject) jsonArray.get(i)).get("noiseVal").toString(); + String freq = ((JSONObject) jsonArray.get(i)).get("noiseFreq").toString(); + String upTime = ((JSONObject) jsonArray.get(i)).get("uptime").toString(); + String noiseSampleValues = ((JSONObject) jsonArray.get(i)).get("noiseSampleValues").toString(); + val = String.format("%.2f", Double.valueOf(val)); + freq = String.format("%.2f", Double.valueOf(freq)); + this.baseMapper.insert(new Noise(devCode, val, noiseSampleValues, DateUtils.sdf4.parse(DateUtils.DateFormat(upTime)), + new Date(), cell, pci, rsrp, snr)); + } catch (Exception e) { + e.printStackTrace(); + logger.error("--------ERROR:设备编号:" + devCode + ",存储数据:" + jsonArray.get(i).toString() + "失败-------"); + } + } + } } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java new file mode 100644 index 0000000..279e916 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/DateUtils.java @@ -0,0 +1,34 @@ +package com.casic.missiles.modular.system.util; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * Created by Administrator on 2015/2/25. + */ +public class DateUtils { + public static SimpleDateFormat sdf_day = new SimpleDateFormat("yyyy-MM-dd"); + public static SimpleDateFormat sdf_day_time = new SimpleDateFormat("yyyyMMddhhmmss"); + public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static final SimpleDateFormat sdf5 = new SimpleDateFormat("HH:mm:ss"); + public static final SimpleDateFormat sdf6 = new SimpleDateFormat("yyyyMMdd"); + + public static String DateFormat(String dataString) { + + String strymd = dataString.substring(0, 8); + String str1 = strymd.substring(0, 4) + "-" + strymd.substring(4, 6) + "-" + strymd.substring(6, 8) + " "; + String strhms = dataString.substring(8); + String str2 =strhms.substring(0,2)+":"+strhms.substring(2,4)+":"+strhms.substring(4,6); + dataString =str1+str2; + return dataString; + } + + public static Date getSevenBeforeDate() throws ParseException { + Calendar calendar=Calendar.getInstance(); + calendar.add(calendar.DATE,-7); + Date sevenBeforDate=calendar.getTime(); + return sevenBeforDate; + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java new file mode 100644 index 0000000..cefc922 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/GeneratorCodeUtil.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.util; + + +import com.baomidou.mybatisplus.generator.FastAutoGenerator; +import com.baomidou.mybatisplus.generator.config.rules.DateType; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/code") +public class GeneratorCodeUtil { + + + @GetMapping("generator") + public static void main(String [] args) { + // 获取用户程序当前路径 + String projectPath = System.getProperty("user.dir"); + // 设置输出到的目录 + String out = projectPath + "/src/main/java"; +// 设置mapper.xml生成路径 + + + FastAutoGenerator.create("jdbc:mysql://111.198.10.15:11336/casic_correlator?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=UTC&&allowMultiQueries=true", "root", "Casic203") + .globalConfig(builder -> { + builder.author("zt") // 设置作者 + .enableSwagger() // 开启 swagger 模式 + .fileOverride() // 覆盖已生成文件 + .outputDir(projectPath) + .dateType(DateType.TIME_PACK); // 指定输出目录 + }) + .packageConfig(builder -> { + builder.parent("com.casic.missiles.modular.system") + .entity("model") + .service("service") + .serviceImpl("service.impl") + .mapper("dao") + .controller("controller"); // 设置mapperXml生成路径 + }) + .strategyConfig(builder -> { + builder + .addInclude("alarm_records","alarm_rule"); // 设置需要生成的表名 +// .addTablePrefix("blog_", "c_"); // 设置过滤表前缀 + }) +// .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板 + .execute(); + } + +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java new file mode 100644 index 0000000..1e8c12a --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/util/ReturnUtil.java @@ -0,0 +1,39 @@ +package com.casic.missiles.modular.system.util; + +import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.ReturnDTO; + +/** + * @Description: for return + * @Author: wangpeng + * @Date: 2022/11/27 00:56 + */ +public class ReturnUtil { + public ReturnUtil() { + } + + public static ReturnDTO success() { + return new ReturnDTO(ResponseData.DEFAULT_SUCCESS_CODE, ResponseData.DEFAULT_SUCCESS_MESSAGE); + } + + public static ReturnDTO success(Object data) { + return new ReturnDTO(ResponseData.DEFAULT_SUCCESS_CODE, ResponseData.DEFAULT_SUCCESS_MESSAGE, data); + } + + public static ReturnDTO success(Integer code, String message) { + return new ReturnDTO(code, message); + } + + public static ReturnDTO failed() { + return new ReturnDTO(ResponseData.DEFAULT_ERROR_CODE, ResponseData.DEFAULT_ERROR_MESSAGE); + } + + public static ReturnDTO failed(String message) { + return new ReturnDTO(ResponseData.DEFAULT_ERROR_CODE, message); + } + + public static ReturnDTO failed(Integer code, String message) { + return new ReturnDTO(code, message); + } + +} diff --git a/casic-web/pom.xml b/casic-web/pom.xml index 18de6e0..1a75041 100644 --- a/casic-web/pom.xml +++ b/casic-web/pom.xml @@ -61,6 +61,16 @@ com.casic casic-core ${core.version} + + + + + + + + + + com.casic @@ -71,10 +81,19 @@ io.springfox springfox-swagger-ui + + io.swagger + swagger-models + com.casic + casic-knife4j-boot-starter + ${extension.version} + + + com.casic casic-admin-support ${admin.version} diff --git a/casic-web/src/main/java/com/casic/missiles/config/WebMvcConfig.java b/casic-web/src/main/java/com/casic/missiles/config/WebMvcConfig.java new file mode 100644 index 0000000..4f4ec87 --- /dev/null +++ b/casic-web/src/main/java/com/casic/missiles/config/WebMvcConfig.java @@ -0,0 +1,143 @@ +package com.casic.missiles.config; + +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.serializer.SerializeConfig; +import com.alibaba.fastjson.serializer.SerializerFeature; +import com.alibaba.fastjson.serializer.ToStringSerializer; +import com.alibaba.fastjson.serializer.ValueFilter; +import com.alibaba.fastjson.support.config.FastJsonConfig; +import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; +import com.casic.missiles.config.properties.CasicProperties; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.boot.web.servlet.ServletComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.MediaType; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; +import org.springframework.web.servlet.LocaleResolver; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; +import org.springframework.web.servlet.i18n.CookieLocaleResolver; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.nio.charset.Charset; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.Locale; + + +@ServletComponentScan(basePackageClasses = {DefaultFastjsonConfig.class}) +@ConditionalOnClass(com.alibaba.fastjson.JSON.class) +@ConditionalOnMissingBean(FastJsonHttpMessageConverter.class) +@Configuration +class WebMvcConfig extends WebMvcConfigurationSupport { + @Value("${spring.messages.locale:SIMPLIFIED_CHINESE}") + private String locale; + + public WebMvcConfig() { + } + + @Autowired + private CasicProperties casicProperties; + + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + //Spring Boot自动配置自己不会自动把/swagger-ui.html这个路径映射到对应的目录META-INF/resources/下面 + registry.addResourceHandler("swagger-ui.html").addResourceLocations( + "classpath:/META-INF/resources/"); + registry.addResourceHandler("/webjars/**").addResourceLocations( + "classpath:/META-INF/resources/webjars/"); + registry.addResourceHandler("doc.html").addResourceLocations( + "classpath:/META-INF/resources/"); + registry.addResourceHandler("/favicon.ico").addResourceLocations( + "classpath:/META-INF/resources/"); + if (StrUtil.isNotEmpty(casicProperties.getFile().getUploadPath())) { + registry.addResourceHandler("/static/**").addResourceLocations("file:" + casicProperties.getFile().getUploadPath()); + } + super.addResourceHandlers(registry); + } + + @Override + public LocaleResolver localeResolver() { + CookieLocaleResolver slr = new CookieLocaleResolver(); + //设置默认区域,Locale.SIMPLIFIED_CHINESE + switch (locale) { + case "US": + slr.setDefaultLocale(Locale.US); + break; + default: + slr.setDefaultLocale(Locale.SIMPLIFIED_CHINESE); + } + //设置cookie有效期. + slr.setCookieMaxAge(3600); + return slr; + } + + @Override + public void configureMessageConverters(List> converters) { + Iterator> iterator = converters.iterator(); + //先把JackSon的消息转换器删除. 在SpringBoot2.X时代,必须要排除JackSon消息转换器。 + while (iterator.hasNext()) { + HttpMessageConverter converter = iterator.next(); + if (converter instanceof MappingJackson2HttpMessageConverter) { + iterator.remove(); + } + } + FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter(); + converter.setFastJsonConfig(fastjsonConfig()); + converter.setSupportedMediaTypes(getSupportedMediaType()); + converters.add(converter); + } + + /** + * fastjson的配置 + */ + public FastJsonConfig fastjsonConfig() { + FastJsonConfig fastJsonConfig = new FastJsonConfig(); + fastJsonConfig.setSerializerFeatures( + SerializerFeature.PrettyFormat, + SerializerFeature.WriteMapNullValue, + SerializerFeature.WriteEnumUsingToString + ); + //修改,设置全局时间为精确到天,页面列表显示不带时分秒 + fastJsonConfig.setDateFormat("yyyy-MM-dd HH:mm:ss"); +// fastJsonConfig.setDateFormat("yyyy-MM-dd"); + ValueFilter valueFilter = new ValueFilter() { + @Override + public Object process(Object o, String s, Object o1) { + if (null == o1) { + o1 = ""; + } + return o1; + } + }; + fastJsonConfig.setCharset(Charset.forName("utf-8")); + fastJsonConfig.setSerializeFilters(valueFilter); + + //解决Long转json精度丢失的问题 + SerializeConfig serializeConfig = SerializeConfig.globalInstance; + serializeConfig.put(BigInteger.class, ToStringSerializer.instance); + serializeConfig.put(Long.class, ToStringSerializer.instance); + serializeConfig.put(BigDecimal.class, ToStringSerializer.instance); +// serializeConfig.put(Long.TYPE, ToStringSerializer.instance); + fastJsonConfig.setSerializeConfig(serializeConfig); + return fastJsonConfig; + } + + /** + * 支持的mediaType类型 + */ + public List getSupportedMediaType() { + ArrayList mediaTypes = new ArrayList<>(); + mediaTypes.add(MediaType.APPLICATION_JSON_UTF8); + + return mediaTypes; + } + +} + diff --git a/casic-web/src/main/resources/config/application-dev.yml b/casic-web/src/main/resources/config/application-dev.yml index cb3c6ae..4c976ae 100644 --- a/casic-web/src/main/resources/config/application-dev.yml +++ b/casic-web/src/main/resources/config/application-dev.yml @@ -30,7 +30,7 @@ # earliest:重置为分区中最小的offset; # latest:重置为分区中最新的offset(消费分区中新产生的数据); # none:只要有一个分区不存在已提交的offset,就抛出异常; - auto-offset-reset: latest + auto-offset-reset: earliest max-poll-records: 500 #单次拉取消息的最大条数 key-deserializer: org.apache.kafka.common.serialization.StringDeserializer value-deserializer: org.apache.kafka.common.serialization.StringDeserializer @@ -55,7 +55,7 @@ # redisValueSerializer: org.springframework.data.redis.serializer.JdkSerializationRedisSerializer casic: #kaptcha-open: false #是否开启登录时验证码 (true/false) - no-login-urls: ${casic.sysUrl}/user/login,${casic.sysUrl}/user/appLogin,${casic.sysUrl}/kaptcha/base64,${casic.sysUrl}/config/baseConfig,/route/mockToken + no-login-urls: ${casic.sysUrl}/user/login,${casic.sysUrl}/user/appLogin,${casic.sysUrl}/kaptcha/base64,${casic.sysUrl}/config/baseConfig,/route/mockToken,/v2/api-docs,/v2/api-docs-ext,/doc.html,/v2/api-docs/swagger-ui.html,/swagger-resources,/code/generator,/webjars/** #flowable数据源和多数据源配置 db: init: diff --git a/pom.xml b/pom.xml index c497b41..dd7dcaa 100644 --- a/pom.xml +++ b/pom.xml @@ -26,6 +26,7 @@ 2.0.0.alpha + 2.0.0.alpha 3.2.1