diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java new file mode 100644 index 0000000..3546699 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.device.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SelectProductDTO { + + @ApiModelProperty("值") + private Long id; + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("设备类型ID") + private String deviceTypeId; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java new file mode 100644 index 0000000..3546699 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.device.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SelectProductDTO { + + @ApiModelProperty("值") + private Long id; + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("设备类型ID") + private String deviceTypeId; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java index f07ae0e..2e2d234 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java @@ -6,11 +6,14 @@ import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; import lombok.Getter; import lombok.Setter; import java.io.Serializable; import java.time.LocalDate; +import java.util.Date; /** *

@@ -20,8 +23,8 @@ * @author zt * @since 2024-07-16 */ -@Getter -@Setter +@Builder +@Data @TableName("bus_config") @ApiModel(value = "BusConfig对象", description = "设备下发配置信息 ") public class BusConfig implements Serializable { @@ -40,10 +43,22 @@ @TableField("DEVICE_TYPE") private Long deviceType; + @ApiModelProperty("产品id") + @TableField("PRODUCT_ID") + private Long productId; + @ApiModelProperty("配置信息") @TableField("FRAMECONTENT") private String framecontent; + @ApiModelProperty("配置描述信息") + @TableField("FRAMECONTENT_DESC") + private String framecontentDesc; + + @ApiModelProperty("备注") + @TableField("MARKER") + private String maker; + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") @TableField("`STATUS`") private String status; @@ -52,13 +67,40 @@ @TableField("OPERATOR") private Long operator; + + @ApiModelProperty("操作员名称") + @TableField("OPERATOR_NAME") + private String operatorName; + @ApiModelProperty("下发时间") @TableField("SENDTIME") - private LocalDate sendtime; + private Date sendtime; @ApiModelProperty("界面配置时间") @TableField("WRITETIME") - private LocalDate writetime; + private Date writetime; + + @ApiModelProperty("设备类型名称,新加必传") + @TableField(exist = false) + private String deviceTypeName; + public BusConfig() { + } + + public BusConfig(Long id, String devcode, Long deviceType, Long productId, String framecontent, String framecontentDesc, String maker, String status, Long operator, String operatorName, Date sendtime, Date writetime, String deviceTypeName) { + this.id = id; + this.devcode = devcode; + this.deviceType = deviceType; + this.productId = productId; + this.framecontent = framecontent; + this.framecontentDesc = framecontentDesc; + this.maker = maker; + this.status = status; + this.operator = operator; + this.operatorName = operatorName; + this.sendtime = sendtime; + this.writetime = writetime; + this.deviceTypeName = deviceTypeName; + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java new file mode 100644 index 0000000..3546699 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.device.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SelectProductDTO { + + @ApiModelProperty("值") + private Long id; + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("设备类型ID") + private String deviceTypeId; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java index f07ae0e..2e2d234 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java @@ -6,11 +6,14 @@ import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; import lombok.Getter; import lombok.Setter; import java.io.Serializable; import java.time.LocalDate; +import java.util.Date; /** *

@@ -20,8 +23,8 @@ * @author zt * @since 2024-07-16 */ -@Getter -@Setter +@Builder +@Data @TableName("bus_config") @ApiModel(value = "BusConfig对象", description = "设备下发配置信息 ") public class BusConfig implements Serializable { @@ -40,10 +43,22 @@ @TableField("DEVICE_TYPE") private Long deviceType; + @ApiModelProperty("产品id") + @TableField("PRODUCT_ID") + private Long productId; + @ApiModelProperty("配置信息") @TableField("FRAMECONTENT") private String framecontent; + @ApiModelProperty("配置描述信息") + @TableField("FRAMECONTENT_DESC") + private String framecontentDesc; + + @ApiModelProperty("备注") + @TableField("MARKER") + private String maker; + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") @TableField("`STATUS`") private String status; @@ -52,13 +67,40 @@ @TableField("OPERATOR") private Long operator; + + @ApiModelProperty("操作员名称") + @TableField("OPERATOR_NAME") + private String operatorName; + @ApiModelProperty("下发时间") @TableField("SENDTIME") - private LocalDate sendtime; + private Date sendtime; @ApiModelProperty("界面配置时间") @TableField("WRITETIME") - private LocalDate writetime; + private Date writetime; + + @ApiModelProperty("设备类型名称,新加必传") + @TableField(exist = false) + private String deviceTypeName; + public BusConfig() { + } + + public BusConfig(Long id, String devcode, Long deviceType, Long productId, String framecontent, String framecontentDesc, String maker, String status, Long operator, String operatorName, Date sendtime, Date writetime, String deviceTypeName) { + this.id = id; + this.devcode = devcode; + this.deviceType = deviceType; + this.productId = productId; + this.framecontent = framecontent; + this.framecontentDesc = framecontentDesc; + this.maker = maker; + this.status = status; + this.operator = operator; + this.operatorName = operatorName; + this.sendtime = sendtime; + this.writetime = writetime; + this.deviceTypeName = deviceTypeName; + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java index 3489090..4b8fa45 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java @@ -160,4 +160,8 @@ @TableField(exist = false) private String monitorStateName; + @ApiModelProperty("感知设备数量") + @TableField(exist = false) + private Long deviceCount; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java new file mode 100644 index 0000000..3546699 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.device.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SelectProductDTO { + + @ApiModelProperty("值") + private Long id; + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("设备类型ID") + private String deviceTypeId; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java index f07ae0e..2e2d234 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java @@ -6,11 +6,14 @@ import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; import lombok.Getter; import lombok.Setter; import java.io.Serializable; import java.time.LocalDate; +import java.util.Date; /** *

@@ -20,8 +23,8 @@ * @author zt * @since 2024-07-16 */ -@Getter -@Setter +@Builder +@Data @TableName("bus_config") @ApiModel(value = "BusConfig对象", description = "设备下发配置信息 ") public class BusConfig implements Serializable { @@ -40,10 +43,22 @@ @TableField("DEVICE_TYPE") private Long deviceType; + @ApiModelProperty("产品id") + @TableField("PRODUCT_ID") + private Long productId; + @ApiModelProperty("配置信息") @TableField("FRAMECONTENT") private String framecontent; + @ApiModelProperty("配置描述信息") + @TableField("FRAMECONTENT_DESC") + private String framecontentDesc; + + @ApiModelProperty("备注") + @TableField("MARKER") + private String maker; + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") @TableField("`STATUS`") private String status; @@ -52,13 +67,40 @@ @TableField("OPERATOR") private Long operator; + + @ApiModelProperty("操作员名称") + @TableField("OPERATOR_NAME") + private String operatorName; + @ApiModelProperty("下发时间") @TableField("SENDTIME") - private LocalDate sendtime; + private Date sendtime; @ApiModelProperty("界面配置时间") @TableField("WRITETIME") - private LocalDate writetime; + private Date writetime; + + @ApiModelProperty("设备类型名称,新加必传") + @TableField(exist = false) + private String deviceTypeName; + public BusConfig() { + } + + public BusConfig(Long id, String devcode, Long deviceType, Long productId, String framecontent, String framecontentDesc, String maker, String status, Long operator, String operatorName, Date sendtime, Date writetime, String deviceTypeName) { + this.id = id; + this.devcode = devcode; + this.deviceType = deviceType; + this.productId = productId; + this.framecontent = framecontent; + this.framecontentDesc = framecontentDesc; + this.maker = maker; + this.status = status; + this.operator = operator; + this.operatorName = operatorName; + this.sendtime = sendtime; + this.writetime = writetime; + this.deviceTypeName = deviceTypeName; + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java index 3489090..4b8fa45 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java @@ -160,4 +160,8 @@ @TableField(exist = false) private String monitorStateName; + @ApiModelProperty("感知设备数量") + @TableField(exist = false) + private Long deviceCount; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java index a5b831a..36bce12 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java @@ -2,9 +2,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 产品管理 服务类 @@ -17,4 +20,6 @@ Page pageList( Page page, BaseProductDTO requestDTO); + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java new file mode 100644 index 0000000..3546699 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.device.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SelectProductDTO { + + @ApiModelProperty("值") + private Long id; + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("设备类型ID") + private String deviceTypeId; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java index f07ae0e..2e2d234 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java @@ -6,11 +6,14 @@ import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; import lombok.Getter; import lombok.Setter; import java.io.Serializable; import java.time.LocalDate; +import java.util.Date; /** *

@@ -20,8 +23,8 @@ * @author zt * @since 2024-07-16 */ -@Getter -@Setter +@Builder +@Data @TableName("bus_config") @ApiModel(value = "BusConfig对象", description = "设备下发配置信息 ") public class BusConfig implements Serializable { @@ -40,10 +43,22 @@ @TableField("DEVICE_TYPE") private Long deviceType; + @ApiModelProperty("产品id") + @TableField("PRODUCT_ID") + private Long productId; + @ApiModelProperty("配置信息") @TableField("FRAMECONTENT") private String framecontent; + @ApiModelProperty("配置描述信息") + @TableField("FRAMECONTENT_DESC") + private String framecontentDesc; + + @ApiModelProperty("备注") + @TableField("MARKER") + private String maker; + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") @TableField("`STATUS`") private String status; @@ -52,13 +67,40 @@ @TableField("OPERATOR") private Long operator; + + @ApiModelProperty("操作员名称") + @TableField("OPERATOR_NAME") + private String operatorName; + @ApiModelProperty("下发时间") @TableField("SENDTIME") - private LocalDate sendtime; + private Date sendtime; @ApiModelProperty("界面配置时间") @TableField("WRITETIME") - private LocalDate writetime; + private Date writetime; + + @ApiModelProperty("设备类型名称,新加必传") + @TableField(exist = false) + private String deviceTypeName; + public BusConfig() { + } + + public BusConfig(Long id, String devcode, Long deviceType, Long productId, String framecontent, String framecontentDesc, String maker, String status, Long operator, String operatorName, Date sendtime, Date writetime, String deviceTypeName) { + this.id = id; + this.devcode = devcode; + this.deviceType = deviceType; + this.productId = productId; + this.framecontent = framecontent; + this.framecontentDesc = framecontentDesc; + this.maker = maker; + this.status = status; + this.operator = operator; + this.operatorName = operatorName; + this.sendtime = sendtime; + this.writetime = writetime; + this.deviceTypeName = deviceTypeName; + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java index 3489090..4b8fa45 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java @@ -160,4 +160,8 @@ @TableField(exist = false) private String monitorStateName; + @ApiModelProperty("感知设备数量") + @TableField(exist = false) + private Long deviceCount; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java index a5b831a..36bce12 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java @@ -2,9 +2,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 产品管理 服务类 @@ -17,4 +20,6 @@ Page pageList( Page page, BaseProductDTO requestDTO); + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java index d23a5a3..a7942d0 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java @@ -1,7 +1,10 @@ package com.casic.missiles.modular.device.service; -import com.casic.missiles.modular.device.entity.BusConfig; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; /** *

@@ -13,4 +16,8 @@ */ public interface IBusConfigService extends IService { + boolean saveConfig(BusConfigDTO busConfigTO); + + Page pageList(Page page, BusConfigRequestDTO requestDTO); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java new file mode 100644 index 0000000..3546699 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.device.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SelectProductDTO { + + @ApiModelProperty("值") + private Long id; + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("设备类型ID") + private String deviceTypeId; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java index f07ae0e..2e2d234 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java @@ -6,11 +6,14 @@ import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; import lombok.Getter; import lombok.Setter; import java.io.Serializable; import java.time.LocalDate; +import java.util.Date; /** *

@@ -20,8 +23,8 @@ * @author zt * @since 2024-07-16 */ -@Getter -@Setter +@Builder +@Data @TableName("bus_config") @ApiModel(value = "BusConfig对象", description = "设备下发配置信息 ") public class BusConfig implements Serializable { @@ -40,10 +43,22 @@ @TableField("DEVICE_TYPE") private Long deviceType; + @ApiModelProperty("产品id") + @TableField("PRODUCT_ID") + private Long productId; + @ApiModelProperty("配置信息") @TableField("FRAMECONTENT") private String framecontent; + @ApiModelProperty("配置描述信息") + @TableField("FRAMECONTENT_DESC") + private String framecontentDesc; + + @ApiModelProperty("备注") + @TableField("MARKER") + private String maker; + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") @TableField("`STATUS`") private String status; @@ -52,13 +67,40 @@ @TableField("OPERATOR") private Long operator; + + @ApiModelProperty("操作员名称") + @TableField("OPERATOR_NAME") + private String operatorName; + @ApiModelProperty("下发时间") @TableField("SENDTIME") - private LocalDate sendtime; + private Date sendtime; @ApiModelProperty("界面配置时间") @TableField("WRITETIME") - private LocalDate writetime; + private Date writetime; + + @ApiModelProperty("设备类型名称,新加必传") + @TableField(exist = false) + private String deviceTypeName; + public BusConfig() { + } + + public BusConfig(Long id, String devcode, Long deviceType, Long productId, String framecontent, String framecontentDesc, String maker, String status, Long operator, String operatorName, Date sendtime, Date writetime, String deviceTypeName) { + this.id = id; + this.devcode = devcode; + this.deviceType = deviceType; + this.productId = productId; + this.framecontent = framecontent; + this.framecontentDesc = framecontentDesc; + this.maker = maker; + this.status = status; + this.operator = operator; + this.operatorName = operatorName; + this.sendtime = sendtime; + this.writetime = writetime; + this.deviceTypeName = deviceTypeName; + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java index 3489090..4b8fa45 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java @@ -160,4 +160,8 @@ @TableField(exist = false) private String monitorStateName; + @ApiModelProperty("感知设备数量") + @TableField(exist = false) + private Long deviceCount; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java index a5b831a..36bce12 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java @@ -2,9 +2,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 产品管理 服务类 @@ -17,4 +20,6 @@ Page pageList( Page page, BaseProductDTO requestDTO); + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java index d23a5a3..a7942d0 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java @@ -1,7 +1,10 @@ package com.casic.missiles.modular.device.service; -import com.casic.missiles.modular.device.entity.BusConfig; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; /** *

@@ -13,4 +16,8 @@ */ public interface IBusConfigService extends IService { + boolean saveConfig(BusConfigDTO busConfigTO); + + Page pageList(Page page, BusConfigRequestDTO requestDTO); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java new file mode 100644 index 0000000..de5ea57 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java @@ -0,0 +1,24 @@ +package com.casic.missiles.modular.device.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; + +import java.util.List; + +/** + *

+ * 闸井监测 服务类 + *

+ * + * @author zt + * @since 2024-07-16 + */ +public interface IBusStationMonitorService extends IService { + + Page pageList(Page page, BusLedgerDTO request, DataScope dataScope); +// + List list(BusLedgerDTO request, DataScope dataScope); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java new file mode 100644 index 0000000..3546699 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.device.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SelectProductDTO { + + @ApiModelProperty("值") + private Long id; + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("设备类型ID") + private String deviceTypeId; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java index f07ae0e..2e2d234 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java @@ -6,11 +6,14 @@ import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; import lombok.Getter; import lombok.Setter; import java.io.Serializable; import java.time.LocalDate; +import java.util.Date; /** *

@@ -20,8 +23,8 @@ * @author zt * @since 2024-07-16 */ -@Getter -@Setter +@Builder +@Data @TableName("bus_config") @ApiModel(value = "BusConfig对象", description = "设备下发配置信息 ") public class BusConfig implements Serializable { @@ -40,10 +43,22 @@ @TableField("DEVICE_TYPE") private Long deviceType; + @ApiModelProperty("产品id") + @TableField("PRODUCT_ID") + private Long productId; + @ApiModelProperty("配置信息") @TableField("FRAMECONTENT") private String framecontent; + @ApiModelProperty("配置描述信息") + @TableField("FRAMECONTENT_DESC") + private String framecontentDesc; + + @ApiModelProperty("备注") + @TableField("MARKER") + private String maker; + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") @TableField("`STATUS`") private String status; @@ -52,13 +67,40 @@ @TableField("OPERATOR") private Long operator; + + @ApiModelProperty("操作员名称") + @TableField("OPERATOR_NAME") + private String operatorName; + @ApiModelProperty("下发时间") @TableField("SENDTIME") - private LocalDate sendtime; + private Date sendtime; @ApiModelProperty("界面配置时间") @TableField("WRITETIME") - private LocalDate writetime; + private Date writetime; + + @ApiModelProperty("设备类型名称,新加必传") + @TableField(exist = false) + private String deviceTypeName; + public BusConfig() { + } + + public BusConfig(Long id, String devcode, Long deviceType, Long productId, String framecontent, String framecontentDesc, String maker, String status, Long operator, String operatorName, Date sendtime, Date writetime, String deviceTypeName) { + this.id = id; + this.devcode = devcode; + this.deviceType = deviceType; + this.productId = productId; + this.framecontent = framecontent; + this.framecontentDesc = framecontentDesc; + this.maker = maker; + this.status = status; + this.operator = operator; + this.operatorName = operatorName; + this.sendtime = sendtime; + this.writetime = writetime; + this.deviceTypeName = deviceTypeName; + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java index 3489090..4b8fa45 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java @@ -160,4 +160,8 @@ @TableField(exist = false) private String monitorStateName; + @ApiModelProperty("感知设备数量") + @TableField(exist = false) + private Long deviceCount; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java index a5b831a..36bce12 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java @@ -2,9 +2,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 产品管理 服务类 @@ -17,4 +20,6 @@ Page pageList( Page page, BaseProductDTO requestDTO); + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java index d23a5a3..a7942d0 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java @@ -1,7 +1,10 @@ package com.casic.missiles.modular.device.service; -import com.casic.missiles.modular.device.entity.BusConfig; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; /** *

@@ -13,4 +16,8 @@ */ public interface IBusConfigService extends IService { + boolean saveConfig(BusConfigDTO busConfigTO); + + Page pageList(Page page, BusConfigRequestDTO requestDTO); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java new file mode 100644 index 0000000..de5ea57 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java @@ -0,0 +1,24 @@ +package com.casic.missiles.modular.device.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; + +import java.util.List; + +/** + *

+ * 闸井监测 服务类 + *

+ * + * @author zt + * @since 2024-07-16 + */ +public interface IBusStationMonitorService extends IService { + + Page pageList(Page page, BusLedgerDTO request, DataScope dataScope); +// + List list(BusLedgerDTO request, DataScope dataScope); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java index c80da4e..e5b83fe 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java @@ -5,6 +5,7 @@ import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.modular.device.dao.BaseProductMapper; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import lombok.RequiredArgsConstructor; @@ -35,4 +36,9 @@ }); return productPage; } + + @Override + public List selectList() { + return this.baseMapper.selectList(); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java new file mode 100644 index 0000000..3546699 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.device.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SelectProductDTO { + + @ApiModelProperty("值") + private Long id; + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("设备类型ID") + private String deviceTypeId; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java index f07ae0e..2e2d234 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java @@ -6,11 +6,14 @@ import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; import lombok.Getter; import lombok.Setter; import java.io.Serializable; import java.time.LocalDate; +import java.util.Date; /** *

@@ -20,8 +23,8 @@ * @author zt * @since 2024-07-16 */ -@Getter -@Setter +@Builder +@Data @TableName("bus_config") @ApiModel(value = "BusConfig对象", description = "设备下发配置信息 ") public class BusConfig implements Serializable { @@ -40,10 +43,22 @@ @TableField("DEVICE_TYPE") private Long deviceType; + @ApiModelProperty("产品id") + @TableField("PRODUCT_ID") + private Long productId; + @ApiModelProperty("配置信息") @TableField("FRAMECONTENT") private String framecontent; + @ApiModelProperty("配置描述信息") + @TableField("FRAMECONTENT_DESC") + private String framecontentDesc; + + @ApiModelProperty("备注") + @TableField("MARKER") + private String maker; + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") @TableField("`STATUS`") private String status; @@ -52,13 +67,40 @@ @TableField("OPERATOR") private Long operator; + + @ApiModelProperty("操作员名称") + @TableField("OPERATOR_NAME") + private String operatorName; + @ApiModelProperty("下发时间") @TableField("SENDTIME") - private LocalDate sendtime; + private Date sendtime; @ApiModelProperty("界面配置时间") @TableField("WRITETIME") - private LocalDate writetime; + private Date writetime; + + @ApiModelProperty("设备类型名称,新加必传") + @TableField(exist = false) + private String deviceTypeName; + public BusConfig() { + } + + public BusConfig(Long id, String devcode, Long deviceType, Long productId, String framecontent, String framecontentDesc, String maker, String status, Long operator, String operatorName, Date sendtime, Date writetime, String deviceTypeName) { + this.id = id; + this.devcode = devcode; + this.deviceType = deviceType; + this.productId = productId; + this.framecontent = framecontent; + this.framecontentDesc = framecontentDesc; + this.maker = maker; + this.status = status; + this.operator = operator; + this.operatorName = operatorName; + this.sendtime = sendtime; + this.writetime = writetime; + this.deviceTypeName = deviceTypeName; + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java index 3489090..4b8fa45 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java @@ -160,4 +160,8 @@ @TableField(exist = false) private String monitorStateName; + @ApiModelProperty("感知设备数量") + @TableField(exist = false) + private Long deviceCount; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java index a5b831a..36bce12 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java @@ -2,9 +2,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 产品管理 服务类 @@ -17,4 +20,6 @@ Page pageList( Page page, BaseProductDTO requestDTO); + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java index d23a5a3..a7942d0 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java @@ -1,7 +1,10 @@ package com.casic.missiles.modular.device.service; -import com.casic.missiles.modular.device.entity.BusConfig; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; /** *

@@ -13,4 +16,8 @@ */ public interface IBusConfigService extends IService { + boolean saveConfig(BusConfigDTO busConfigTO); + + Page pageList(Page page, BusConfigRequestDTO requestDTO); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java new file mode 100644 index 0000000..de5ea57 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java @@ -0,0 +1,24 @@ +package com.casic.missiles.modular.device.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; + +import java.util.List; + +/** + *

+ * 闸井监测 服务类 + *

+ * + * @author zt + * @since 2024-07-16 + */ +public interface IBusStationMonitorService extends IService { + + Page pageList(Page page, BusLedgerDTO request, DataScope dataScope); +// + List list(BusLedgerDTO request, DataScope dataScope); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java index c80da4e..e5b83fe 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java @@ -5,6 +5,7 @@ import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.modular.device.dao.BaseProductMapper; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import lombok.RequiredArgsConstructor; @@ -35,4 +36,9 @@ }); return productPage; } + + @Override + public List selectList() { + return this.baseMapper.selectList(); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java index c385759..f97aac7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java @@ -1,9 +1,17 @@ package com.casic.missiles.modular.device.service.impl; -import com.casic.missiles.modular.device.entity.BusConfig; -import com.casic.missiles.modular.device.dao.BusConfigMapper; -import com.casic.missiles.modular.device.service.IBusConfigService; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.modular.device.dao.BusConfigMapper; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; /** @@ -14,7 +22,57 @@ * @author zt * @since 2024-07-16 */ +@RequiredArgsConstructor @Service public class BusConfigServiceImpl extends ServiceImpl implements IBusConfigService { + private final AbstractPermissionContext abstractPermissionContext; + + @Override + public boolean saveConfig(BusConfigDTO busConfigTO) { + switch (busConfigTO.getDeviceTypeName()) { + case "燃气智能监测终端": + //采集间隔,重传次数,上传周期 + busConfigTO.setFramecontent("reloadInterval:" + .concat(busConfigTO.getCollectInterval()) + .concat(";") + .concat("reloadInterval:") + .concat(busConfigTO.getReloadInterval()) + .concat(";") + .concat("uploadPeriod:") + .concat(busConfigTO.getUploadPeriod())); + busConfigTO.setFramecontentDesc("采集间隔:" + .concat(busConfigTO.getCollectInterval()) + .concat("分;").concat("重传次数:") + .concat(busConfigTO.getReloadInterval()) + .concat("次;").concat("上传周期:") + .concat(busConfigTO.getUploadPeriod()) + .concat("分")); + break; + + default: + break; + + } + //添加操作人 + AuthUser user = abstractPermissionContext.getAuthService().getLoginUser(); + if (null != user) { + busConfigTO.setOperator(user.getId()); + busConfigTO.setOperatorName(user.getName()); + } + return this.baseMapper.insert(busConfigTO) > 0 ? true : false; + } + + @Override + public Page pageList(Page page, BusConfigRequestDTO requestDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.like(ObjectUtil.isNotEmpty(requestDTO.getDevcode()), "DEVCODE", requestDTO.getDevcode()); + queryWrapper.eq(ObjectUtil.isNotEmpty(requestDTO.getDeviceType()), "DEVICE_TYPE", requestDTO.getDeviceType()); + queryWrapper.eq(ObjectUtil.isNotEmpty(requestDTO.getProductId()), "PRODUCT_ID", requestDTO.getProductId()); + queryWrapper.eq(ObjectUtil.isNotEmpty(requestDTO.getStatus()), "STATUS", requestDTO.getStatus()); + queryWrapper.like(ObjectUtil.isNotEmpty(requestDTO.getOperatorName()), "OPERATOR_NAME", requestDTO.getOperatorName()); + queryWrapper.ge(ObjectUtil.isNotEmpty(requestDTO.getBeginTime()), "WRITETIME", requestDTO.getBeginTime()); + queryWrapper.le(ObjectUtil.isNotEmpty(requestDTO.getEndTime()), "WRITETIME", requestDTO.getEndTime()); + return this.baseMapper.selectPage(page, queryWrapper); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java new file mode 100644 index 0000000..3546699 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.device.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SelectProductDTO { + + @ApiModelProperty("值") + private Long id; + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("设备类型ID") + private String deviceTypeId; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java index f07ae0e..2e2d234 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java @@ -6,11 +6,14 @@ import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; import lombok.Getter; import lombok.Setter; import java.io.Serializable; import java.time.LocalDate; +import java.util.Date; /** *

@@ -20,8 +23,8 @@ * @author zt * @since 2024-07-16 */ -@Getter -@Setter +@Builder +@Data @TableName("bus_config") @ApiModel(value = "BusConfig对象", description = "设备下发配置信息 ") public class BusConfig implements Serializable { @@ -40,10 +43,22 @@ @TableField("DEVICE_TYPE") private Long deviceType; + @ApiModelProperty("产品id") + @TableField("PRODUCT_ID") + private Long productId; + @ApiModelProperty("配置信息") @TableField("FRAMECONTENT") private String framecontent; + @ApiModelProperty("配置描述信息") + @TableField("FRAMECONTENT_DESC") + private String framecontentDesc; + + @ApiModelProperty("备注") + @TableField("MARKER") + private String maker; + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") @TableField("`STATUS`") private String status; @@ -52,13 +67,40 @@ @TableField("OPERATOR") private Long operator; + + @ApiModelProperty("操作员名称") + @TableField("OPERATOR_NAME") + private String operatorName; + @ApiModelProperty("下发时间") @TableField("SENDTIME") - private LocalDate sendtime; + private Date sendtime; @ApiModelProperty("界面配置时间") @TableField("WRITETIME") - private LocalDate writetime; + private Date writetime; + + @ApiModelProperty("设备类型名称,新加必传") + @TableField(exist = false) + private String deviceTypeName; + public BusConfig() { + } + + public BusConfig(Long id, String devcode, Long deviceType, Long productId, String framecontent, String framecontentDesc, String maker, String status, Long operator, String operatorName, Date sendtime, Date writetime, String deviceTypeName) { + this.id = id; + this.devcode = devcode; + this.deviceType = deviceType; + this.productId = productId; + this.framecontent = framecontent; + this.framecontentDesc = framecontentDesc; + this.maker = maker; + this.status = status; + this.operator = operator; + this.operatorName = operatorName; + this.sendtime = sendtime; + this.writetime = writetime; + this.deviceTypeName = deviceTypeName; + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java index 3489090..4b8fa45 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java @@ -160,4 +160,8 @@ @TableField(exist = false) private String monitorStateName; + @ApiModelProperty("感知设备数量") + @TableField(exist = false) + private Long deviceCount; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java index a5b831a..36bce12 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java @@ -2,9 +2,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 产品管理 服务类 @@ -17,4 +20,6 @@ Page pageList( Page page, BaseProductDTO requestDTO); + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java index d23a5a3..a7942d0 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java @@ -1,7 +1,10 @@ package com.casic.missiles.modular.device.service; -import com.casic.missiles.modular.device.entity.BusConfig; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; /** *

@@ -13,4 +16,8 @@ */ public interface IBusConfigService extends IService { + boolean saveConfig(BusConfigDTO busConfigTO); + + Page pageList(Page page, BusConfigRequestDTO requestDTO); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java new file mode 100644 index 0000000..de5ea57 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java @@ -0,0 +1,24 @@ +package com.casic.missiles.modular.device.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; + +import java.util.List; + +/** + *

+ * 闸井监测 服务类 + *

+ * + * @author zt + * @since 2024-07-16 + */ +public interface IBusStationMonitorService extends IService { + + Page pageList(Page page, BusLedgerDTO request, DataScope dataScope); +// + List list(BusLedgerDTO request, DataScope dataScope); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java index c80da4e..e5b83fe 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java @@ -5,6 +5,7 @@ import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.modular.device.dao.BaseProductMapper; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import lombok.RequiredArgsConstructor; @@ -35,4 +36,9 @@ }); return productPage; } + + @Override + public List selectList() { + return this.baseMapper.selectList(); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java index c385759..f97aac7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java @@ -1,9 +1,17 @@ package com.casic.missiles.modular.device.service.impl; -import com.casic.missiles.modular.device.entity.BusConfig; -import com.casic.missiles.modular.device.dao.BusConfigMapper; -import com.casic.missiles.modular.device.service.IBusConfigService; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.modular.device.dao.BusConfigMapper; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; /** @@ -14,7 +22,57 @@ * @author zt * @since 2024-07-16 */ +@RequiredArgsConstructor @Service public class BusConfigServiceImpl extends ServiceImpl implements IBusConfigService { + private final AbstractPermissionContext abstractPermissionContext; + + @Override + public boolean saveConfig(BusConfigDTO busConfigTO) { + switch (busConfigTO.getDeviceTypeName()) { + case "燃气智能监测终端": + //采集间隔,重传次数,上传周期 + busConfigTO.setFramecontent("reloadInterval:" + .concat(busConfigTO.getCollectInterval()) + .concat(";") + .concat("reloadInterval:") + .concat(busConfigTO.getReloadInterval()) + .concat(";") + .concat("uploadPeriod:") + .concat(busConfigTO.getUploadPeriod())); + busConfigTO.setFramecontentDesc("采集间隔:" + .concat(busConfigTO.getCollectInterval()) + .concat("分;").concat("重传次数:") + .concat(busConfigTO.getReloadInterval()) + .concat("次;").concat("上传周期:") + .concat(busConfigTO.getUploadPeriod()) + .concat("分")); + break; + + default: + break; + + } + //添加操作人 + AuthUser user = abstractPermissionContext.getAuthService().getLoginUser(); + if (null != user) { + busConfigTO.setOperator(user.getId()); + busConfigTO.setOperatorName(user.getName()); + } + return this.baseMapper.insert(busConfigTO) > 0 ? true : false; + } + + @Override + public Page pageList(Page page, BusConfigRequestDTO requestDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.like(ObjectUtil.isNotEmpty(requestDTO.getDevcode()), "DEVCODE", requestDTO.getDevcode()); + queryWrapper.eq(ObjectUtil.isNotEmpty(requestDTO.getDeviceType()), "DEVICE_TYPE", requestDTO.getDeviceType()); + queryWrapper.eq(ObjectUtil.isNotEmpty(requestDTO.getProductId()), "PRODUCT_ID", requestDTO.getProductId()); + queryWrapper.eq(ObjectUtil.isNotEmpty(requestDTO.getStatus()), "STATUS", requestDTO.getStatus()); + queryWrapper.like(ObjectUtil.isNotEmpty(requestDTO.getOperatorName()), "OPERATOR_NAME", requestDTO.getOperatorName()); + queryWrapper.ge(ObjectUtil.isNotEmpty(requestDTO.getBeginTime()), "WRITETIME", requestDTO.getBeginTime()); + queryWrapper.le(ObjectUtil.isNotEmpty(requestDTO.getEndTime()), "WRITETIME", requestDTO.getEndTime()); + return this.baseMapper.selectPage(page, queryWrapper); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusStationMonitorServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusStationMonitorServiceImpl.java new file mode 100644 index 0000000..2ce70f4 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusStationMonitorServiceImpl.java @@ -0,0 +1,45 @@ +package com.casic.missiles.modular.device.service.impl; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.service.AbstractDictService; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.device.dao.BusStationMonitorMapper; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

+ * 台账管理 服务实现类 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@RequiredArgsConstructor +@Service +public class BusStationMonitorServiceImpl extends ServiceImpl implements IBusStationMonitorService { + + private final AbstractDictService abstractDictService; + + @Override + public Page pageList(Page page, BusLedgerDTO request, DataScope dataScope) { + Page pageList = this.baseMapper.pageList(dataScope, page, request); + List busLedgerList = pageList.getRecords(); + busLedgerList.forEach(busLedger -> { + busLedger.setOnStateName(abstractDictService.getDictNameByCode("onState", busLedger.getOnState())); // 使用状态字典值 + busLedger.setWellTypeName(abstractDictService.getDictNameByCode("wellType", busLedger.getWellType())); // 井类型字典值 + busLedger.setMonitorStateName(abstractDictService.getDictNameByCode("monitorState", busLedger.getMonitorState())); // 监控状态字典值 + }); + return pageList; + } + @Override + public List list(BusLedgerDTO request, DataScope dataScope) { + return this.baseMapper.list(dataScope, request); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java index 8e2e4a2..a0a8316 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BaseProductController.java @@ -11,6 +11,7 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import com.casic.missiles.util.ReturnUtil; @@ -74,5 +75,12 @@ }); return ReturnUtil.success(iBaseProductService.removeByIds(idsDTO.getIds())); } + + @ApiOperation("产品下拉接口") + @PostMapping("/selectList") + @ResponseBody + public ReturnDTO selectList() { + return ReturnUtil.success(iBaseProductService.selectList()); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java index b427b2d..6a6b41c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusConfigController.java @@ -1,9 +1,25 @@ package com.casic.missiles.modular.device.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import cn.hutool.core.lang.Assert; +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.IdsDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Objects; /** *

@@ -13,9 +29,49 @@ * @author zt * @since 2024-07-16 */ +@Api(tags = "指令下发模块") +@RequiredArgsConstructor @RestController @RequestMapping("/system/busConfig") -public class BusConfigController { +public class BusConfigController extends ExportController { + + private final IBusConfigService iBusConfigService; + + @ApiOperation("查询分页接口") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusConfigRequestDTO requestDTO) { + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iBusConfigService.pageList(page, requestDTO))); + } + + @ApiOperation("新增") + @PostMapping("/add") + @ResponseBody + public ReturnDTO add(@RequestBody BusConfigDTO busConfigTO) { + + return ReturnUtil.success(iBusConfigService.saveConfig(busConfigTO)); + } + +// @ApiOperation("编辑") +// @PostMapping("/edit") +// @ResponseBody +// public ReturnDTO edit(@RequestBody BaseProduct baseProduct) { +// Assert.isFalse(Objects.isNull(baseProduct.getId()), () -> { +// throw new BusinessException(BusinessExceptionEnum.ID_NULL); +// }); +// return ReturnUtil.success(iBusConfigService.updateById(baseProduct)); +// } + + @ApiOperation("批量删除") + @PostMapping("/batchDelete") + @ResponseBody + public ReturnDTO batchDelete(@RequestBody IdsDTO idsDTO) { + Assert.isFalse(Objects.isNull(idsDTO.getIds()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return ReturnUtil.success(iBusConfigService.removeByIds(idsDTO.getIds())); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java new file mode 100644 index 0000000..aaca125 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusStationMonitorController.java @@ -0,0 +1,43 @@ +package com.casic.missiles.modular.device.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.base.controller.ExportController; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import com.casic.missiles.util.ReturnUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "场站监测模块") +@RequiredArgsConstructor +@RestController +@RequestMapping("/monitor/station") +public class BusStationMonitorController extends ExportController { + + private final IBusStationMonitorService busStationMonitorService; + private final AbstractPermissionContext iCommonPermissionService; + + @ApiOperation("查询分页接口,列表用") + @PostMapping("/listPage") + @ResponseBody + public ReturnDTO listPage(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(busStationMonitorService.pageList(page, request, dataScope))); + } + + @ApiOperation("查询接口,地图用") + @PostMapping("/list") + @ResponseBody + public ReturnDTO list(@RequestBody BusLedgerDTO request) { + DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); + return ReturnUtil.success(busStationMonitorService.list(request, dataScope)); + } +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java index b4844dc..c93e67d 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BaseProductMapper.java @@ -3,9 +3,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

@@ -20,4 +24,13 @@ Page pageList(Page page, @Param("request") BaseProductDTO request); + @Select("SELECT\n" + + "\tbp.id ,\n" + + "\tCONCAT( bp.PRODUCT_NAME, '-', bp.DEVICE_MODEL, '/', bm.`NAME` ) AS `name`,\n" + + "\tbp.DEVICE_TYPE AS `deviceTypeId` \n" + + "FROM\n" + + "\t`base_product` bp\n" + + "\tLEFT JOIN bus_manufacturer bm ON bm.id = bp.MANUFACTURER_ID") + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java new file mode 100644 index 0000000..220da50 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/BusStationMonitorMapper.java @@ -0,0 +1,27 @@ +package com.casic.missiles.modular.device.dao; + +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.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 台账管理 Mapper 接口 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@Mapper +public interface BusStationMonitorMapper extends BaseMapper { + + Page pageList(@Param("scope") DataScope dataScope, Page page, @Param("request") BusLedgerDTO request); + + List list(@Param("scope") DataScope dataScope, @Param("request") BusLedgerDTO request); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml new file mode 100644 index 0000000..2ac1557 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusStationMonitorMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + ID, TAG_NUMBER, PIPE_CODE, PIPE_DIAMETER, MATERIAL, CONSTRUCT_ERA, DEPTID, POSTITION, PRESS_TYPE, MANAGE_TYPE, TS + + + + + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java new file mode 100644 index 0000000..b7ca873 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigDTO.java @@ -0,0 +1,28 @@ +package com.casic.missiles.modular.device.dto; + + +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + + + +@Data +public class BusConfigDTO extends BusConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("采集间隔") + private String collectInterval; + + @ApiModelProperty("上传周期") + private String uploadPeriod; + + @ApiModelProperty("重传次数") + private String reloadInterval; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java new file mode 100644 index 0000000..fa30342 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusConfigRequestDTO.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.device.dto; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.casic.missiles.modular.device.entity.BusConfig; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class BusConfigRequestDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("设备编号") + private String devcode; + + @ApiModelProperty("设备类型id") + private Long deviceType; + + @ApiModelProperty("产品id") + private Long productId; + + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") + private String status; + + @ApiModelProperty("操作人员") + private String operatorName; + + @ApiModelProperty("操作开始时间") + private String beginTime; + + @ApiModelProperty("操作结束时间") + private String endTime; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java new file mode 100644 index 0000000..3546699 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/SelectProductDTO.java @@ -0,0 +1,18 @@ +package com.casic.missiles.modular.device.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SelectProductDTO { + + @ApiModelProperty("值") + private Long id; + + @ApiModelProperty("名称") + private String name; + + @ApiModelProperty("设备类型ID") + private String deviceTypeId; + +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java index f07ae0e..2e2d234 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusConfig.java @@ -6,11 +6,14 @@ import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; import lombok.Getter; import lombok.Setter; import java.io.Serializable; import java.time.LocalDate; +import java.util.Date; /** *

@@ -20,8 +23,8 @@ * @author zt * @since 2024-07-16 */ -@Getter -@Setter +@Builder +@Data @TableName("bus_config") @ApiModel(value = "BusConfig对象", description = "设备下发配置信息 ") public class BusConfig implements Serializable { @@ -40,10 +43,22 @@ @TableField("DEVICE_TYPE") private Long deviceType; + @ApiModelProperty("产品id") + @TableField("PRODUCT_ID") + private Long productId; + @ApiModelProperty("配置信息") @TableField("FRAMECONTENT") private String framecontent; + @ApiModelProperty("配置描述信息") + @TableField("FRAMECONTENT_DESC") + private String framecontentDesc; + + @ApiModelProperty("备注") + @TableField("MARKER") + private String maker; + @ApiModelProperty("下发状态(0:待下发,1:下发成功,2:下发失败)") @TableField("`STATUS`") private String status; @@ -52,13 +67,40 @@ @TableField("OPERATOR") private Long operator; + + @ApiModelProperty("操作员名称") + @TableField("OPERATOR_NAME") + private String operatorName; + @ApiModelProperty("下发时间") @TableField("SENDTIME") - private LocalDate sendtime; + private Date sendtime; @ApiModelProperty("界面配置时间") @TableField("WRITETIME") - private LocalDate writetime; + private Date writetime; + + @ApiModelProperty("设备类型名称,新加必传") + @TableField(exist = false) + private String deviceTypeName; + public BusConfig() { + } + + public BusConfig(Long id, String devcode, Long deviceType, Long productId, String framecontent, String framecontentDesc, String maker, String status, Long operator, String operatorName, Date sendtime, Date writetime, String deviceTypeName) { + this.id = id; + this.devcode = devcode; + this.deviceType = deviceType; + this.productId = productId; + this.framecontent = framecontent; + this.framecontentDesc = framecontentDesc; + this.maker = maker; + this.status = status; + this.operator = operator; + this.operatorName = operatorName; + this.sendtime = sendtime; + this.writetime = writetime; + this.deviceTypeName = deviceTypeName; + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java index 3489090..4b8fa45 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedger.java @@ -160,4 +160,8 @@ @TableField(exist = false) private String monitorStateName; + @ApiModelProperty("感知设备数量") + @TableField(exist = false) + private Long deviceCount; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java index a5b831a..36bce12 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBaseProductService.java @@ -2,9 +2,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 产品管理 服务类 @@ -17,4 +20,6 @@ Page pageList( Page page, BaseProductDTO requestDTO); + List selectList(); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java index d23a5a3..a7942d0 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusConfigService.java @@ -1,7 +1,10 @@ package com.casic.missiles.modular.device.service; -import com.casic.missiles.modular.device.entity.BusConfig; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; /** *

@@ -13,4 +16,8 @@ */ public interface IBusConfigService extends IService { + boolean saveConfig(BusConfigDTO busConfigTO); + + Page pageList(Page page, BusConfigRequestDTO requestDTO); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java new file mode 100644 index 0000000..de5ea57 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusStationMonitorService.java @@ -0,0 +1,24 @@ +package com.casic.missiles.modular.device.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; + +import java.util.List; + +/** + *

+ * 闸井监测 服务类 + *

+ * + * @author zt + * @since 2024-07-16 + */ +public interface IBusStationMonitorService extends IService { + + Page pageList(Page page, BusLedgerDTO request, DataScope dataScope); +// + List list(BusLedgerDTO request, DataScope dataScope); +} diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java index c80da4e..e5b83fe 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BaseProductServiceImpl.java @@ -5,6 +5,7 @@ import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.modular.device.dao.BaseProductMapper; import com.casic.missiles.modular.device.dto.BaseProductDTO; +import com.casic.missiles.modular.device.dto.SelectProductDTO; import com.casic.missiles.modular.device.entity.BaseProduct; import com.casic.missiles.modular.device.service.IBaseProductService; import lombok.RequiredArgsConstructor; @@ -35,4 +36,9 @@ }); return productPage; } + + @Override + public List selectList() { + return this.baseMapper.selectList(); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java index c385759..f97aac7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusConfigServiceImpl.java @@ -1,9 +1,17 @@ package com.casic.missiles.modular.device.service.impl; -import com.casic.missiles.modular.device.entity.BusConfig; -import com.casic.missiles.modular.device.dao.BusConfigMapper; -import com.casic.missiles.modular.device.service.IBusConfigService; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.modular.device.dao.BusConfigMapper; +import com.casic.missiles.modular.device.dto.BusConfigDTO; +import com.casic.missiles.modular.device.dto.BusConfigRequestDTO; +import com.casic.missiles.modular.device.entity.BusConfig; +import com.casic.missiles.modular.device.service.IBusConfigService; +import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; /** @@ -14,7 +22,57 @@ * @author zt * @since 2024-07-16 */ +@RequiredArgsConstructor @Service public class BusConfigServiceImpl extends ServiceImpl implements IBusConfigService { + private final AbstractPermissionContext abstractPermissionContext; + + @Override + public boolean saveConfig(BusConfigDTO busConfigTO) { + switch (busConfigTO.getDeviceTypeName()) { + case "燃气智能监测终端": + //采集间隔,重传次数,上传周期 + busConfigTO.setFramecontent("reloadInterval:" + .concat(busConfigTO.getCollectInterval()) + .concat(";") + .concat("reloadInterval:") + .concat(busConfigTO.getReloadInterval()) + .concat(";") + .concat("uploadPeriod:") + .concat(busConfigTO.getUploadPeriod())); + busConfigTO.setFramecontentDesc("采集间隔:" + .concat(busConfigTO.getCollectInterval()) + .concat("分;").concat("重传次数:") + .concat(busConfigTO.getReloadInterval()) + .concat("次;").concat("上传周期:") + .concat(busConfigTO.getUploadPeriod()) + .concat("分")); + break; + + default: + break; + + } + //添加操作人 + AuthUser user = abstractPermissionContext.getAuthService().getLoginUser(); + if (null != user) { + busConfigTO.setOperator(user.getId()); + busConfigTO.setOperatorName(user.getName()); + } + return this.baseMapper.insert(busConfigTO) > 0 ? true : false; + } + + @Override + public Page pageList(Page page, BusConfigRequestDTO requestDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.like(ObjectUtil.isNotEmpty(requestDTO.getDevcode()), "DEVCODE", requestDTO.getDevcode()); + queryWrapper.eq(ObjectUtil.isNotEmpty(requestDTO.getDeviceType()), "DEVICE_TYPE", requestDTO.getDeviceType()); + queryWrapper.eq(ObjectUtil.isNotEmpty(requestDTO.getProductId()), "PRODUCT_ID", requestDTO.getProductId()); + queryWrapper.eq(ObjectUtil.isNotEmpty(requestDTO.getStatus()), "STATUS", requestDTO.getStatus()); + queryWrapper.like(ObjectUtil.isNotEmpty(requestDTO.getOperatorName()), "OPERATOR_NAME", requestDTO.getOperatorName()); + queryWrapper.ge(ObjectUtil.isNotEmpty(requestDTO.getBeginTime()), "WRITETIME", requestDTO.getBeginTime()); + queryWrapper.le(ObjectUtil.isNotEmpty(requestDTO.getEndTime()), "WRITETIME", requestDTO.getEndTime()); + return this.baseMapper.selectPage(page, queryWrapper); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusStationMonitorServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusStationMonitorServiceImpl.java new file mode 100644 index 0000000..2ce70f4 --- /dev/null +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusStationMonitorServiceImpl.java @@ -0,0 +1,45 @@ +package com.casic.missiles.modular.device.service.impl; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.service.AbstractDictService; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.modular.device.dao.BusStationMonitorMapper; +import com.casic.missiles.modular.device.dto.BusLedgerDTO; +import com.casic.missiles.modular.device.entity.BusLedger; +import com.casic.missiles.modular.device.service.IBusStationMonitorService; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

+ * 台账管理 服务实现类 + *

+ * + * @author zt + * @since 2024-07-16 + */ +@RequiredArgsConstructor +@Service +public class BusStationMonitorServiceImpl extends ServiceImpl implements IBusStationMonitorService { + + private final AbstractDictService abstractDictService; + + @Override + public Page pageList(Page page, BusLedgerDTO request, DataScope dataScope) { + Page pageList = this.baseMapper.pageList(dataScope, page, request); + List busLedgerList = pageList.getRecords(); + busLedgerList.forEach(busLedger -> { + busLedger.setOnStateName(abstractDictService.getDictNameByCode("onState", busLedger.getOnState())); // 使用状态字典值 + busLedger.setWellTypeName(abstractDictService.getDictNameByCode("wellType", busLedger.getWellType())); // 井类型字典值 + busLedger.setMonitorStateName(abstractDictService.getDictNameByCode("monitorState", busLedger.getMonitorState())); // 监控状态字典值 + }); + return pageList; + } + @Override + public List list(BusLedgerDTO request, DataScope dataScope) { + return this.baseMapper.list(dataScope, request); + } +} diff --git a/casic-public/src/main/java/com/casic/missiles/enums/DeviceTypeEnum.java b/casic-public/src/main/java/com/casic/missiles/enums/DeviceTypeEnum.java new file mode 100644 index 0000000..d42714b --- /dev/null +++ b/casic-public/src/main/java/com/casic/missiles/enums/DeviceTypeEnum.java @@ -0,0 +1,79 @@ +package com.casic.missiles.enums; + + +public enum DeviceTypeEnum { + Well("井盖状态监测仪", 1,"data_wellcover"), + Liquid("液位监测仪", 2,"data_liquid"), + WasteGas("有害气体监测仪", 3,"data_harmful_gas"), + Methane("燃气智能监测终端", 9,"data_gas"), + TempHumi("温湿度监测仪", 5,"data_temp_hum"), + Dig("开挖监测仪", 6,"data_dig"), + WellLocator("井盖定位监测仪", 7,"data_wellcover_loca"), + Noise("噪声记录仪", 8,"data_noise"), + TempPressure("温度压力监测仪", 4,"data_temp_press"), + FireHydrant("消防栓防盗水监测仪", 11,"data_hydrant"), + Tube("管盯", 12,"data_tube"), + LG("井盖液位一体机", 13,"data_wellplus"), + H2s("硫化氢检测终端", 14,"data_h2s"), + PRESS("压力监测终端", 15,"data_press"), + KAD("点型可燃气体探测器", 16,"data_kad"), + PANTILT("激光甲烷云台", 17,"data_pantilt"), + PRESSURE("压力监测终端", 18,"data_pressure"), + GasDector("点型可燃气体探测器", 19,"data_gas_dector"); + + // 成员变量 + private String name; + private int index; + private String tableName; + + // 构造方法 + private DeviceTypeEnum(String name, int index, String tableName) { + this.name = name; + this.index = index; + this.tableName = tableName; + } + + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getIndex() { + return index; + } + + public void setIndex(int index) { + this.index = index; + } + + public static DeviceTypeEnum getByIndex(String index) { + try { + for (DeviceTypeEnum deviceTypeEnum : values()) { + if (deviceTypeEnum.index == Integer.parseInt(index)) { + return deviceTypeEnum; + } + } + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + //覆盖方法 + @Override + public String toString() { + return this.name; + } +} \ No newline at end of file