diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java new file mode 100644 index 0000000..c5f935e --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java @@ -0,0 +1,15 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class MonitorListDTO { + + private Long stationId; + + private String keyword; +} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java new file mode 100644 index 0000000..c5f935e --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java @@ -0,0 +1,15 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class MonitorListDTO { + + private Long stationId; + + private String keyword; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java new file mode 100644 index 0000000..fcc4a3b --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.enums.DictEnum; +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class MonitorOverviewMap { + /** + * 设备ID + */ + private Long monitorId; + /** + * 设备名称 + */ + private String monitorName; + /** + * 经度 + */ + private String longitude; + /** + * 纬度 + */ + private String latitude; + /** + * 场站名 + */ + private String stationName; + + /** + * 位置 + */ + private String location; + + /** + * 设备状态(字典) + */ + @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) + private String deviceStatus; + + /** + * 设备状态名称 + */ + private String deviceStatusName; +} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java new file mode 100644 index 0000000..c5f935e --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java @@ -0,0 +1,15 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class MonitorListDTO { + + private Long stationId; + + private String keyword; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java new file mode 100644 index 0000000..fcc4a3b --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.enums.DictEnum; +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class MonitorOverviewMap { + /** + * 设备ID + */ + private Long monitorId; + /** + * 设备名称 + */ + private String monitorName; + /** + * 经度 + */ + private String longitude; + /** + * 纬度 + */ + private String latitude; + /** + * 场站名 + */ + private String stationName; + + /** + * 位置 + */ + private String location; + + /** + * 设备状态(字典) + */ + @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) + private String deviceStatus; + + /** + * 设备状态名称 + */ + private String deviceStatusName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java new file mode 100644 index 0000000..4a35cd4 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import lombok.Data; + +@Data +public class MonitorPointList { + private Long id; + private String monitorName; +} + diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java new file mode 100644 index 0000000..c5f935e --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java @@ -0,0 +1,15 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class MonitorListDTO { + + private Long stationId; + + private String keyword; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java new file mode 100644 index 0000000..fcc4a3b --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.enums.DictEnum; +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class MonitorOverviewMap { + /** + * 设备ID + */ + private Long monitorId; + /** + * 设备名称 + */ + private String monitorName; + /** + * 经度 + */ + private String longitude; + /** + * 纬度 + */ + private String latitude; + /** + * 场站名 + */ + private String stationName; + + /** + * 位置 + */ + private String location; + + /** + * 设备状态(字典) + */ + @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) + private String deviceStatus; + + /** + * 设备状态名称 + */ + private String deviceStatusName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java new file mode 100644 index 0000000..4a35cd4 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import lombok.Data; + +@Data +public class MonitorPointList { + private Long id; + private String monitorName; +} + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java new file mode 100644 index 0000000..e28e18d --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +import java.util.List; + +@Data +public class StationPointList { + + private Long id; + private String stationName; +} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java new file mode 100644 index 0000000..c5f935e --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java @@ -0,0 +1,15 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class MonitorListDTO { + + private Long stationId; + + private String keyword; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java new file mode 100644 index 0000000..fcc4a3b --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.enums.DictEnum; +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class MonitorOverviewMap { + /** + * 设备ID + */ + private Long monitorId; + /** + * 设备名称 + */ + private String monitorName; + /** + * 经度 + */ + private String longitude; + /** + * 纬度 + */ + private String latitude; + /** + * 场站名 + */ + private String stationName; + + /** + * 位置 + */ + private String location; + + /** + * 设备状态(字典) + */ + @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) + private String deviceStatus; + + /** + * 设备状态名称 + */ + private String deviceStatusName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java new file mode 100644 index 0000000..4a35cd4 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import lombok.Data; + +@Data +public class MonitorPointList { + private Long id; + private String monitorName; +} + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java new file mode 100644 index 0000000..e28e18d --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +import java.util.List; + +@Data +public class StationPointList { + + private Long id; + private String stationName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java new file mode 100644 index 0000000..389f3ff --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java @@ -0,0 +1,22 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class StationStateStatisticsVO{ + + private Long stationId; + + private String stationName; + + private Long total; + + private Long online; + + private Long offline; + +} diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java new file mode 100644 index 0000000..c5f935e --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java @@ -0,0 +1,15 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class MonitorListDTO { + + private Long stationId; + + private String keyword; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java new file mode 100644 index 0000000..fcc4a3b --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.enums.DictEnum; +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class MonitorOverviewMap { + /** + * 设备ID + */ + private Long monitorId; + /** + * 设备名称 + */ + private String monitorName; + /** + * 经度 + */ + private String longitude; + /** + * 纬度 + */ + private String latitude; + /** + * 场站名 + */ + private String stationName; + + /** + * 位置 + */ + private String location; + + /** + * 设备状态(字典) + */ + @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) + private String deviceStatus; + + /** + * 设备状态名称 + */ + private String deviceStatusName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java new file mode 100644 index 0000000..4a35cd4 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import lombok.Data; + +@Data +public class MonitorPointList { + private Long id; + private String monitorName; +} + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java new file mode 100644 index 0000000..e28e18d --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +import java.util.List; + +@Data +public class StationPointList { + + private Long id; + private String stationName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java new file mode 100644 index 0000000..389f3ff --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java @@ -0,0 +1,22 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class StationStateStatisticsVO{ + + private Long stationId; + + private String stationName; + + private Long total; + + private Long online; + + private Long offline; + +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java index 7c41879..f2a35bb 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.baomidou.mybatisplus.extension.service.IService; diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java new file mode 100644 index 0000000..c5f935e --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java @@ -0,0 +1,15 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class MonitorListDTO { + + private Long stationId; + + private String keyword; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java new file mode 100644 index 0000000..fcc4a3b --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.enums.DictEnum; +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class MonitorOverviewMap { + /** + * 设备ID + */ + private Long monitorId; + /** + * 设备名称 + */ + private String monitorName; + /** + * 经度 + */ + private String longitude; + /** + * 纬度 + */ + private String latitude; + /** + * 场站名 + */ + private String stationName; + + /** + * 位置 + */ + private String location; + + /** + * 设备状态(字典) + */ + @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) + private String deviceStatus; + + /** + * 设备状态名称 + */ + private String deviceStatusName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java new file mode 100644 index 0000000..4a35cd4 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import lombok.Data; + +@Data +public class MonitorPointList { + private Long id; + private String monitorName; +} + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java new file mode 100644 index 0000000..e28e18d --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +import java.util.List; + +@Data +public class StationPointList { + + private Long id; + private String stationName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java new file mode 100644 index 0000000..389f3ff --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java @@ -0,0 +1,22 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class StationStateStatisticsVO{ + + private Long stationId; + + private String stationName; + + private Long total; + + private Long online; + + private Long offline; + +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java index 7c41879..f2a35bb 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.baomidou.mybatisplus.extension.service.IService; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java index 34fce82..e435fcc 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java @@ -2,12 +2,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import com.baomidou.mybatisplus.extension.service.IService; -import javax.xml.ws.Response; import java.util.List; /** diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java new file mode 100644 index 0000000..c5f935e --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java @@ -0,0 +1,15 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class MonitorListDTO { + + private Long stationId; + + private String keyword; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java new file mode 100644 index 0000000..fcc4a3b --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.enums.DictEnum; +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class MonitorOverviewMap { + /** + * 设备ID + */ + private Long monitorId; + /** + * 设备名称 + */ + private String monitorName; + /** + * 经度 + */ + private String longitude; + /** + * 纬度 + */ + private String latitude; + /** + * 场站名 + */ + private String stationName; + + /** + * 位置 + */ + private String location; + + /** + * 设备状态(字典) + */ + @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) + private String deviceStatus; + + /** + * 设备状态名称 + */ + private String deviceStatusName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java new file mode 100644 index 0000000..4a35cd4 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import lombok.Data; + +@Data +public class MonitorPointList { + private Long id; + private String monitorName; +} + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java new file mode 100644 index 0000000..e28e18d --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +import java.util.List; + +@Data +public class StationPointList { + + private Long id; + private String stationName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java new file mode 100644 index 0000000..389f3ff --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java @@ -0,0 +1,22 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class StationStateStatisticsVO{ + + private Long stationId; + + private String stationName; + + private Long total; + + private Long online; + + private Long offline; + +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java index 7c41879..f2a35bb 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.baomidou.mybatisplus.extension.service.IService; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java index 34fce82..e435fcc 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java @@ -2,12 +2,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import com.baomidou.mybatisplus.extension.service.IService; -import javax.xml.ws.Response; import java.util.List; /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java index 13591f6..1e15b8a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java @@ -9,16 +9,15 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.dao.BusMonipoiInfoMapper; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; import com.casic.missiles.util.DictCodeUtils; import lombok.AllArgsConstructor; -import org.apache.commons.lang3.StringUtils; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java new file mode 100644 index 0000000..c5f935e --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java @@ -0,0 +1,15 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class MonitorListDTO { + + private Long stationId; + + private String keyword; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java new file mode 100644 index 0000000..fcc4a3b --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.enums.DictEnum; +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class MonitorOverviewMap { + /** + * 设备ID + */ + private Long monitorId; + /** + * 设备名称 + */ + private String monitorName; + /** + * 经度 + */ + private String longitude; + /** + * 纬度 + */ + private String latitude; + /** + * 场站名 + */ + private String stationName; + + /** + * 位置 + */ + private String location; + + /** + * 设备状态(字典) + */ + @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) + private String deviceStatus; + + /** + * 设备状态名称 + */ + private String deviceStatusName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java new file mode 100644 index 0000000..4a35cd4 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import lombok.Data; + +@Data +public class MonitorPointList { + private Long id; + private String monitorName; +} + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java new file mode 100644 index 0000000..e28e18d --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +import java.util.List; + +@Data +public class StationPointList { + + private Long id; + private String stationName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java new file mode 100644 index 0000000..389f3ff --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java @@ -0,0 +1,22 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class StationStateStatisticsVO{ + + private Long stationId; + + private String stationName; + + private Long total; + + private Long online; + + private Long offline; + +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java index 7c41879..f2a35bb 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.baomidou.mybatisplus.extension.service.IService; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java index 34fce82..e435fcc 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java @@ -2,12 +2,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import com.baomidou.mybatisplus.extension.service.IService; -import javax.xml.ws.Response; import java.util.List; /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java index 13591f6..1e15b8a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java @@ -9,16 +9,15 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.dao.BusMonipoiInfoMapper; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; import com.casic.missiles.util.DictCodeUtils; import lombok.AllArgsConstructor; -import org.apache.commons.lang3.StringUtils; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusObserpoiInfoServiceImpl.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusObserpoiInfoServiceImpl.java index 13c646c..a2bb70d 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusObserpoiInfoServiceImpl.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusObserpoiInfoServiceImpl.java @@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; import com.casic.missiles.modular.system.service.IBusObserpoiInfoService; diff --git a/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java new file mode 100644 index 0000000..d58e891 --- /dev/null +++ b/casic-common/src/main/java/com/casic/missiles/dto/KeywordDTO.java @@ -0,0 +1,9 @@ +package com.casic.missiles.dto; + +import lombok.Data; + + +@Data +public class KeywordDTO { + private String keyword; +} diff --git a/casic-data/pom.xml b/casic-data/pom.xml index a076800..ce4e1c3 100644 --- a/casic-data/pom.xml +++ b/casic-data/pom.xml @@ -40,6 +40,7 @@ ${boot.version} provided + com.casic @@ -47,6 +48,13 @@ 2.0.0 compile + + + com.casic + casic-station + 2.0.0 + compile + com.casic casic-quartz diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java index e46b2c4..5d1dc8c 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/BusPatrolLogController.java @@ -3,13 +3,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.BusPatrolLogDTO; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.service.IBusPatrolLogService; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; +import javax.validation.Valid; + /** * 巡检日志控制器 * @@ -17,7 +22,7 @@ * @Date 2023-04-18 15:44:25 */ @RestController -@RequestMapping("/busPatrolLog") +@RequestMapping("/cruiseLog") public class BusPatrolLogController extends ExportController { @@ -28,17 +33,18 @@ * 获取巡检日志分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long monitorId, String startTime, String endTime) { + public Object listPage(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, monitorId, startTime, endTime))); + return ResponseData.success(super.packForBT(busPatrolLogService.patrolLogListPage(page, busPatrolLogDTO.getMonitorId(), + busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()))); } /** * 删除巡检日志 */ @RequestMapping(value = "/delete") - public Object delete(Long monitorId, String startTime, String endTime) { - return busPatrolLogService.deletePatrolLog(monitorId, startTime, endTime); + public Object delete(@RequestBody @Valid BusPatrolLogDTO busPatrolLogDTO) { + return busPatrolLogService.deletePatrolLog(busPatrolLogDTO.getMonitorId(), busPatrolLogDTO.getStartTime(), busPatrolLogDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java index 30eccdb..11f2eb8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/controller/DataGasController.java @@ -1,13 +1,17 @@ package com.casic.missiles.modular.system.controller; +import cn.hutool.core.lang.Assert; import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; +import com.casic.missiles.modular.system.dto.DataGasDTO; import com.casic.missiles.modular.system.service.IDataGasService; -import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; +import javax.validation.Valid; import java.io.IOException; -import java.util.List; /** * 甲烷数据控制器 @@ -23,13 +27,15 @@ @Autowired private IDataGasService dataGasService; - /** * 获取甲烷数据列表 */ @RequestMapping(value = "/hisList") - public Object historicalData(Long monitorId,String startTime,String endTime) throws IOException { - return dataGasService.historicalData(monitorId,startTime,endTime); + public Object historicalData(@RequestBody @Valid DataGasDTO dataGasDTO,BindingResult bindingResult) throws IOException { + Assert.isFalse(bindingResult.hasErrors(), () -> { + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + }); + return dataGasService.historicalData(dataGasDTO.getMonitorId(),dataGasDTO.getStartTime(),dataGasDTO.getEndTime()); } } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java index 4501ea2..a5f6c33 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/BusPatrolLogMapper.java @@ -21,11 +21,11 @@ List patrolLogListPage(@Param("page") Page page, @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); Integer deletePatrolLog( @Param("scope") DataScope dataScope, @Param("monitorId") Long monitorId, - @Param("monitorId") String startTime, - @Param("monitorId") String endTime); + @Param("startTime") String startTime, + @Param("endTime") String endTime); } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml index a93305a..db276c8 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordMapper.xml @@ -109,17 +109,24 @@ SELECT ALARM_TYPE AS alarmType ,count(ar.id) AS count FROM alarm_record ar - JOIN (SELECT id,STATION_ID - FROM bus_monipoi_info - WHERE VALID = 0 - - AND id= #{request.monitorId} - + JOIN ( + SELECT id,STATION_ID + FROM bus_monipoi_info + WHERE VALID = 0 )bi ON ar.MONITOR_ID = bi.ID JOIN ( SELECT ID,DEPT_ID diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml index a0e0792..2b36c4f 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusPatrolLogMapper.xml @@ -27,14 +27,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} @@ -48,14 +48,14 @@ FROM bus_station_info WHERE valid=0 )bsi ON bsi.idd=station_id - WHERE VAILD=0 + WHERE 1=1 AND monitor_id = #{monitorId} AND TS = ]]> #{startTime} - + AND TS #{endTime} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java new file mode 100644 index 0000000..3a276ea --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/BusPatrolLogDTO.java @@ -0,0 +1,16 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class BusPatrolLogDTO { + + private Long monitorId; + private String startTime; + private String endTime; + +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java new file mode 100644 index 0000000..4f83346 --- /dev/null +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/dto/DataGasDTO.java @@ -0,0 +1,19 @@ +package com.casic.missiles.modular.system.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class DataGasDTO { + @NotNull + private Long monitorId; + @NotNull + private String startTime; + @NotNull + private String endTime; +} diff --git a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java index 1df6ca2..8b30752 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/system/service/impl/BusPatrolLogServiceImpl.java @@ -1,15 +1,22 @@ package com.casic.missiles.modular.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.es.ElasticSearchQuery; +import com.casic.missiles.es.ElasticSearchUtil; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.consts.DataConst; +import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; +import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.model.BusPatrolLog; import com.casic.missiles.modular.system.dao.BusPatrolLogMapper; import com.casic.missiles.modular.system.service.IBusPatrolLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,13 +36,21 @@ private final AbstractPermissionContext permissionContext; + private final BusObserpoiInfoMapper obserpoiInfoMapper; @Override public Page patrolLogListPage(Page page, Long monitorId, String startTime, String endTime) { DataScope dataScope = permissionContext.getAuthService().getLoginUserDataScope(); dataScope.setScopeName("DEPT_ID"); - List busPatrolLogs = this.baseMapper.patrolLogListPage(page,dataScope, monitorId, startTime, endTime); - page.setRecords(busPatrolLogs); + List obserpoiInfoList = getObserpoiList(monitorId); + ElasticSearchQuery elasticSearchQuery = new ElasticSearchQuery(); + if (ObjectUtils.isNotEmpty(monitorId)) { + elasticSearchQuery.term("monitorId", monitorId); + } + elasticSearchQuery.range("logTime", startTime, endTime); + elasticSearchQuery.sort("logTime", "DESC"); + elasticSearchQuery.size(Integer.valueOf(String.valueOf(page.getSize()))); +// List dataGasEsList = ElasticSearchUtil.searchQuery(DataConst.DATA_GAS_ES_INDEX, DataConst.DATA_GAS_ES_TYPE, elasticSearchQuery); return page; } @@ -46,4 +61,11 @@ this.baseMapper.deletePatrolLog(dataScope, monitorId, startTime, endTime); return ResponseData.success(); } + + private List getObserpoiList(Long monitorId) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(ObjectUtils.isNotEmpty(monitorId), "monitor_id", monitorId); + List obserpoiInfoList = obserpoiInfoMapper.selectList(wrapper); + return obserpoiInfoList; + } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java index ec3f887..d08efc1 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/HCNetServiceImpl.java @@ -7,6 +7,7 @@ import com.casic.missiles.enums.StatusEnum; import com.casic.missiles.es.DataGasEs; import com.casic.missiles.modular.system.dto.*; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.*; import com.casic.missiles.modular.system.task.AutoCruiseResertTask; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java index 61b040e..0f670bf 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusMonipoiInfoController.java @@ -1,19 +1,25 @@ package com.casic.missiles.modular.system.controller; import cn.hutool.core.lang.Assert; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.system.dto.monitor.MonitorListDTO; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.Objects; /** * 监测点/设备信息控制器 @@ -33,17 +39,17 @@ * 获取监测点/设备信息列表 */ @RequestMapping(value = "/list") - public Object list(Long stationId) { - return ResponseData.success(busMonipoiInfoService.monitorList(stationId)); + public Object list(@RequestBody @Valid MonitorListDTO monitorListDTO) { + return ResponseData.success(busMonipoiInfoService.monitorList(monitorListDTO.getStationId())); } /** * 获取监测点/设备信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(Long stationId, String keyword) throws Exception { + public Object listPage(@RequestBody @Valid MonitorListDTO monitorListDTO) throws Exception { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, stationId, keyword))); + return ResponseData.success(super.packForBT(busMonipoiInfoService.monitorListPage(page, monitorListDTO.getStationId(), monitorListDTO.getKeyword()))); } /** @@ -65,6 +71,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busMonipoiInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busMonipoiInfoService.updateMonitor(busMonipoiInfo); } @@ -72,16 +81,19 @@ * 删除监测点/设备信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long monitorId) { - return busMonipoiInfoService.deleteMonitor(monitorId); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busMonipoiInfoService.deleteMonitor(idDTO.getId()); } /** * 监测点/设备信息详情 */ @RequestMapping(value = "/info") - public Object detail(Long id) { - return busMonipoiInfoService.monitorDetail(id); + public Object detail(@RequestBody @Valid IdDTO idDTO ) { + return busMonipoiInfoService.monitorDetail(idDTO.getId()); } /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java index d77dac0..21c2dc6 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/controller/BusStationInfoController.java @@ -4,17 +4,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.KeywordDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.service.IBusStationInfoService; -import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import javax.validation.Valid; +import java.util.Objects; /** * 场站信息控制器 @@ -43,9 +46,9 @@ * 获取场站信息分页列表 */ @RequestMapping(value = "/listPage") - public Object listPage(String keyword) { + public Object listPage(@RequestBody @Valid KeywordDTO keywordDTO) { Page page = PageFactory.defaultPage(); - return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keyword))); + return ResponseData.success(super.packForBT(busStationInfoService.stationListPage(page, keywordDTO.getKeyword()))); } /** @@ -67,6 +70,9 @@ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); + Assert.isFalse(Objects.isNull(busStationInfo.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); return busStationInfoService.updateStation(busStationInfo); } @@ -74,8 +80,11 @@ * 删除场站信息 */ @RequestMapping(value = "/delete") - public Object delete(@RequestParam Long id) { - return busStationInfoService.deleteStation(id); + public Object delete(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return busStationInfoService.deleteStation(idDTO.getId()); } diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java index a74ae3b..a1181c7 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusMonipoiInfoMapper.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java index 879b935..224d73a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/BusStationInfoMapper.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import org.apache.ibatis.annotations.Param; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml index 5d5c18d..ae9ae62 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusMonipoiInfoMapper.xml @@ -37,7 +37,7 @@ ID AS id, MONITOR_NAME AS monitorName, STATION_ID AS stationId, LOCATION AS location, TYPE AS type, DEVICE_CODE AS deviceCode, DEVICE_IP AS deviceIp, DEVICE_PORT AS devicePort, DEVICE_USER AS deviceUser, DEVICE_PASSWORD AS devicePassword, NVR_IP AS nvrIp, NVR_PORT AS nvrPort, NVR_CHANNEL AS nvrChannel, NVR_USER AS nvrUser, NVR_PASSWORD AS nvrPassword, DOOR_IP AS doorIp, DOOR_SN AS doorSn, LONGITUDE AS longitude, LATITUDE AS latitude, DESCRIPTION AS description, DEVICE_STATUS AS deviceStatus, LINE_NUM AS lineNum, PRESET_INTERVAL AS presetInterval, VALID AS valid, SETUP_DATE AS setupDate, TS AS ts - SELECT bmi.id,monitor_name AS monitorName FROM bus_monipoi_info bmi JOIN ( @@ -69,7 +69,7 @@ - SELECT a.STATION_ID as stationId, b.STATION_NAME as stationName, @@ -83,7 +83,7 @@ WHERE a.VALID = '0' and b.VALID = '0' and a.DEVICE_IP = #{deviceIp} - SELECT id AS monitorId, monitor_name AS monitorName, longitude, diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml index 7756ed2..00be05f 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dao/mapping/BusStationInfoMapper.xml @@ -16,7 +16,7 @@ ID, STATION_NAME AS stationName, DEPT_ID AS deptId, VALID AS valid, TS AS ts - SELECT id,station_name AS "stationName" FROM bus_station_info @@ -31,20 +31,21 @@ - + SELECT COALESCE(total, 0) AS total,stationId,stationName, COALESCE(online, 0) AS online,COALESCE(offline, 0) AS offline + FROM + ( + SELECT id AS stationId, DEPT_ID, station_name AS "stationName" + FROM bus_station_info + WHERE valid = 0 + ) bsi + LEFT JOIN ( + SELECT count( id ) AS total, COALESCE(SUM( CASE DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END )) AS online, + COALESCE (SUM( CASE DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END )) AS offline, + station_id + FROM bus_monipoi_info WHERE valid = 0 + GROUP BY station_id + ) bi ON bsi.stationId = station_id diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java deleted file mode 100644 index 80bfa1c..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorBaseInfo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class MonitorBaseInfo implements Serializable { - - private Long stationId; - private String stationName; - private Long monitorId; - private String monitorName; - private String devcode; - private String type; - private Integer lineNum; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java deleted file mode 100644 index ab55163..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorOverviewMap.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import com.casic.missiles.annotation.DictCodeField; -import com.casic.missiles.enums.DictEnum; -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class MonitorOverviewMap { - /** - * 设备ID - */ - private Long monitorId; - /** - * 设备名称 - */ - private String monitorName; - /** - * 经度 - */ - private String longitude; - /** - * 纬度 - */ - private String latitude; - /** - * 场站名 - */ - private String stationName; - - /** - * 位置 - */ - private String location; - - /** - * 设备状态(字典) - */ - @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) - private String deviceStatus; - - /** - * 设备状态名称 - */ - private String deviceStatusName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java deleted file mode 100644 index eae2456..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/MonitorPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import lombok.Data; - -@Data -public class MonitorPointList { - private Long id; - private String monitorName; -} - diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java deleted file mode 100644 index 70382a7..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/ObserpoiDto.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import cn.hutool.core.util.ObjectUtil; -import com.casic.missiles.modular.system.model.BusObserpoiInfo; -import lombok.Data; - -@Data -public class ObserpoiDto { - - /** - * 监控点位ID - */ - private Long monitorId; - /** - * 预置点编号 - */ - private Integer serialNum; - /** - * 方位 - */ - private Double direction; - /** - * 俯仰角 - */ - private Double pitch; - /** - * 停留时间 - */ - private Integer stopTime; - /** - * 预置点截图的base64编码 - */ - private String thumbnail; - - /** - * 线路编号 - */ - private Integer lineNum; - - - public static BusObserpoiInfo obserDtoToInfo(ObserpoiDto obserpoiDto){ - BusObserpoiInfo obserpoiInfo = new BusObserpoiInfo(); - obserpoiInfo.setMonitorId(obserpoiDto.getMonitorId()); - obserpoiInfo.setSerialNum(obserpoiDto.getSerialNum()); - obserpoiInfo.setLineNum(obserpoiDto.getLineNum()); - obserpoiInfo.setDirection(obserpoiDto.getDirection()); - obserpoiInfo.setPitch(obserpoiDto.getPitch()); -// obserpoiInfo.setStopTime(obserpoiDto.getStopTime()); - if(ObjectUtil.isNotEmpty(obserpoiDto.getThumbnail())){ - String thumb = obserpoiDto.getThumbnail(); - if(thumb.startsWith("data:image")){ - thumb = thumb.split(",")[1]; - } - } - return obserpoiInfo; - } - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java deleted file mode 100644 index 3779cf1..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationPointList.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -import java.util.List; - -@Data -public class StationPointList { - - private Long id; - private String stationName; -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java deleted file mode 100644 index aca8803..0000000 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/StationStateStatisticsVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.casic.missiles.modular.system.dto; - -import lombok.Data; - -/** - * @author cz - * @date 2023-04-21 - */ -@Data -public class StationStateStatisticsVO{ - - private Long stationId; - - private String stationName; - - private Long total; - - private Long online; - - private Long offline; - -} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java new file mode 100644 index 0000000..c7d9785 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorBaseInfo.java @@ -0,0 +1,17 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class MonitorBaseInfo implements Serializable { + + private Long stationId; + private String stationName; + private Long monitorId; + private String monitorName; + private String devcode; + private String type; + private Integer lineNum; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java new file mode 100644 index 0000000..c5f935e --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorListDTO.java @@ -0,0 +1,15 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-23 + */ +@Data +public class MonitorListDTO { + + private Long stationId; + + private String keyword; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java new file mode 100644 index 0000000..fcc4a3b --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorOverviewMap.java @@ -0,0 +1,49 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.enums.DictEnum; +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class MonitorOverviewMap { + /** + * 设备ID + */ + private Long monitorId; + /** + * 设备名称 + */ + private String monitorName; + /** + * 经度 + */ + private String longitude; + /** + * 纬度 + */ + private String latitude; + /** + * 场站名 + */ + private String stationName; + + /** + * 位置 + */ + private String location; + + /** + * 设备状态(字典) + */ + @DictCodeField(message = "设备类型描述不合法", cacheName = DictEnum.DEVICE_TYPE) + private String deviceStatus; + + /** + * 设备状态名称 + */ + private String deviceStatusName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java new file mode 100644 index 0000000..4a35cd4 --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/monitor/MonitorPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.monitor; + +import lombok.Data; + +import lombok.Data; + +@Data +public class MonitorPointList { + private Long id; + private String monitorName; +} + diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java new file mode 100644 index 0000000..e28e18d --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationPointList.java @@ -0,0 +1,12 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +import java.util.List; + +@Data +public class StationPointList { + + private Long id; + private String stationName; +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java new file mode 100644 index 0000000..389f3ff --- /dev/null +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/dto/station/StationStateStatisticsVO.java @@ -0,0 +1,22 @@ +package com.casic.missiles.modular.system.dto.station; + +import lombok.Data; + +/** + * @author cz + * @date 2023-04-21 + */ +@Data +public class StationStateStatisticsVO{ + + private Long stationId; + + private String stationName; + + private Long total; + + private Long online; + + private Long offline; + +} diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java index 7c41879..f2a35bb 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusMonipoiInfoService.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.baomidou.mybatisplus.extension.service.IService; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java index 34fce82..e435fcc 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/IBusStationInfoService.java @@ -2,12 +2,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import com.baomidou.mybatisplus.extension.service.IService; -import javax.xml.ws.Response; import java.util.List; /** diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java index 13591f6..1e15b8a 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusMonipoiInfoServiceImpl.java @@ -9,16 +9,15 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; -import com.casic.missiles.modular.system.dto.MonitorOverviewMap; -import com.casic.missiles.modular.system.dto.MonitorPointList; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorOverviewMap; +import com.casic.missiles.modular.system.dto.monitor.MonitorPointList; import com.casic.missiles.modular.system.model.BusMonipoiInfo; import com.casic.missiles.modular.system.dao.BusMonipoiInfoMapper; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; import com.casic.missiles.util.DictCodeUtils; import lombok.AllArgsConstructor; -import org.apache.commons.lang3.StringUtils; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusObserpoiInfoServiceImpl.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusObserpoiInfoServiceImpl.java index 13c646c..a2bb70d 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusObserpoiInfoServiceImpl.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusObserpoiInfoServiceImpl.java @@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.modular.system.dao.BusObserpoiInfoMapper; -import com.casic.missiles.modular.system.dto.MonitorBaseInfo; +import com.casic.missiles.modular.system.dto.monitor.MonitorBaseInfo; import com.casic.missiles.modular.system.model.BusObserpoiInfo; import com.casic.missiles.modular.system.service.IBusMonipoiInfoService; import com.casic.missiles.modular.system.service.IBusObserpoiInfoService; diff --git a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusStationInfoServiceImpl.java b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusStationInfoServiceImpl.java index ff233c5..676c08c 100644 --- a/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusStationInfoServiceImpl.java +++ b/casic-station/src/main/java/com/casic/missiles/modular/system/service/impl/BusStationInfoServiceImpl.java @@ -6,17 +6,15 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.response.ResponseData; -import com.casic.missiles.modular.system.dto.StationPointList; -import com.casic.missiles.modular.system.dto.StationStateStatisticsVO; +import com.casic.missiles.modular.system.dto.station.StationPointList; +import com.casic.missiles.modular.system.dto.station.StationStateStatisticsVO; import com.casic.missiles.modular.system.model.BusStationInfo; import com.casic.missiles.modular.system.dao.BusStationInfoMapper; import com.casic.missiles.modular.system.service.IBusStationInfoService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import javax.xml.ws.Response; import java.util.List; /**