diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteRevenueConfigService.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteRevenueConfigService.java index 0787fb6..de62fb4 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteRevenueConfigService.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteRevenueConfigService.java @@ -4,7 +4,7 @@ import com.ruoyi.common.core.constant.SecurityConstants; import com.ruoyi.common.core.constant.ServiceNameConstants; import com.ruoyi.common.core.domain.R; import com.ruoyi.system.api.domain.EpsInitialTrafficDataRemote; -import com.ruoyi.system.api.domain.NodeBandwidth; +import com.ruoyi.system.api.domain.InitialSwitchInfoDetailsRemote; import com.ruoyi.system.api.factory.RemoteRevenueConfigFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; @@ -19,36 +19,6 @@ import org.springframework.web.bind.annotation.RequestHeader; @FeignClient(contextId = "remoteRevenueConfigService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteRevenueConfigFallbackFactory.class) public interface RemoteRevenueConfigService { - /** - * @param nodeBandwidth 服务器带宽收益 - * @param source 请求来源 - * @return 结果 - */ - @PostMapping("/bandwidth/list") - public R getBandwidth(@RequestBody NodeBandwidth nodeBandwidth, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); - - /** - * @param nodeBandwidth 服务器带宽收益 - * @param source 请求来源 - * @return 结果 - */ - @PostMapping("/bandwidth") - public R saveBandwidth(@RequestBody NodeBandwidth nodeBandwidth, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); - /** - * 查询流量数据(POST方式) - * @param queryParam 查询参数实体 - * source 请求来源 - * @return 流量数据列表 - */ - @PostMapping("/query") - public R query(@RequestBody EpsInitialTrafficDataRemote queryParam, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); - /** - * 批量保存流量数据 - * @param queryParam 流量数据列表 - * @return 操作结果 - */ - @PostMapping("/batch") - public R batchInitialTraffic(@RequestBody EpsInitialTrafficDataRemote queryParam, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * 保存流量数据 * @param queryParam 流量数据列表 @@ -56,5 +26,11 @@ public interface RemoteRevenueConfigService */ @PostMapping("/revenueConfig/autoSaveServiceTrafficData") public R autoSaveServiceTrafficData(@RequestBody EpsInitialTrafficDataRemote queryParam, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); - + /** + * 保存交换机流量数据 + * @param queryParam 交换机流量数据列表 + * @return 操作结果 + */ + @PostMapping("/switchInfoDetails/autoSaveSwitchTraffic") + public R autoSaveSwitchTraffic(@RequestBody InitialSwitchInfoDetailsRemote queryParam, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); } diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/InitialSwitchInfoDetailsRemote.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/InitialSwitchInfoDetailsRemote.java new file mode 100644 index 0000000..4c01ad6 --- /dev/null +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/InitialSwitchInfoDetailsRemote.java @@ -0,0 +1,85 @@ +package com.ruoyi.system.api.domain; + +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +/** + * 交换机监控信息对象 initial_switch_info_details + * + * @author gyt + * @date 2025-08-26 + */ +@Data +public class InitialSwitchInfoDetailsRemote extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 自增主键ID */ + private Long id; + + /** 客户端ID */ + @Excel(name = "客户端ID") + private String clientId; + + /** 网络接口名称(如eth0、ens33等) */ + @Excel(name = "网络接口名称(如eth0、ens33等)") + private String name; + + /** 接收流量(字节) */ + @Excel(name = "接收流量(字节)") + private BigDecimal inBytes; + + /** 发送流量(字节) */ + @Excel(name = "发送流量(字节)") + private BigDecimal outBytes; + + /** 接口状态(up/down等) */ + @Excel(name = "接口状态(up/down等)") + private String status; + + /** 接口类型(ethernet/wireless等) */ + @Excel(name = "接口类型(ethernet/wireless等)") + private String type; + + /** 接收流量(bytes/s) */ + @Excel(name = "接收流量", readConverterExp = "b=ytes/s") + private BigDecimal inSpeed; + + /** 发送流量(bytes/s) */ + @Excel(name = "发送流量", readConverterExp = "b=ytes/s") + private BigDecimal outSpeed; + + /** 交换机名称 */ + @Excel(name = "交换机名称") + private String switchName; + + /** 接口连接设备类型 */ + @Excel(name = "接口连接设备类型") + private String interfaceDeviceType; + + /** 服务器名称 */ + @Excel(name = "服务器名称") + private String serverName; + + /** 服务器网口 */ + @Excel(name = "服务器网口") + private String serverPort; + + /** 服务器硬件SN */ + @Excel(name = "服务器硬件SN") + private String serverSn; + + /** 交换机硬件SN */ + @Excel(name = "交换机硬件SN") + private String switchSn; + /** 数据集合 */ + private List dataList; + + private String startTime; + + private String endTime; +} diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteRevenueConfigFallbackFactory.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteRevenueConfigFallbackFactory.java index 479f65c..2d26868 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteRevenueConfigFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteRevenueConfigFallbackFactory.java @@ -3,7 +3,7 @@ package com.ruoyi.system.api.factory; import com.ruoyi.common.core.domain.R; import com.ruoyi.system.api.RemoteRevenueConfigService; import com.ruoyi.system.api.domain.EpsInitialTrafficDataRemote; -import com.ruoyi.system.api.domain.NodeBandwidth; +import com.ruoyi.system.api.domain.InitialSwitchInfoDetailsRemote; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.cloud.openfeign.FallbackFactory; @@ -26,28 +26,14 @@ public class RemoteRevenueConfigFallbackFactory implements FallbackFactory getBandwidth(NodeBandwidth nodeBandwidth, String source) { - return R.fail("获取服务器带宽失败:" + throwable.getMessage()); - } - - @Override - public R saveBandwidth(NodeBandwidth nodeBandwidth, String source) { - return R.fail("新增服务器带宽失败:" + throwable.getMessage()); - } - - @Override - public R query(EpsInitialTrafficDataRemote queryParam, String source) { - return R.fail("获取初始流量数据失败:" + throwable.getMessage()); - } - @Override - public R batchInitialTraffic(EpsInitialTrafficDataRemote queryParam, String source) { - return R.fail("新增初始流量数据失败:" + throwable.getMessage()); - } @Override public R autoSaveServiceTrafficData(EpsInitialTrafficDataRemote queryParam, String source) { return R.fail("保存流量数据失败:" + throwable.getMessage()); } + @Override + public R autoSaveSwitchTraffic(InitialSwitchInfoDetailsRemote queryParam, String source) { + return R.fail("保存交换机流量数据失败:" + throwable.getMessage()); + } }; } } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/BaseEntity.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/BaseEntity.java index 4e6e8fc..d1c9fe9 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/BaseEntity.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/BaseEntity.java @@ -48,6 +48,8 @@ public class BaseEntity implements Serializable * 选中的属性名称 */ private String[] properties; + /** 时间戳 */ + private String timestamp; /** 请求参数 */ @JsonInclude(JsonInclude.Include.NON_EMPTY) @@ -150,4 +152,12 @@ public class BaseEntity implements Serializable { this.params = params; } + + public String getTimestamp() { + return timestamp; + } + + public void setTimestamp(String timestamp) { + this.timestamp = timestamp; + } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/config/TableScheduleConfig.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/config/TableScheduleConfig.java index 050d16b..bcbdeaa 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/config/TableScheduleConfig.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/config/TableScheduleConfig.java @@ -1,5 +1,7 @@ package com.ruoyi.system.config; +import com.ruoyi.system.domain.EpsInitialTrafficData; +import com.ruoyi.system.domain.InitialSwitchInfoDetails; import com.ruoyi.system.service.EpsInitialTrafficDataService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; @@ -17,10 +19,18 @@ public class TableScheduleConfig { private EpsInitialTrafficDataService epsInitialTrafficDataService; // 每月25号创建下月表 - @Scheduled(cron = "0 0 0 25 * ?") + @Scheduled(cron = "0 0 0 26 * ?") // @Scheduled(initialDelay = 5000, fixedDelay = Long.MAX_VALUE) public void createNextMonthTables() { epsInitialTrafficDataService.createNextMonthTables(); } + // 每天12点执行 计算95带宽值/日 + @Scheduled(cron = "0 0 0 * * ?", zone = "Asia/Shanghai") + public void calculate95BandwidthDaily() { + EpsInitialTrafficData queryParam = new EpsInitialTrafficData(); + epsInitialTrafficDataService.calculate95BandwidthDaily(queryParam); + InitialSwitchInfoDetails initialSwitchInfoDetails = new InitialSwitchInfoDetails(); + epsInitialTrafficDataService.calculateSwitch95BandwidthDaily(initialSwitchInfoDetails); + } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/AllInterfaceNameController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/AllInterfaceNameController.java new file mode 100644 index 0000000..f4feda5 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/AllInterfaceNameController.java @@ -0,0 +1,39 @@ +package com.ruoyi.system.controller; + +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.security.annotation.RequiresPermissions; +import com.ruoyi.system.domain.AllInterfaceName; +import com.ruoyi.system.service.IAllInterfaceNameService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * 所有接口名称Controller + * + * @author gyt + * @date 2025-08-25 + */ +@RestController +@RequestMapping("/interfaceName") +public class AllInterfaceNameController extends BaseController +{ + @Autowired + private IAllInterfaceNameService allInterfaceNameService; + + /** + * 查询所有接口名称列表 + */ + @RequiresPermissions("system:interfaceName:list") + @PostMapping("/getAllNames") + public List list(@RequestBody AllInterfaceName allInterfaceName) + { + List list = allInterfaceNameService.selectAllInterfaceNameList(allInterfaceName); + return list; + } + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/EpsServerRevenueConfigController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/EpsServerRevenueConfigController.java index b99060e..ec3f26a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/EpsServerRevenueConfigController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/EpsServerRevenueConfigController.java @@ -75,7 +75,6 @@ public class EpsServerRevenueConfigController extends BaseController /** * 流量相关数据入库 */ - @Log(title = "流量相关数据入库", businessType = BusinessType.EXPORT) @InnerAuth @PostMapping("/autoSaveServiceTrafficData") public R autoSaveServiceTrafficData(@RequestBody EpsServerRevenueConfig epsServerRevenueConfig) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/InitialSwitchInfoDetailsController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/InitialSwitchInfoDetailsController.java new file mode 100644 index 0000000..5531120 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/InitialSwitchInfoDetailsController.java @@ -0,0 +1,109 @@ +package com.ruoyi.system.controller; + +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.utils.poi.ExcelUtil; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.web.page.TableDataInfo; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.InnerAuth; +import com.ruoyi.common.security.annotation.RequiresPermissions; +import com.ruoyi.system.domain.InitialSwitchInfoDetails; +import com.ruoyi.system.service.IInitialSwitchInfoDetailsService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 交换机监控信息Controller + * + * @author gyt + * @date 2025-08-26 + */ +@RestController +@RequestMapping("/switchInfoDetails") +public class InitialSwitchInfoDetailsController extends BaseController +{ + @Autowired + private IInitialSwitchInfoDetailsService initialSwitchInfoDetailsService; + + /** + * 查询交换机监控信息列表 + */ + @RequiresPermissions("system:switchInfoDetails:list") + @GetMapping("/list") + public TableDataInfo list(InitialSwitchInfoDetails initialSwitchInfoDetails) + { + startPage(); + List list = initialSwitchInfoDetailsService.selectInitialSwitchInfoDetailsList(initialSwitchInfoDetails); + return getDataTable(list); + } + + /** + * 导出交换机监控信息列表 + */ + @RequiresPermissions("system:switchInfoDetails:export") + @Log(title = "交换机监控信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, InitialSwitchInfoDetails initialSwitchInfoDetails) + { + List list = initialSwitchInfoDetailsService.selectInitialSwitchInfoDetailsList(initialSwitchInfoDetails); + ExcelUtil util = new ExcelUtil(InitialSwitchInfoDetails.class); + util.exportExcel(response, list, "交换机监控信息数据"); + } + + /** + * 获取交换机监控信息详细信息 + */ + @RequiresPermissions("system:switchInfoDetails:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(initialSwitchInfoDetailsService.selectInitialSwitchInfoDetailsById(id)); + } + + /** + * 新增交换机监控信息 + */ + @RequiresPermissions("system:switchInfoDetails:add") + @Log(title = "交换机监控信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody InitialSwitchInfoDetails initialSwitchInfoDetails) + { + return toAjax(initialSwitchInfoDetailsService.insertInitialSwitchInfoDetails(initialSwitchInfoDetails)); + } + + /** + * 修改交换机监控信息 + */ + @RequiresPermissions("system:switchInfoDetails:edit") + @Log(title = "交换机监控信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody InitialSwitchInfoDetails initialSwitchInfoDetails) + { + return toAjax(initialSwitchInfoDetailsService.updateInitialSwitchInfoDetails(initialSwitchInfoDetails)); + } + + /** + * 删除交换机监控信息 + */ + @RequiresPermissions("system:switchInfoDetails:remove") + @Log(title = "交换机监控信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(initialSwitchInfoDetailsService.deleteInitialSwitchInfoDetailsByIds(ids)); + } + /** + * 交换机流量相关数据入库 + */ + @InnerAuth + @PostMapping("/autoSaveSwitchTraffic") + public R autoSaveSwitchTraffic(@RequestBody InitialSwitchInfoDetails initialSwitchInfoDetails) + { + return initialSwitchInfoDetailsService.autoSaveSwitchTraffic(initialSwitchInfoDetails); + } +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/AllInterfaceName.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/AllInterfaceName.java new file mode 100644 index 0000000..a94273c --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/AllInterfaceName.java @@ -0,0 +1,65 @@ +package com.ruoyi.system.domain; + +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; +import lombok.Data; + +/** + * 所有接口名称对象 all_interface_name + * + * @author gyt + * @date 2025-08-25 + */ +@Data +public class AllInterfaceName extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 客户端唯一标识 */ + @Excel(name = "客户端唯一标识") + private String clientId; + + /** 接口名称 */ + @Excel(name = "接口名称") + private String interfaceName; + + /** 设备序列号 */ + @Excel(name = "设备序列号") + private String deviceSn; + + /** 节点名称 */ + @Excel(name = "节点名称") + private String nodeName; + + /** 业务代码 */ + @Excel(name = "业务代码") + private String businessCode; + + /** 业务名称 */ + @Excel(name = "业务名称") + private String businessName; + + /** 资源类型 */ + @Excel(name = "资源类型") + private String resourceType; + + /** 交换机名称 */ + @Excel(name = "交换机名称") + private String switchName; + + /** 接口连接设备类型 */ + @Excel(name = "接口连接设备类型") + private String interfaceDeviceType; + + /** 服务器网口 */ + @Excel(name = "服务器网口") + private String serverPort; + + /** 交换机硬件SN */ + @Excel(name = "交换机硬件SN") + private String switchSn; + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/InitialSwitchInfoDetails.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/InitialSwitchInfoDetails.java new file mode 100644 index 0000000..06aba8f --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/InitialSwitchInfoDetails.java @@ -0,0 +1,85 @@ +package com.ruoyi.system.domain; + +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +/** + * 交换机监控信息对象 initial_switch_info_details + * + * @author gyt + * @date 2025-08-26 + */ +@Data +public class InitialSwitchInfoDetails extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 自增主键ID */ + private Long id; + + /** 客户端ID */ + @Excel(name = "客户端ID") + private String clientId; + + /** 网络接口名称(如eth0、ens33等) */ + @Excel(name = "网络接口名称(如eth0、ens33等)") + private String name; + + /** 接收流量(字节) */ + @Excel(name = "接收流量(字节)") + private BigDecimal inBytes; + + /** 发送流量(字节) */ + @Excel(name = "发送流量(字节)") + private BigDecimal outBytes; + + /** 接口状态(up/down等) */ + @Excel(name = "接口状态(up/down等)") + private String status; + + /** 接口类型(ethernet/wireless等) */ + @Excel(name = "接口类型(ethernet/wireless等)") + private String type; + + /** 接收流量(bytes/s) */ + @Excel(name = "接收流量", readConverterExp = "b=ytes/s") + private BigDecimal inSpeed; + + /** 发送流量(bytes/s) */ + @Excel(name = "发送流量", readConverterExp = "b=ytes/s") + private BigDecimal outSpeed; + + /** 交换机名称 */ + @Excel(name = "交换机名称") + private String switchName; + + /** 接口连接设备类型 */ + @Excel(name = "接口连接设备类型") + private String interfaceDeviceType; + + /** 服务器名称 */ + @Excel(name = "服务器名称") + private String serverName; + + /** 服务器网口 */ + @Excel(name = "服务器网口") + private String serverPort; + + /** 服务器硬件SN */ + @Excel(name = "服务器硬件SN") + private String serverSn; + + /** 交换机硬件SN */ + @Excel(name = "交换机硬件SN") + private String switchSn; + /** 数据集合 */ + private List dataList; + + private String startTime; + + private String endTime; +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/AllInterfaceNameMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/AllInterfaceNameMapper.java new file mode 100644 index 0000000..77299e7 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/AllInterfaceNameMapper.java @@ -0,0 +1,90 @@ +package com.ruoyi.system.mapper; + +import com.ruoyi.system.domain.AllInterfaceName; +import org.springframework.data.repository.query.Param; + +import java.util.List; +import java.util.Set; + +/** + * 所有接口名称Mapper接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface AllInterfaceNameMapper +{ + /** + * 查询所有接口名称 + * + * @param id 所有接口名称主键 + * @return 所有接口名称 + */ + public AllInterfaceName selectAllInterfaceNameById(Long id); + + /** + * 查询所有接口名称列表 + * + * @param allInterfaceName 所有接口名称 + * @return 所有接口名称集合 + */ + public List selectAllInterfaceNameList(AllInterfaceName allInterfaceName); + + /** + * 新增所有接口名称 + * + * @param allInterfaceName 所有接口名称 + * @return 结果 + */ + public int insertAllInterfaceName(AllInterfaceName allInterfaceName); + + /** + * 修改所有接口名称 + * + * @param allInterfaceName 所有接口名称 + * @return 结果 + */ + public int updateAllInterfaceName(AllInterfaceName allInterfaceName); + + /** + * 删除所有接口名称 + * + * @param id 所有接口名称主键 + * @return 结果 + */ + public int deleteAllInterfaceNameById(Long id); + + /** + * 批量删除所有接口名称 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteAllInterfaceNameByIds(Long[] ids); + + /** + * 根据接口名称查询表中是否存在信息 + * @param names + * @return + */ + List selectByNames(Set names); + + /** + * 批量插入接口名称 + * @param list + * @return + */ + int batchInsert(@Param("list") List list); + /** + * 查询所有服务器sn + * @param interfaceName + * @return + */ + List getAllDeviceSn(AllInterfaceName interfaceName); + /** + * 查询所有交换机sn + * @param interfaceName + * @return + */ + List getAllSwitchSn(AllInterfaceName interfaceName); +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/InitialSwitchInfoDetailsMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/InitialSwitchInfoDetailsMapper.java new file mode 100644 index 0000000..af00f70 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/InitialSwitchInfoDetailsMapper.java @@ -0,0 +1,76 @@ +package com.ruoyi.system.mapper; + +import com.ruoyi.system.domain.InitialSwitchInfoDetails; + +import java.util.List; + +/** + * 交换机监控信息Mapper接口 + * + * @author gyt + * @date 2025-08-26 + */ +public interface InitialSwitchInfoDetailsMapper +{ + /** + * 查询交换机监控信息 + * + * @param id 交换机监控信息主键 + * @return 交换机监控信息 + */ + public InitialSwitchInfoDetails selectInitialSwitchInfoDetailsById(Long id); + + /** + * 查询交换机监控信息列表 + * + * @param initialSwitchInfoDetails 交换机监控信息 + * @return 交换机监控信息集合 + */ + public List selectInitialSwitchInfoDetailsList(InitialSwitchInfoDetails initialSwitchInfoDetails); + + /** + * 新增交换机监控信息 + * + * @param initialSwitchInfoDetails 交换机监控信息 + * @return 结果 + */ + public int insertInitialSwitchInfoDetails(InitialSwitchInfoDetails initialSwitchInfoDetails); + + /** + * 修改交换机监控信息 + * + * @param initialSwitchInfoDetails 交换机监控信息 + * @return 结果 + */ + public int updateInitialSwitchInfoDetails(InitialSwitchInfoDetails initialSwitchInfoDetails); + + /** + * 删除交换机监控信息 + * + * @param id 交换机监控信息主键 + * @return 结果 + */ + public int deleteInitialSwitchInfoDetailsById(Long id); + + /** + * 批量删除交换机监控信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteInitialSwitchInfoDetailsByIds(Long[] ids); + + /** + * 批量新增交换机流量业务数据 + * @param initialSwitchInfoDetails + * @return + */ + int saveBatchSwitchTraffic(InitialSwitchInfoDetails initialSwitchInfoDetails); + + /** + * 查询交换机信息 + * @param initialSwitchInfoDetails + * @return + */ + List getAllSwitchInfoMsg(InitialSwitchInfoDetails initialSwitchInfoDetails); +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RmEpsTopologyManagementMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RmEpsTopologyManagementMapper.java index 05256fd..20fd4f3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RmEpsTopologyManagementMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RmEpsTopologyManagementMapper.java @@ -1,8 +1,9 @@ package com.ruoyi.system.mapper; -import java.util.List; import com.ruoyi.system.domain.RmEpsTopologyManagement; +import java.util.List; + /** * 拓扑管理Mapper接口 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/EpsInitialTrafficDataService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/EpsInitialTrafficDataService.java index 9af7f7b..6f9a6db 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/EpsInitialTrafficDataService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/EpsInitialTrafficDataService.java @@ -1,6 +1,7 @@ package com.ruoyi.system.service; import com.ruoyi.system.domain.EpsInitialTrafficData; +import com.ruoyi.system.domain.InitialSwitchInfoDetails; import java.util.List; @@ -39,5 +40,17 @@ public interface EpsInitialTrafficDataService { * @return 初始流量数据列表 */ List getAllTraficMsg(EpsInitialTrafficData queryParam); + /** + * 计算95带宽值 + * @param queryParam 查询参数实体 + * @return 流量数据列表 + */ + void calculate95BandwidthDaily(EpsInitialTrafficData queryParam); + /** + * 计算交换机95带宽值 + * @param queryParam 查询参数实体 + * @return 流量数据列表 + */ + void calculateSwitch95BandwidthDaily(InitialSwitchInfoDetails queryParam); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IAllInterfaceNameService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IAllInterfaceNameService.java new file mode 100644 index 0000000..00492bb --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IAllInterfaceNameService.java @@ -0,0 +1,61 @@ +package com.ruoyi.system.service; + +import java.util.List; +import com.ruoyi.system.domain.AllInterfaceName; + +/** + * 所有接口名称Service接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface IAllInterfaceNameService +{ + /** + * 查询所有接口名称 + * + * @param id 所有接口名称主键 + * @return 所有接口名称 + */ + public AllInterfaceName selectAllInterfaceNameById(Long id); + + /** + * 查询所有接口名称列表 + * + * @param allInterfaceName 所有接口名称 + * @return 所有接口名称集合 + */ + public List selectAllInterfaceNameList(AllInterfaceName allInterfaceName); + + /** + * 新增所有接口名称 + * + * @param allInterfaceName 所有接口名称 + * @return 结果 + */ + public int insertAllInterfaceName(AllInterfaceName allInterfaceName); + + /** + * 修改所有接口名称 + * + * @param allInterfaceName 所有接口名称 + * @return 结果 + */ + public int updateAllInterfaceName(AllInterfaceName allInterfaceName); + + /** + * 批量删除所有接口名称 + * + * @param ids 需要删除的所有接口名称主键集合 + * @return 结果 + */ + public int deleteAllInterfaceNameByIds(Long[] ids); + + /** + * 删除所有接口名称信息 + * + * @param id 所有接口名称主键 + * @return 结果 + */ + public int deleteAllInterfaceNameById(Long id); +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IInitialSwitchInfoDetailsService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IInitialSwitchInfoDetailsService.java new file mode 100644 index 0000000..515c283 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IInitialSwitchInfoDetailsService.java @@ -0,0 +1,68 @@ +package com.ruoyi.system.service; + +import com.ruoyi.common.core.domain.R; +import com.ruoyi.system.domain.InitialSwitchInfoDetails; + +import java.util.List; + +/** + * 交换机监控信息Service接口 + * + * @author gyt + * @date 2025-08-26 + */ +public interface IInitialSwitchInfoDetailsService +{ + /** + * 查询交换机监控信息 + * + * @param id 交换机监控信息主键 + * @return 交换机监控信息 + */ + public InitialSwitchInfoDetails selectInitialSwitchInfoDetailsById(Long id); + + /** + * 查询交换机监控信息列表 + * + * @param initialSwitchInfoDetails 交换机监控信息 + * @return 交换机监控信息集合 + */ + public List selectInitialSwitchInfoDetailsList(InitialSwitchInfoDetails initialSwitchInfoDetails); + + /** + * 新增交换机监控信息 + * + * @param initialSwitchInfoDetails 交换机监控信息 + * @return 结果 + */ + public int insertInitialSwitchInfoDetails(InitialSwitchInfoDetails initialSwitchInfoDetails); + + /** + * 修改交换机监控信息 + * + * @param initialSwitchInfoDetails 交换机监控信息 + * @return 结果 + */ + public int updateInitialSwitchInfoDetails(InitialSwitchInfoDetails initialSwitchInfoDetails); + + /** + * 批量删除交换机监控信息 + * + * @param ids 需要删除的交换机监控信息主键集合 + * @return 结果 + */ + public int deleteInitialSwitchInfoDetailsByIds(Long[] ids); + + /** + * 删除交换机监控信息信息 + * + * @param id 交换机监控信息主键 + * @return 结果 + */ + public int deleteInitialSwitchInfoDetailsById(Long id); + /** + * 保存交换机流量信息 + * @param initialSwitchInfoDetails + */ + R autoSaveSwitchTraffic(InitialSwitchInfoDetails initialSwitchInfoDetails); +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/AllInterfaceNameServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/AllInterfaceNameServiceImpl.java new file mode 100644 index 0000000..de9b86f --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/AllInterfaceNameServiceImpl.java @@ -0,0 +1,96 @@ +package com.ruoyi.system.service.impl; + +import java.util.List; +import com.ruoyi.common.core.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.ruoyi.system.mapper.AllInterfaceNameMapper; +import com.ruoyi.system.domain.AllInterfaceName; +import com.ruoyi.system.service.IAllInterfaceNameService; + +/** + * 所有接口名称Service业务层处理 + * + * @author gyt + * @date 2025-08-25 + */ +@Service +public class AllInterfaceNameServiceImpl implements IAllInterfaceNameService +{ + @Autowired + private AllInterfaceNameMapper allInterfaceNameMapper; + + /** + * 查询所有接口名称 + * + * @param id 所有接口名称主键 + * @return 所有接口名称 + */ + @Override + public AllInterfaceName selectAllInterfaceNameById(Long id) + { + return allInterfaceNameMapper.selectAllInterfaceNameById(id); + } + + /** + * 查询所有接口名称列表 + * + * @param allInterfaceName 所有接口名称 + * @return 所有接口名称 + */ + @Override + public List selectAllInterfaceNameList(AllInterfaceName allInterfaceName) + { + return allInterfaceNameMapper.selectAllInterfaceNameList(allInterfaceName); + } + + /** + * 新增所有接口名称 + * + * @param allInterfaceName 所有接口名称 + * @return 结果 + */ + @Override + public int insertAllInterfaceName(AllInterfaceName allInterfaceName) + { + allInterfaceName.setCreateTime(DateUtils.getNowDate()); + return allInterfaceNameMapper.insertAllInterfaceName(allInterfaceName); + } + + /** + * 修改所有接口名称 + * + * @param allInterfaceName 所有接口名称 + * @return 结果 + */ + @Override + public int updateAllInterfaceName(AllInterfaceName allInterfaceName) + { + allInterfaceName.setUpdateTime(DateUtils.getNowDate()); + return allInterfaceNameMapper.updateAllInterfaceName(allInterfaceName); + } + + /** + * 批量删除所有接口名称 + * + * @param ids 需要删除的所有接口名称主键 + * @return 结果 + */ + @Override + public int deleteAllInterfaceNameByIds(Long[] ids) + { + return allInterfaceNameMapper.deleteAllInterfaceNameByIds(ids); + } + + /** + * 删除所有接口名称信息 + * + * @param id 所有接口名称主键 + * @return 结果 + */ + @Override + public int deleteAllInterfaceNameById(Long id) + { + return allInterfaceNameMapper.deleteAllInterfaceNameById(id); + } +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/EpsInitialTrafficDataServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/EpsInitialTrafficDataServiceImpl.java index e9efa34..36dc13b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/EpsInitialTrafficDataServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/EpsInitialTrafficDataServiceImpl.java @@ -1,7 +1,14 @@ package com.ruoyi.system.service.impl; +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.system.domain.AllInterfaceName; import com.ruoyi.system.domain.EpsInitialTrafficData; +import com.ruoyi.system.domain.EpsNodeBandwidth; +import com.ruoyi.system.domain.InitialSwitchInfoDetails; +import com.ruoyi.system.mapper.AllInterfaceNameMapper; import com.ruoyi.system.mapper.EpsInitialTrafficDataMapper; +import com.ruoyi.system.mapper.EpsNodeBandwidthMapper; +import com.ruoyi.system.mapper.InitialSwitchInfoDetailsMapper; import com.ruoyi.system.service.EpsInitialTrafficDataService; import com.ruoyi.system.util.TableRouterUtil; import lombok.extern.slf4j.Slf4j; @@ -10,13 +17,15 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.function.Consumer; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import java.util.stream.Collectors; @Service @@ -24,8 +33,15 @@ import java.util.stream.Collectors; public class EpsInitialTrafficDataServiceImpl implements EpsInitialTrafficDataService { + private static final Pattern SPEED_PATTERN = Pattern.compile("(\\d+\\.?\\d*)\\s*(\\S*)"); @Autowired private EpsInitialTrafficDataMapper epsInitialTrafficDataMapper; + @Autowired + private EpsNodeBandwidthMapper epsNodeBandwidthMapper; + @Autowired + private AllInterfaceNameMapper allInterfaceNameMapper; + @Autowired + private InitialSwitchInfoDetailsMapper initialSwitchInfoDetailsMapper; @Override public void createNextMonthTables() { LocalDate nextMonth = LocalDate.now().plusMonths(1); @@ -168,7 +184,6 @@ public class EpsInitialTrafficDataServiceImpl implements EpsInitialTrafficDataSe // 获取涉及的表名 Set tableNames = TableRouterUtil.getTableNamesBetweenInitial(queryParam.getStartTime(), queryParam.getEndTime()); - log.error("initial表名:{}",tableNames); // 并行查询各表 return tableNames.parallelStream() .flatMap(tableName -> { @@ -182,4 +197,174 @@ public class EpsInitialTrafficDataServiceImpl implements EpsInitialTrafficDataSe .collect(Collectors.toList()); } + @Override + public void calculate95BandwidthDaily(EpsInitialTrafficData queryParam) { + Date now = DateUtils.getNowDate(); + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.HOUR_OF_DAY, -24); + Date startDate = calendar.getTime(); + // 格式化时间 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String startTime = sdf.format(startDate); + String endTime = sdf.format(now); + queryParam.setStartTime(startTime); + queryParam.setEndTime(endTime); + queryParam.setRevenueMethod("1"); + // 查询所有的服务器sn + AllInterfaceName allInterfaceName = new AllInterfaceName(); + List snList = allInterfaceNameMapper.getAllDeviceSn(allInterfaceName); + for (AllInterfaceName interfaceName : snList) { + queryParam.setServiceSn(interfaceName.getDeviceSn()); + // 查询原始数据 + List dataList = query(queryParam); + if(!dataList.isEmpty()){ + // 1. 提取 outSpeed 并转换为 Mbps + List speedsInMbps = dataList.stream() + .map(data -> parseSpeedToMbps(data.getOutSpeed())) + .sorted() + .collect(Collectors.toList()); + + // 2. 计算 95% 位置(向上取整) + int total = speedsInMbps.size(); + int position = (int) Math.ceil(0.95 * total) - 1; // 转换为 0-based 索引 + if (position < 0){ + position = 0; + } + if (position >= total){ + position = total - 1; + } + + // 3. 获取 95 值并四舍五入到两位小数 + BigDecimal percentile95 = speedsInMbps.get(position); + BigDecimal dailyResult = percentile95.setScale(2, RoundingMode.HALF_UP); + // 服务器信息 + EpsInitialTrafficData epsInitialTrafficData = dataList.get(0); + // 落入带宽计算结果表 + EpsNodeBandwidth bandwidth = new EpsNodeBandwidth(); + bandwidth.setHardwareSn(epsInitialTrafficData.getServiceSn()); + bandwidth.setNodeName(epsInitialTrafficData.getNodeName()); + bandwidth.setBusinessId(epsInitialTrafficData.getBusinessId()); + bandwidth.setBusinessName(epsInitialTrafficData.getBusinessName()); + bandwidth.setResourceType("1"); + bandwidth.setBandwidthType("1"); + bandwidth.setBandwidthResult(dailyResult); + bandwidth.setBandwidth95Daily(dailyResult); + bandwidth.setCreateTime(startDate); + epsNodeBandwidthMapper.insertEpsNodeBandwidth(bandwidth); + } + } + } + @Override + public void calculateSwitch95BandwidthDaily(InitialSwitchInfoDetails queryParam) { + Date now = DateUtils.getNowDate(); + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.HOUR_OF_DAY, -24); + Date startDate = calendar.getTime(); + // 格式化时间 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String startTime = sdf.format(startDate); + String endTime = sdf.format(now); + queryParam.setStartTime(startTime); + queryParam.setEndTime(endTime); + // 查询所有的服务器sn + AllInterfaceName allInterfaceName = new AllInterfaceName(); + List switchSnList = allInterfaceNameMapper.getAllSwitchSn(allInterfaceName); + for (AllInterfaceName interfaceName : switchSnList) { + queryParam.setSwitchSn(interfaceName.getSwitchSn()); + // 查询原始数据 + List dataList = initialSwitchInfoDetailsMapper.selectInitialSwitchInfoDetailsList(queryParam); + if(!dataList.isEmpty()){ + // 1. 提取 outSpeed 并转换为 Mbps + List speedsInMbps = dataList.stream() + .map(data -> { + // 根据 type 选择 inSpeed 或 outSpeed + String speed = ("1".equals(data.getInterfaceDeviceType())) ? data.getInSpeed()+"" : data.getOutSpeed()+""; + // 如果 speed 是纯数字,补充单位 "B/S"(Bytes/s) + if (speed.matches("^\\d+(\\.\\d+)?$")) { + speed += " B/S"; + } + return parseSpeedToMbps(speed); + }) + .sorted() + .collect(Collectors.toList()); + + // 2. 计算 95% 位置(向上取整) + int total = speedsInMbps.size(); + int position = (int) Math.ceil(0.95 * total) - 1; // 转换为 0-based 索引 + if (position < 0){ + position = 0; + } + if (position >= total){ + position = total - 1; + } + + // 3. 获取 95 值并四舍五入到两位小数 + BigDecimal percentile95 = speedsInMbps.get(position); + BigDecimal dailyResult = percentile95.setScale(2, RoundingMode.HALF_UP); + // 服务器信息 + InitialSwitchInfoDetails initialSwitchInfoDetails = dataList.get(0); + // 落入带宽计算结果表 + EpsNodeBandwidth bandwidth = new EpsNodeBandwidth(); + bandwidth.setHardwareSn(initialSwitchInfoDetails.getServerSn()); + bandwidth.setNodeName(initialSwitchInfoDetails.getServerName()); + bandwidth.setResourceType("2"); + bandwidth.setBandwidthType("1"); + bandwidth.setBandwidthResult(dailyResult); + bandwidth.setBandwidth95Daily(dailyResult); + bandwidth.setCreateTime(startDate); + epsNodeBandwidthMapper.insertEpsNodeBandwidth(bandwidth); + } + } + + } + + /** + * 单位换算 + * @param speedWithUnit + * @return + */ + private static BigDecimal parseSpeedToMbps(String speedWithUnit) { + if (speedWithUnit == null || speedWithUnit.trim().isEmpty()) { + return BigDecimal.ZERO; + } + + Matcher matcher = SPEED_PATTERN.matcher(speedWithUnit.trim()); + if (!matcher.find()) { + throw new IllegalArgumentException("Invalid speed format: " + speedWithUnit); + } + + BigDecimal value = new BigDecimal(matcher.group(1)); + String unit = matcher.group(2).toUpperCase(); + + // 处理纯数字(单位为空) + if (unit.isEmpty()) { + unit = "B/S"; // 默认单位: Bytes/s + } + + // 单位换算逻辑(保持不变) + switch (unit) { + case "B/S": + return value.multiply(new BigDecimal("0.000008")); + case "KBPS": + case "KB/S": + return value.divide(new BigDecimal("1000"), 10, RoundingMode.HALF_UP); + case "MBPS": + case "MB/S": + return value; + case "GBPS": + case "GB/S": + return value.multiply(new BigDecimal("1000")); + case "TBPS": + case "TB/S": + return value.multiply(new BigDecimal("1000000")); + case "KIB/S": + return value.multiply(new BigDecimal("0.008192")); + case "MIB/S": + return value.multiply(new BigDecimal("8.388608")); + case "GIB/S": + return value.multiply(new BigDecimal("8589.934592")); + default: + throw new IllegalArgumentException("Unknown speed unit: " + unit); + } + } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/EpsServerRevenueConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/EpsServerRevenueConfigServiceImpl.java index 02fd635..e47aa9b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/EpsServerRevenueConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/EpsServerRevenueConfigServiceImpl.java @@ -2,10 +2,14 @@ package com.ruoyi.system.service.impl; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.security.utils.SecurityUtils; +import com.ruoyi.system.domain.AllInterfaceName; import com.ruoyi.system.domain.EpsInitialTrafficData; import com.ruoyi.system.domain.EpsMethodChangeRecord; import com.ruoyi.system.domain.EpsServerRevenueConfig; +import com.ruoyi.system.mapper.AllInterfaceNameMapper; +import com.ruoyi.system.mapper.EpsMethodChangeRecordMapper; import com.ruoyi.system.mapper.EpsServerRevenueConfigMapper; import com.ruoyi.system.service.EpsInitialTrafficDataService; import com.ruoyi.system.service.IEpsServerRevenueConfigService; @@ -16,6 +20,8 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; /** * 服务器收益方式配置Service业务层处理 @@ -31,6 +37,10 @@ public class EpsServerRevenueConfigServiceImpl implements IEpsServerRevenueConfi private EpsServerRevenueConfigMapper epsServerRevenueConfigMapper; @Autowired private EpsInitialTrafficDataService epsInitialTrafficDataService; + @Autowired + private EpsMethodChangeRecordMapper epsMethodChangeRecordMapper; + @Autowired + private AllInterfaceNameMapper allInterfaceNameMapper; /** * 查询服务器收益方式配置 @@ -119,7 +129,7 @@ public class EpsServerRevenueConfigServiceImpl implements IEpsServerRevenueConfi } changeRecord.setChangeContent(content); // 添加操作记录 - epsServerRevenueConfigMapper.insertEpsServerRevenueConfig(epsServerRevenueConfig); + epsMethodChangeRecordMapper.insertEpsMethodChangeRecord(changeRecord); } /** @@ -175,6 +185,8 @@ public class EpsServerRevenueConfigServiceImpl implements IEpsServerRevenueConfi try { epsInitialTrafficDataService.saveBatch(epsInitialTrafficData); log.info("流量数据批量入库成功,数据量:{}", batchList.size()); + // 接口名称保存 + processInterfaceNames(batchList); return R.ok("数据保存成功"); } catch (Exception e) { log.error("流量数据入库失败,数据量:{},错误原因:{}", @@ -182,6 +194,48 @@ public class EpsServerRevenueConfigServiceImpl implements IEpsServerRevenueConfi return R.fail("数据保存失败:" + e.getMessage()); } } + /** + * 批量处理接口名称 + */ + private void processInterfaceNames(List trafficDataList) { + // 收集所有需要检查的接口名称 + Set interfaceNames = trafficDataList.stream() + .map(EpsInitialTrafficData::getName) + .filter(StringUtils::isNotBlank) + .collect(Collectors.toSet()); + + if (interfaceNames.isEmpty()) { + return; + } + + // 批量查询已存在的接口名称 + List existingNames = allInterfaceNameMapper.selectByNames(interfaceNames); + Set existingNameSet = existingNames.stream() + .map(AllInterfaceName::getInterfaceName) + .collect(Collectors.toSet()); + + // 筛选出需要新增的接口名称 + List newNames = trafficDataList.stream() + .filter(data -> !existingNameSet.contains(data.getName())) + .map(data -> { + AllInterfaceName name = new AllInterfaceName(); + name.setInterfaceName(data.getName()); + name.setClientId(data.getClientId()); + name.setResourceType("1"); + name.setDeviceSn(data.getServiceSn()); + name.setNodeName(data.getNodeName()); + name.setBusinessCode(data.getBusinessId()); + name.setBusinessName(data.getBusinessName()); + return name; + }) + .collect(Collectors.toList()); + + // 批量插入新接口名称 + if (!newNames.isEmpty()) { + allInterfaceNameMapper.batchInsert(newNames); + log.info("接口名称表-新增接口名称数量:{}", newNames.size()); + } + } /** * 批量删除服务器收益方式配置 * @@ -220,4 +274,5 @@ public class EpsServerRevenueConfigServiceImpl implements IEpsServerRevenueConfi } return revenueMethod; } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/InitialSwitchInfoDetailsServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/InitialSwitchInfoDetailsServiceImpl.java new file mode 100644 index 0000000..bec3d32 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/InitialSwitchInfoDetailsServiceImpl.java @@ -0,0 +1,203 @@ +package com.ruoyi.system.service.impl; + +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.common.core.utils.StringUtils; +import com.ruoyi.system.domain.AllInterfaceName; +import com.ruoyi.system.domain.InitialSwitchInfoDetails; +import com.ruoyi.system.domain.RmEpsTopologyManagement; +import com.ruoyi.system.mapper.AllInterfaceNameMapper; +import com.ruoyi.system.mapper.InitialSwitchInfoDetailsMapper; +import com.ruoyi.system.mapper.RmEpsTopologyManagementMapper; +import com.ruoyi.system.service.IInitialSwitchInfoDetailsService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; + +/** + * 交换机监控信息Service业务层处理 + * + * @author gyt + * @date 2025-08-26 + */ +@Service +@Slf4j +public class InitialSwitchInfoDetailsServiceImpl implements IInitialSwitchInfoDetailsService +{ + @Autowired + private InitialSwitchInfoDetailsMapper initialSwitchInfoDetailsMapper; + @Autowired + private RmEpsTopologyManagementMapper rmEpsTopologyManagementMapper; + @Autowired + private AllInterfaceNameMapper allInterfaceNameMapper; + + /** + * 查询交换机监控信息 + * + * @param id 交换机监控信息主键 + * @return 交换机监控信息 + */ + @Override + public InitialSwitchInfoDetails selectInitialSwitchInfoDetailsById(Long id) + { + return initialSwitchInfoDetailsMapper.selectInitialSwitchInfoDetailsById(id); + } + + /** + * 查询交换机监控信息列表 + * + * @param initialSwitchInfoDetails 交换机监控信息 + * @return 交换机监控信息 + */ + @Override + public List selectInitialSwitchInfoDetailsList(InitialSwitchInfoDetails initialSwitchInfoDetails) + { + return initialSwitchInfoDetailsMapper.selectInitialSwitchInfoDetailsList(initialSwitchInfoDetails); + } + + /** + * 新增交换机监控信息 + * + * @param initialSwitchInfoDetails 交换机监控信息 + * @return 结果 + */ + @Override + public int insertInitialSwitchInfoDetails(InitialSwitchInfoDetails initialSwitchInfoDetails) + { + initialSwitchInfoDetails.setCreateTime(DateUtils.getNowDate()); + return initialSwitchInfoDetailsMapper.insertInitialSwitchInfoDetails(initialSwitchInfoDetails); + } + + /** + * 修改交换机监控信息 + * + * @param initialSwitchInfoDetails 交换机监控信息 + * @return 结果 + */ + @Override + public int updateInitialSwitchInfoDetails(InitialSwitchInfoDetails initialSwitchInfoDetails) + { + initialSwitchInfoDetails.setUpdateTime(DateUtils.getNowDate()); + return initialSwitchInfoDetailsMapper.updateInitialSwitchInfoDetails(initialSwitchInfoDetails); + } + + /** + * 批量删除交换机监控信息 + * + * @param ids 需要删除的交换机监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialSwitchInfoDetailsByIds(Long[] ids) + { + return initialSwitchInfoDetailsMapper.deleteInitialSwitchInfoDetailsByIds(ids); + } + + /** + * 删除交换机监控信息信息 + * + * @param id 交换机监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialSwitchInfoDetailsById(Long id) + { + return initialSwitchInfoDetailsMapper.deleteInitialSwitchInfoDetailsById(id); + } + /** + * 保存交换机流量信息 + * @param initialSwitchInfoDetails + */ + public R autoSaveSwitchTraffic(InitialSwitchInfoDetails initialSwitchInfoDetails) { + // 查询初始流量数据 + List dataList = initialSwitchInfoDetailsMapper.getAllSwitchInfoMsg(initialSwitchInfoDetails); + List batchList = new ArrayList<>(); + if(!dataList.isEmpty()){ + for (InitialSwitchInfoDetails details : dataList) { + // 根据接口名称查询交换机信息 + String interfaceName = details.getName(); + RmEpsTopologyManagement rmEpsTopologyManagement = new RmEpsTopologyManagement(); + rmEpsTopologyManagement.setInterfaceName(interfaceName); + List managements = rmEpsTopologyManagementMapper.selectRmEpsTopologyManagementList(rmEpsTopologyManagement); + // 赋值 + if(!managements.isEmpty()){ + RmEpsTopologyManagement management = managements.get(0); + details.setSwitchSn(management.getSwitchSn()); + details.setSwitchName(management.getSwitchName()); + details.setInterfaceDeviceType(management.getConnectedDeviceType()); + details.setServerName(management.getServerName()); + details.setServerPort(management.getServerPort()); + } + // id自增 + details.setId(null); + batchList.add(details); + } + } + initialSwitchInfoDetails.setDataList(batchList); + if(batchList.isEmpty()){ + return R.fail("交换机流量数据为空"); + }else{ + // 流量相关数据入库 + try { + initialSwitchInfoDetailsMapper.saveBatchSwitchTraffic(initialSwitchInfoDetails); + log.info("交换机流量数据批量入库成功,数据量:{}", batchList.size()); + // 接口名称保存 + processSwitchInterfaceNames(batchList); + return R.ok("数据保存成功"); + } catch (Exception e) { + log.error("交换机流量数据入库失败,数据量:{},错误原因:{}", + batchList.size(), e.getMessage(), e); + return R.fail("数据保存失败:" + e.getMessage()); + } + } + } + /** + * 批量处理接口名称 + */ + private void processSwitchInterfaceNames(List initialSwitchInfoDetails) { + // 收集所有需要检查的接口名称 + Set interfaceNames = initialSwitchInfoDetails.stream() + .map(InitialSwitchInfoDetails::getName) + .filter(StringUtils::isNotBlank) + .collect(Collectors.toSet()); + + if (interfaceNames.isEmpty()) { + return; + } + + // 批量查询已存在的接口名称 + List existingNames = allInterfaceNameMapper.selectByNames(interfaceNames); + Set existingNameSet = existingNames.stream() + .map(AllInterfaceName::getInterfaceName) + .collect(Collectors.toSet()); + + // 筛选出需要新增的接口名称 + List newNames = initialSwitchInfoDetails.stream() + .filter(data -> !existingNameSet.contains(data.getName())) + .map(data -> { + AllInterfaceName name = new AllInterfaceName(); + name.setInterfaceName(data.getName()); + name.setClientId(data.getClientId()); + name.setResourceType("2"); + name.setDeviceSn(data.getServerSn()); + name.setNodeName(data.getServerName()); + name.setServerPort(data.getServerPort()); + name.setInterfaceDeviceType(data.getInterfaceDeviceType()); + name.setSwitchName(data.getSwitchName()); + name.setSwitchSn(data.getSwitchSn()); + return name; + }) + .collect(Collectors.toList()); + + // 批量插入新接口名称 + if (!newNames.isEmpty()) { + allInterfaceNameMapper.batchInsert(newNames); + log.info("接口名称表-新增交换机接口名称数量:{}", newNames.size()); + } + } +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RmEpsTopologyManagementServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RmEpsTopologyManagementServiceImpl.java index e3f0da4..2047e8f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RmEpsTopologyManagementServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RmEpsTopologyManagementServiceImpl.java @@ -1,12 +1,13 @@ package com.ruoyi.system.service.impl; -import java.util.List; import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.system.domain.RmEpsTopologyManagement; +import com.ruoyi.system.mapper.RmEpsTopologyManagementMapper; +import com.ruoyi.system.service.IRmEpsTopologyManagementService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import com.ruoyi.system.mapper.RmEpsTopologyManagementMapper; -import com.ruoyi.system.domain.RmEpsTopologyManagement; -import com.ruoyi.system.service.IRmEpsTopologyManagementService; + +import java.util.List; /** * 拓扑管理Service业务层处理 @@ -15,11 +16,10 @@ import com.ruoyi.system.service.IRmEpsTopologyManagementService; * @date 2025-08-12 */ @Service -public class RmEpsTopologyManagementServiceImpl implements IRmEpsTopologyManagementService +public class RmEpsTopologyManagementServiceImpl implements IRmEpsTopologyManagementService { @Autowired private RmEpsTopologyManagementMapper rmEpsTopologyManagementMapper; - /** * 查询拓扑管理 * @@ -93,4 +93,5 @@ public class RmEpsTopologyManagementServiceImpl implements IRmEpsTopologyManagem { return rmEpsTopologyManagementMapper.deleteRmEpsTopologyManagementById(id); } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/AllInterfaceNameMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/AllInterfaceNameMapper.xml new file mode 100644 index 0000000..89d8096 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/AllInterfaceNameMapper.xml @@ -0,0 +1,192 @@ + + + + + + + + + + + + + + + + + + + + + select id, client_id, interface_name, device_sn, node_name, business_code, business_name, resource_type, switch_name, interface_device_type, server_port, switch_sn, create_time, update_time, create_by, update_by from all_interface_name + + + + + + + + insert into all_interface_name + + client_id, + interface_name, + device_sn, + node_name, + business_code, + business_name, + resource_type, + switch_name, + interface_device_type, + server_port, + switch_sn, + create_time, + update_time, + create_by, + update_by, + + + #{clientId}, + #{interfaceName}, + #{deviceSn}, + #{nodeName}, + #{businessCode}, + #{businessName}, + #{resourceType}, + #{switchName}, + #{interfaceDeviceType}, + #{serverPort}, + #{switchSn}, + #{createTime}, + #{updateTime}, + #{createBy}, + #{updateBy}, + + + + + update all_interface_name + + client_id = #{clientId}, + interface_name = #{interfaceName}, + device_sn = #{deviceSn}, + node_name = #{nodeName}, + business_code = #{businessCode}, + business_name = #{businessName}, + resource_type = #{resourceType}, + switch_name = #{switchName}, + interface_device_type = #{interfaceDeviceType}, + server_port = #{serverPort}, + switch_sn = #{switchSn}, + create_time = #{createTime}, + update_time = #{updateTime}, + create_by = #{createBy}, + update_by = #{updateBy}, + + where id = #{id} + + + + delete from all_interface_name where id = #{id} + + + + delete from all_interface_name where id in + + #{id} + + + + + + + + INSERT INTO all_interface_name + ( + interface_name, + client_id, + resource_type, + device_sn, + node_name, + business_code, + business_name, + switch_name, interface_device_type, server_port, switch_sn, + create_time, + update_time + ) + VALUES + + ( + #{item.interfaceName}, + #{item.clientId}, + #{item.resourceType}, + #{item.deviceSn}, + #{item.nodeName}, + #{item.businessCode}, + #{item.businessName}, + #{item.switchName}, #{item.interfaceDeviceType}, #{item.serverPort}, #{item.switchSn}, + NOW(), + NOW() + ) + + + + + + + + \ No newline at end of file diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/EpsInitialTrafficDataMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/EpsInitialTrafficDataMapper.xml index 06ce84b..00c36f9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/EpsInitialTrafficDataMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/EpsInitialTrafficDataMapper.xml @@ -184,6 +184,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and create_time <= #{endTime} + + and revenue_method = #{revenueMethod} + ORDER BY create_time desc diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/InitialSwitchInfoDetailsMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/InitialSwitchInfoDetailsMapper.xml new file mode 100644 index 0000000..c54c5b1 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/InitialSwitchInfoDetailsMapper.xml @@ -0,0 +1,222 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, client_id, name, in_bytes, out_bytes, status, type, in_speed, out_speed, create_by, update_by, create_time, update_time, switch_name, interface_device_type, server_name, server_port, server_sn, switch_sn from initial_switch_info_details + + + + + + + + insert into initial_switch_info_details + + client_id, + name, + in_bytes, + out_bytes, + status, + type, + in_speed, + out_speed, + create_by, + update_by, + create_time, + update_time, + switch_name, + interface_device_type, + server_name, + server_port, + server_sn, + switch_sn, + + + #{clientId}, + #{name}, + #{inBytes}, + #{outBytes}, + #{status}, + #{type}, + #{inSpeed}, + #{outSpeed}, + #{createBy}, + #{updateBy}, + #{createTime}, + #{updateTime}, + #{switchName}, + #{interfaceDeviceType}, + #{serverName}, + #{serverPort}, + #{serverSn}, + #{switchSn}, + + + + + update initial_switch_info_details + + client_id = #{clientId}, + name = #{name}, + in_bytes = #{inBytes}, + out_bytes = #{outBytes}, + status = #{status}, + type = #{type}, + in_speed = #{inSpeed}, + out_speed = #{outSpeed}, + create_by = #{createBy}, + update_by = #{updateBy}, + create_time = #{createTime}, + update_time = #{updateTime}, + switch_name = #{switchName}, + interface_device_type = #{interfaceDeviceType}, + server_name = #{serverName}, + server_port = #{serverPort}, + server_sn = #{serverSn}, + switch_sn = #{switchSn}, + + where id = #{id} + + + + delete from initial_switch_info_details where id = #{id} + + + + delete from initial_switch_info_details where id in + + #{id} + + + + + + INSERT INTO initial_switch_info_details + ( + client_id, + name, + in_bytes, + out_bytes, + status, + type, + in_speed, + out_speed, + switch_name, + interface_device_type, + server_name, + server_port, + server_sn, + switch_sn, + create_by, + update_by, + create_time, + update_time + ) + VALUES + + ( + #{item.clientId}, + #{item.name}, + #{item.inBytes}, + #{item.outBytes}, + #{item.status}, + #{item.type}, + #{item.inSpeed}, + #{item.outSpeed}, + #{item.switchName}, + #{item.interfaceDeviceType}, + #{item.serverName}, + #{item.serverPort}, + #{item.serverSn}, + #{item.switchSn}, + #{item.createBy}, + #{item.updateBy}, + + + #{item.createTime} + + + NOW() + + , + + + #{item.updateTime} + + + NOW() + + + ) + + + \ No newline at end of file diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RmEpsTopologyManagementMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RmEpsTopologyManagementMapper.xml index a11429d..0bdf9c6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RmEpsTopologyManagementMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RmEpsTopologyManagementMapper.xml @@ -30,7 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and switch_name like concat('%', #{switchName}, '%') and switch_sn = #{switchSn} - and interface_name like concat('%', #{interfaceName}, '%') + and interface_name= #{interfaceName} and connected_device_type = #{connectedDeviceType} and server_name like concat('%', #{serverName}, '%') and server_sn = #{serverSn} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/consumer/RocketMsgListener.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/consumer/RocketMsgListener.java index bb9d867..293923f 100644 --- a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/consumer/RocketMsgListener.java +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/consumer/RocketMsgListener.java @@ -3,13 +3,14 @@ package com.ruoyi.rocketmq.consumer; import com.alibaba.fastjson.JSON; import com.ruoyi.common.core.constant.SecurityConstants; import com.ruoyi.common.core.utils.DateUtils; -import com.ruoyi.rocketmq.domain.DeviceMessage; -import com.ruoyi.rocketmq.domain.InitialBandwidthTraffic; +import com.ruoyi.rocketmq.domain.*; import com.ruoyi.rocketmq.enums.MessageCodeEnum; import com.ruoyi.rocketmq.producer.ConsumeException; -import com.ruoyi.rocketmq.service.IInitialBandwidthTrafficService; +import com.ruoyi.rocketmq.service.*; +import com.ruoyi.rocketmq.utils.JsonDataParser; import com.ruoyi.system.api.RemoteRevenueConfigService; import com.ruoyi.system.api.domain.EpsInitialTrafficDataRemote; +import com.ruoyi.system.api.domain.InitialSwitchInfoDetailsRemote; import lombok.extern.slf4j.Slf4j; import org.apache.rocketmq.client.consumer.listener.ConsumeConcurrentlyContext; import org.apache.rocketmq.client.consumer.listener.ConsumeConcurrentlyStatus; @@ -20,7 +21,12 @@ import org.springframework.stereotype.Component; import org.springframework.util.CollectionUtils; import java.io.UnsupportedEncodingException; +import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.List; +import java.util.Map; +import java.util.function.Function; +import java.util.stream.Collectors; /** * 消息监听 @@ -32,7 +38,22 @@ public class RocketMsgListener implements MessageListenerConcurrently { private final IInitialBandwidthTrafficService initialBandwidthTrafficService; private final RemoteRevenueConfigService remoteRevenueConfigService; - + @Autowired + private IInitialDockerInfoService initialDockerInfoService; + @Autowired + private IInitialCpuInfoService initialCpuInfoService; + @Autowired + private IInitialDiskInfoService initialDiskInfoService; + @Autowired + private IInitialMemoryInfoService initialMemoryInfoService; + @Autowired + private IInitialMountPointInfoService initialMountPointInfoService; + @Autowired + private IInitialSwitchInfoService initialSwitchInfoService; + @Autowired + private IInitialSystemInfoService initialSystemInfoService; + @Autowired + private IInitialSwitchInfoTempService initialSwitchInfoTempService; @Autowired public RocketMsgListener(IInitialBandwidthTrafficService initialBandwidthTrafficService, RemoteRevenueConfigService remoteRevenueConfigService) { @@ -73,23 +94,36 @@ public class RocketMsgListener implements MessageListenerConcurrently { if (MessageCodeEnum.AGENT_MESSAGE_TOPIC.getCode().equals(topic)) { // 拿到信息 DeviceMessage message = JSON.parseObject(body, DeviceMessage.class); + String duringTime = DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",message.getReceiveTime()); + message.setDuringTime(duringTime); + message.setReceiveTime(DateUtils.dateTime("yyyy-MM-dd HH:mm:ss",duringTime)); switch (message.getDataType()){ case "NET": handleNetMessage(message); break; case "CPU": + handleCpuMessage(message); break; case "SYSTEM": + handleSystemMessage(message); break; case "DISK": + handleDiskMessage(message); break; case "POINT": + handleMountPointMessage(message); break; case "MEMORY": + handleMemoryMessage(message); + break; + case "DOCKER": + handleDockerMessage(message); + break; + case "SWITCHBOARD": + handleSwitchMessage(message); break; default: log.warn("未知数据类型:{}",message.getDataType()); - } //处理你的业务 return ConsumeConcurrentlyStatus.CONSUME_SUCCESS;//业务处理成功 @@ -117,6 +151,8 @@ public class RocketMsgListener implements MessageListenerConcurrently { log.error(e.getMessage()); } else if (exceptionClass.equals(ConsumeException.class)) { log.error(e.getMessage()); + } else{ + log.error(e.getMessage()); } return ConsumeConcurrentlyStatus.RECONSUME_LATER; } @@ -126,24 +162,185 @@ public class RocketMsgListener implements MessageListenerConcurrently { * @param message */ private void handleNetMessage(DeviceMessage message) { - List interfaces = JSON.parseArray(message.getData(), InitialBandwidthTraffic.class); - InitialBandwidthTraffic data = new InitialBandwidthTraffic(); - interfaces.forEach(iface -> { - iface.setClientId(message.getClientId()); - }); - // 批量入库集合 - data.setList(interfaces); - // 开始时间 - String startTime = DateUtils.getTime(); - // 初始流量数据入库 - initialBandwidthTrafficService.batchInsert(data); - // 结束时间 - String endTime = DateUtils.getTime(); - EpsInitialTrafficDataRemote epsInitialTrafficDataRemote = new EpsInitialTrafficDataRemote(); - epsInitialTrafficDataRemote.setStartTime(startTime); - epsInitialTrafficDataRemote.setEndTime(endTime); - // 复制到业务初始库 - remoteRevenueConfigService.autoSaveServiceTrafficData(epsInitialTrafficDataRemote, SecurityConstants.INNER); + List interfaces = JsonDataParser.parseJsonData(message.getData(), InitialBandwidthTraffic.class); + if(!interfaces.isEmpty()){ + InitialBandwidthTraffic data = new InitialBandwidthTraffic(); + interfaces.forEach(iface -> { + iface.setClientId(message.getClientId()); + iface.setCreateTime(message.getReceiveTime()); + }); + // 批量入库集合 + data.setList(interfaces); + // 初始流量数据入库 + initialBandwidthTrafficService.batchInsert(data); + EpsInitialTrafficDataRemote epsInitialTrafficDataRemote = new EpsInitialTrafficDataRemote(); + epsInitialTrafficDataRemote.setStartTime(message.getDuringTime()); + epsInitialTrafficDataRemote.setEndTime(message.getDuringTime()); + // 复制到业务初始库 + remoteRevenueConfigService.autoSaveServiceTrafficData(epsInitialTrafficDataRemote, SecurityConstants.INNER); + }else{ + throw new RuntimeException("NET流量data数据为空"); + } + } + /** + * docker数据入库 + * @param message + */ + private void handleDockerMessage(DeviceMessage message) { + List dockers = JsonDataParser.parseJsonData(message.getData(), InitialDockerInfo.class); + if(!dockers.isEmpty()){ + dockers.forEach(iface -> { + iface.setClientId(message.getClientId()); + iface.setCreateTime(message.getReceiveTime()); + }); + // 初始容器数据入库 + initialDockerInfoService.batchInsertInitialDockerInfo(dockers); + }else{ + throw new RuntimeException("DOCKER容器data数据为空"); + } + } + /** + * cpu数据入库 + * @param message + */ + private void handleCpuMessage(DeviceMessage message) { + List cpus = JsonDataParser.parseJsonData(message.getData(),InitialCpuInfo.class); + if(!cpus.isEmpty()){ + cpus.forEach(iface -> { + iface.setClientId(message.getClientId()); + iface.setCreateTime(message.getReceiveTime()); + }); + // 初始CPU数据入库 + initialCpuInfoService.batchInsertInitialCpuInfo(cpus); + }else{ + throw new RuntimeException("CPUdata数据为空"); + } + } + /** + * 磁盘数据入库 + * @param message + */ + private void handleDiskMessage(DeviceMessage message) { + List disks = JsonDataParser.parseJsonData(message.getData(), InitialDiskInfo.class); + if(!disks.isEmpty()){ + disks.forEach(iface -> { + iface.setClientId(message.getClientId()); + iface.setCreateTime(message.getReceiveTime()); + }); + // 初始磁盘数据入库 + initialDiskInfoService.batchInsertInitialDiskInfo(disks); + }else{ + throw new RuntimeException("磁盘data数据为空"); + } + } + /** + * 内存数据入库 + * @param message + */ + private void handleMemoryMessage(DeviceMessage message) { + List memorys = JsonDataParser.parseJsonData(message.getData(), InitialMemoryInfo.class); + if(!memorys.isEmpty()){ + memorys.forEach(iface -> { + iface.setClientId(message.getClientId()); + iface.setCreateTime(message.getReceiveTime()); + }); + // 初始内存数据入库 + initialMemoryInfoService.batchInsertInitialMemoryInfo(memorys); + }else{ + throw new RuntimeException("内存data数据为空"); + } + } + /** + * 挂载点数据入库 + * @param message + */ + private void handleMountPointMessage(DeviceMessage message) { + List mountPointInfos = JsonDataParser.parseJsonData(message.getData(), InitialMountPointInfo.class); + if(!mountPointInfos.isEmpty()){ + mountPointInfos.forEach(iface -> { + iface.setClientId(message.getClientId()); + iface.setCreateTime(message.getReceiveTime()); + }); + // 初始挂载点数据入库 + initialMountPointInfoService.batchInsertInitialMountPointInfo(mountPointInfos); + }else{ + throw new RuntimeException("挂载点data数据为空"); + } + } + /** + * 交换机数据入库 + * @param message + */ + private void handleSwitchMessage(DeviceMessage message) { + List switchInfos = JsonDataParser.parseJsonData(message.getData(), InitialSwitchInfo.class); + if(!switchInfos.isEmpty()){ + // 查询临时表信息,计算实际流量值 + InitialSwitchInfoTemp temp = new InitialSwitchInfoTemp(); + temp.setClientId(message.getClientId()); + List tempList = initialSwitchInfoTempService.selectInitialSwitchInfoTempList(temp); + if(!tempList.isEmpty()){ + // 1. 构建快速查找的Map + Map tempMap = tempList.stream() + .collect(Collectors.toMap( + InitialSwitchInfoTemp::getName, + Function.identity(), + (existing, replacement) -> existing + )); + // 2. 预计算除数(避免重复创建对象) + BigDecimal divisor = new BigDecimal(300); + + // 3. 计算速度 + switchInfos.forEach(switchInfo -> { + switchInfo.setClientId(message.getClientId()); + switchInfo.setCreateTime(message.getReceiveTime()); + InitialSwitchInfoTemp tempInfo = tempMap.get(switchInfo.getName()); + if (tempInfo != null) { + // 计算inSpeed + if (switchInfo.getInBytes() != null && tempInfo.getInBytes() != null) { + BigDecimal inDiff = switchInfo.getInBytes().subtract(tempInfo.getInBytes()); + switchInfo.setInSpeed(inDiff.divide(divisor, 2, RoundingMode.HALF_UP)); + } + + // 计算outSpeed + if (switchInfo.getOutBytes() != null && tempInfo.getOutBytes() != null) { + BigDecimal outDiff = switchInfo.getOutBytes().subtract(tempInfo.getOutBytes()); + switchInfo.setOutSpeed(outDiff.divide(divisor, 2, RoundingMode.HALF_UP)); + } + } + }); + } + // 清空临时表 + initialSwitchInfoTempService.truncateSwitchInfoTemp(); + // 临时表 用来计算inSpeed outSeppd + initialSwitchInfoTempService.batchInsertInitialSwitchInfoTemp(switchInfos); + // 初始交换机数据入库 + initialSwitchInfoService.batchInsertInitialSwitchInfo(switchInfos); + // 业务表入库 + InitialSwitchInfoDetailsRemote detailsRemote = new InitialSwitchInfoDetailsRemote(); + detailsRemote.setClientId(message.getClientId()); + detailsRemote.setStartTime(message.getDuringTime()); + detailsRemote.setEndTime(message.getDuringTime()); + remoteRevenueConfigService.autoSaveSwitchTraffic(detailsRemote, SecurityConstants.INNER); + }else{ + throw new RuntimeException("交换机data数据为空"); + } + } + /** + * 系统数据入库 + * @param message + */ + private void handleSystemMessage(DeviceMessage message) { + List systemInfos = JsonDataParser.parseJsonData(message.getData(), InitialSystemInfo.class); + if(!systemInfos.isEmpty()){ + systemInfos.forEach(iface -> { + iface.setClientId(message.getClientId()); + iface.setCreateTime(message.getReceiveTime()); + }); + // 初始系统数据入库 + initialSystemInfoService.batchInsertInitialSystemInfo(systemInfos); + }else{ + throw new RuntimeException("系统data数据为空"); + } } } diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialCpuInfoController.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialCpuInfoController.java new file mode 100644 index 0000000..00f1760 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialCpuInfoController.java @@ -0,0 +1,105 @@ +package com.ruoyi.rocketmq.controller; + +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.RequiresPermissions; +import com.ruoyi.rocketmq.domain.InitialCpuInfo; +import com.ruoyi.rocketmq.service.IInitialCpuInfoService; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.utils.poi.ExcelUtil; +import com.ruoyi.common.core.web.page.TableDataInfo; + +/** + * CPU监控信息Controller + * + * @author gyt + * @date 2025-08-25 + */ +@RestController +@RequestMapping("/cpuInfo") +public class InitialCpuInfoController extends BaseController +{ + @Autowired + private IInitialCpuInfoService initialCpuInfoService; + + /** + * 查询CPU监控信息列表 + */ + @RequiresPermissions("rocketmq:cpuInfo:list") + @GetMapping("/list") + public TableDataInfo list(InitialCpuInfo initialCpuInfo) + { + startPage(); + List list = initialCpuInfoService.selectInitialCpuInfoList(initialCpuInfo); + return getDataTable(list); + } + + /** + * 导出CPU监控信息列表 + */ + @RequiresPermissions("rocketmq:cpuInfo:export") + @Log(title = "CPU监控信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, InitialCpuInfo initialCpuInfo) + { + List list = initialCpuInfoService.selectInitialCpuInfoList(initialCpuInfo); + ExcelUtil util = new ExcelUtil(InitialCpuInfo.class); + util.exportExcel(response, list, "CPU监控信息数据"); + } + + /** + * 获取CPU监控信息详细信息 + */ + @RequiresPermissions("rocketmq:cpuInfo:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(initialCpuInfoService.selectInitialCpuInfoById(id)); + } + + /** + * 新增CPU监控信息 + */ + @RequiresPermissions("rocketmq:cpuInfo:add") + @Log(title = "CPU监控信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody InitialCpuInfo initialCpuInfo) + { + return toAjax(initialCpuInfoService.insertInitialCpuInfo(initialCpuInfo)); + } + + /** + * 修改CPU监控信息 + */ + @RequiresPermissions("rocketmq:cpuInfo:edit") + @Log(title = "CPU监控信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody InitialCpuInfo initialCpuInfo) + { + return toAjax(initialCpuInfoService.updateInitialCpuInfo(initialCpuInfo)); + } + + /** + * 删除CPU监控信息 + */ + @RequiresPermissions("rocketmq:cpuInfo:remove") + @Log(title = "CPU监控信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(initialCpuInfoService.deleteInitialCpuInfoByIds(ids)); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialDiskInfoController.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialDiskInfoController.java new file mode 100644 index 0000000..9bb7227 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialDiskInfoController.java @@ -0,0 +1,105 @@ +package com.ruoyi.rocketmq.controller; + +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.RequiresPermissions; +import com.ruoyi.rocketmq.domain.InitialDiskInfo; +import com.ruoyi.rocketmq.service.IInitialDiskInfoService; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.utils.poi.ExcelUtil; +import com.ruoyi.common.core.web.page.TableDataInfo; + +/** + * 磁盘监控信息Controller + * + * @author gyt + * @date 2025-08-25 + */ +@RestController +@RequestMapping("/diskInfo") +public class InitialDiskInfoController extends BaseController +{ + @Autowired + private IInitialDiskInfoService initialDiskInfoService; + + /** + * 查询磁盘监控信息列表 + */ + @RequiresPermissions("rocketmq:diskInfo:list") + @GetMapping("/list") + public TableDataInfo list(InitialDiskInfo initialDiskInfo) + { + startPage(); + List list = initialDiskInfoService.selectInitialDiskInfoList(initialDiskInfo); + return getDataTable(list); + } + + /** + * 导出磁盘监控信息列表 + */ + @RequiresPermissions("rocketmq:diskInfo:export") + @Log(title = "磁盘监控信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, InitialDiskInfo initialDiskInfo) + { + List list = initialDiskInfoService.selectInitialDiskInfoList(initialDiskInfo); + ExcelUtil util = new ExcelUtil(InitialDiskInfo.class); + util.exportExcel(response, list, "磁盘监控信息数据"); + } + + /** + * 获取磁盘监控信息详细信息 + */ + @RequiresPermissions("rocketmq:diskInfo:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(initialDiskInfoService.selectInitialDiskInfoById(id)); + } + + /** + * 新增磁盘监控信息 + */ + @RequiresPermissions("rocketmq:diskInfo:add") + @Log(title = "磁盘监控信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody InitialDiskInfo initialDiskInfo) + { + return toAjax(initialDiskInfoService.insertInitialDiskInfo(initialDiskInfo)); + } + + /** + * 修改磁盘监控信息 + */ + @RequiresPermissions("rocketmq:diskInfo:edit") + @Log(title = "磁盘监控信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody InitialDiskInfo initialDiskInfo) + { + return toAjax(initialDiskInfoService.updateInitialDiskInfo(initialDiskInfo)); + } + + /** + * 删除磁盘监控信息 + */ + @RequiresPermissions("rocketmq:diskInfo:remove") + @Log(title = "磁盘监控信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(initialDiskInfoService.deleteInitialDiskInfoByIds(ids)); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialDockerInfoController.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialDockerInfoController.java new file mode 100644 index 0000000..d96d02c --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialDockerInfoController.java @@ -0,0 +1,105 @@ +package com.ruoyi.rocketmq.controller; + +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.RequiresPermissions; +import com.ruoyi.rocketmq.domain.InitialDockerInfo; +import com.ruoyi.rocketmq.service.IInitialDockerInfoService; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.utils.poi.ExcelUtil; +import com.ruoyi.common.core.web.page.TableDataInfo; + +/** + * 容器监控信息Controller + * + * @author gyt + * @date 2025-08-25 + */ +@RestController +@RequestMapping("/dockerInfo") +public class InitialDockerInfoController extends BaseController +{ + @Autowired + private IInitialDockerInfoService initialDockerInfoService; + + /** + * 查询容器监控信息列表 + */ + @RequiresPermissions("rocketmq:dockerInfo:list") + @GetMapping("/list") + public TableDataInfo list(InitialDockerInfo initialDockerInfo) + { + startPage(); + List list = initialDockerInfoService.selectInitialDockerInfoList(initialDockerInfo); + return getDataTable(list); + } + + /** + * 导出容器监控信息列表 + */ + @RequiresPermissions("rocketmq:dockerInfo:export") + @Log(title = "容器监控信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, InitialDockerInfo initialDockerInfo) + { + List list = initialDockerInfoService.selectInitialDockerInfoList(initialDockerInfo); + ExcelUtil util = new ExcelUtil(InitialDockerInfo.class); + util.exportExcel(response, list, "容器监控信息数据"); + } + + /** + * 获取容器监控信息详细信息 + */ + @RequiresPermissions("rocketmq:dockerInfo:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(initialDockerInfoService.selectInitialDockerInfoById(id)); + } + + /** + * 新增容器监控信息 + */ + @RequiresPermissions("rocketmq:dockerInfo:add") + @Log(title = "容器监控信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody InitialDockerInfo initialDockerInfo) + { + return toAjax(initialDockerInfoService.insertInitialDockerInfo(initialDockerInfo)); + } + + /** + * 修改容器监控信息 + */ + @RequiresPermissions("rocketmq:dockerInfo:edit") + @Log(title = "容器监控信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody InitialDockerInfo initialDockerInfo) + { + return toAjax(initialDockerInfoService.updateInitialDockerInfo(initialDockerInfo)); + } + + /** + * 删除容器监控信息 + */ + @RequiresPermissions("rocketmq:dockerInfo:remove") + @Log(title = "容器监控信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(initialDockerInfoService.deleteInitialDockerInfoByIds(ids)); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialMemoryInfoController.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialMemoryInfoController.java new file mode 100644 index 0000000..4b14ad4 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialMemoryInfoController.java @@ -0,0 +1,105 @@ +package com.ruoyi.rocketmq.controller; + +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.RequiresPermissions; +import com.ruoyi.rocketmq.domain.InitialMemoryInfo; +import com.ruoyi.rocketmq.service.IInitialMemoryInfoService; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.utils.poi.ExcelUtil; +import com.ruoyi.common.core.web.page.TableDataInfo; + +/** + * 内存监控信息Controller + * + * @author gyt + * @date 2025-08-25 + */ +@RestController +@RequestMapping("/memoryInfo") +public class InitialMemoryInfoController extends BaseController +{ + @Autowired + private IInitialMemoryInfoService initialMemoryInfoService; + + /** + * 查询内存监控信息列表 + */ + @RequiresPermissions("rocketmq:memoryInfo:list") + @GetMapping("/list") + public TableDataInfo list(InitialMemoryInfo initialMemoryInfo) + { + startPage(); + List list = initialMemoryInfoService.selectInitialMemoryInfoList(initialMemoryInfo); + return getDataTable(list); + } + + /** + * 导出内存监控信息列表 + */ + @RequiresPermissions("rocketmq:memoryInfo:export") + @Log(title = "内存监控信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, InitialMemoryInfo initialMemoryInfo) + { + List list = initialMemoryInfoService.selectInitialMemoryInfoList(initialMemoryInfo); + ExcelUtil util = new ExcelUtil(InitialMemoryInfo.class); + util.exportExcel(response, list, "内存监控信息数据"); + } + + /** + * 获取内存监控信息详细信息 + */ + @RequiresPermissions("rocketmq:memoryInfo:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(initialMemoryInfoService.selectInitialMemoryInfoById(id)); + } + + /** + * 新增内存监控信息 + */ + @RequiresPermissions("rocketmq:memoryInfo:add") + @Log(title = "内存监控信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody InitialMemoryInfo initialMemoryInfo) + { + return toAjax(initialMemoryInfoService.insertInitialMemoryInfo(initialMemoryInfo)); + } + + /** + * 修改内存监控信息 + */ + @RequiresPermissions("rocketmq:memoryInfo:edit") + @Log(title = "内存监控信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody InitialMemoryInfo initialMemoryInfo) + { + return toAjax(initialMemoryInfoService.updateInitialMemoryInfo(initialMemoryInfo)); + } + + /** + * 删除内存监控信息 + */ + @RequiresPermissions("rocketmq:memoryInfo:remove") + @Log(title = "内存监控信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(initialMemoryInfoService.deleteInitialMemoryInfoByIds(ids)); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialMountPointInfoController.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialMountPointInfoController.java new file mode 100644 index 0000000..1cab7b7 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialMountPointInfoController.java @@ -0,0 +1,105 @@ +package com.ruoyi.rocketmq.controller; + +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.RequiresPermissions; +import com.ruoyi.rocketmq.domain.InitialMountPointInfo; +import com.ruoyi.rocketmq.service.IInitialMountPointInfoService; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.utils.poi.ExcelUtil; +import com.ruoyi.common.core.web.page.TableDataInfo; + +/** + * 挂载点监控信息Controller + * + * @author gyt + * @date 2025-08-25 + */ +@RestController +@RequestMapping("/mountPointInfo") +public class InitialMountPointInfoController extends BaseController +{ + @Autowired + private IInitialMountPointInfoService initialMountPointInfoService; + + /** + * 查询挂载点监控信息列表 + */ + @RequiresPermissions("rocketmq:mountPointInfo:list") + @GetMapping("/list") + public TableDataInfo list(InitialMountPointInfo initialMountPointInfo) + { + startPage(); + List list = initialMountPointInfoService.selectInitialMountPointInfoList(initialMountPointInfo); + return getDataTable(list); + } + + /** + * 导出挂载点监控信息列表 + */ + @RequiresPermissions("rocketmq:mountPointInfo:export") + @Log(title = "挂载点监控信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, InitialMountPointInfo initialMountPointInfo) + { + List list = initialMountPointInfoService.selectInitialMountPointInfoList(initialMountPointInfo); + ExcelUtil util = new ExcelUtil(InitialMountPointInfo.class); + util.exportExcel(response, list, "挂载点监控信息数据"); + } + + /** + * 获取挂载点监控信息详细信息 + */ + @RequiresPermissions("rocketmq:mountPointInfo:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(initialMountPointInfoService.selectInitialMountPointInfoById(id)); + } + + /** + * 新增挂载点监控信息 + */ + @RequiresPermissions("rocketmq:mountPointInfo:add") + @Log(title = "挂载点监控信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody InitialMountPointInfo initialMountPointInfo) + { + return toAjax(initialMountPointInfoService.insertInitialMountPointInfo(initialMountPointInfo)); + } + + /** + * 修改挂载点监控信息 + */ + @RequiresPermissions("rocketmq:mountPointInfo:edit") + @Log(title = "挂载点监控信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody InitialMountPointInfo initialMountPointInfo) + { + return toAjax(initialMountPointInfoService.updateInitialMountPointInfo(initialMountPointInfo)); + } + + /** + * 删除挂载点监控信息 + */ + @RequiresPermissions("rocketmq:mountPointInfo:remove") + @Log(title = "挂载点监控信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(initialMountPointInfoService.deleteInitialMountPointInfoByIds(ids)); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialSwitchInfoController.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialSwitchInfoController.java new file mode 100644 index 0000000..422870c --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialSwitchInfoController.java @@ -0,0 +1,105 @@ +package com.ruoyi.rocketmq.controller; + +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.RequiresPermissions; +import com.ruoyi.rocketmq.domain.InitialSwitchInfo; +import com.ruoyi.rocketmq.service.IInitialSwitchInfoService; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.utils.poi.ExcelUtil; +import com.ruoyi.common.core.web.page.TableDataInfo; + +/** + * 交换机流量监控信息Controller + * + * @author gyt + * @date 2025-08-25 + */ +@RestController +@RequestMapping("/switchInfo") +public class InitialSwitchInfoController extends BaseController +{ + @Autowired + private IInitialSwitchInfoService initialSwitchInfoService; + + /** + * 查询交换机流量监控信息列表 + */ + @RequiresPermissions("rocketmq:switchInfo:list") + @GetMapping("/list") + public TableDataInfo list(InitialSwitchInfo initialSwitchInfo) + { + startPage(); + List list = initialSwitchInfoService.selectInitialSwitchInfoList(initialSwitchInfo); + return getDataTable(list); + } + + /** + * 导出交换机流量监控信息列表 + */ + @RequiresPermissions("rocketmq:switchInfo:export") + @Log(title = "交换机流量监控信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, InitialSwitchInfo initialSwitchInfo) + { + List list = initialSwitchInfoService.selectInitialSwitchInfoList(initialSwitchInfo); + ExcelUtil util = new ExcelUtil(InitialSwitchInfo.class); + util.exportExcel(response, list, "交换机流量监控信息数据"); + } + + /** + * 获取交换机流量监控信息详细信息 + */ + @RequiresPermissions("rocketmq:switchInfo:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(initialSwitchInfoService.selectInitialSwitchInfoById(id)); + } + + /** + * 新增交换机流量监控信息 + */ + @RequiresPermissions("rocketmq:switchInfo:add") + @Log(title = "交换机流量监控信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody InitialSwitchInfo initialSwitchInfo) + { + return toAjax(initialSwitchInfoService.insertInitialSwitchInfo(initialSwitchInfo)); + } + + /** + * 修改交换机流量监控信息 + */ + @RequiresPermissions("rocketmq:switchInfo:edit") + @Log(title = "交换机流量监控信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody InitialSwitchInfo initialSwitchInfo) + { + return toAjax(initialSwitchInfoService.updateInitialSwitchInfo(initialSwitchInfo)); + } + + /** + * 删除交换机流量监控信息 + */ + @RequiresPermissions("rocketmq:switchInfo:remove") + @Log(title = "交换机流量监控信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(initialSwitchInfoService.deleteInitialSwitchInfoByIds(ids)); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialSwitchInfoTempController.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialSwitchInfoTempController.java new file mode 100644 index 0000000..770f39c --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialSwitchInfoTempController.java @@ -0,0 +1,105 @@ +package com.ruoyi.rocketmq.controller; + +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.RequiresPermissions; +import com.ruoyi.rocketmq.domain.InitialSwitchInfoTemp; +import com.ruoyi.rocketmq.service.IInitialSwitchInfoTempService; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.utils.poi.ExcelUtil; +import com.ruoyi.common.core.web.page.TableDataInfo; + +/** + * 交换机监控信息Controller + * + * @author gyt + * @date 2025-08-26 + */ +@RestController +@RequestMapping("/temp") +public class InitialSwitchInfoTempController extends BaseController +{ + @Autowired + private IInitialSwitchInfoTempService initialSwitchInfoTempService; + + /** + * 查询交换机监控信息列表 + */ + @RequiresPermissions("rocketmq:temp:list") + @GetMapping("/list") + public TableDataInfo list(InitialSwitchInfoTemp initialSwitchInfoTemp) + { + startPage(); + List list = initialSwitchInfoTempService.selectInitialSwitchInfoTempList(initialSwitchInfoTemp); + return getDataTable(list); + } + + /** + * 导出交换机监控信息列表 + */ + @RequiresPermissions("rocketmq:temp:export") + @Log(title = "交换机监控信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, InitialSwitchInfoTemp initialSwitchInfoTemp) + { + List list = initialSwitchInfoTempService.selectInitialSwitchInfoTempList(initialSwitchInfoTemp); + ExcelUtil util = new ExcelUtil(InitialSwitchInfoTemp.class); + util.exportExcel(response, list, "交换机监控信息数据"); + } + + /** + * 获取交换机监控信息详细信息 + */ + @RequiresPermissions("rocketmq:temp:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(initialSwitchInfoTempService.selectInitialSwitchInfoTempById(id)); + } + + /** + * 新增交换机监控信息 + */ + @RequiresPermissions("rocketmq:temp:add") + @Log(title = "交换机监控信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody InitialSwitchInfoTemp initialSwitchInfoTemp) + { + return toAjax(initialSwitchInfoTempService.insertInitialSwitchInfoTemp(initialSwitchInfoTemp)); + } + + /** + * 修改交换机监控信息 + */ + @RequiresPermissions("rocketmq:temp:edit") + @Log(title = "交换机监控信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody InitialSwitchInfoTemp initialSwitchInfoTemp) + { + return toAjax(initialSwitchInfoTempService.updateInitialSwitchInfoTemp(initialSwitchInfoTemp)); + } + + /** + * 删除交换机监控信息 + */ + @RequiresPermissions("rocketmq:temp:remove") + @Log(title = "交换机监控信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(initialSwitchInfoTempService.deleteInitialSwitchInfoTempByIds(ids)); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialSystemInfoController.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialSystemInfoController.java new file mode 100644 index 0000000..435dac9 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/controller/InitialSystemInfoController.java @@ -0,0 +1,105 @@ +package com.ruoyi.rocketmq.controller; + +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.RequiresPermissions; +import com.ruoyi.rocketmq.domain.InitialSystemInfo; +import com.ruoyi.rocketmq.service.IInitialSystemInfoService; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.utils.poi.ExcelUtil; +import com.ruoyi.common.core.web.page.TableDataInfo; + +/** + * 系统监控信息Controller + * + * @author gyt + * @date 2025-08-25 + */ +@RestController +@RequestMapping("/systemInfo") +public class InitialSystemInfoController extends BaseController +{ + @Autowired + private IInitialSystemInfoService initialSystemInfoService; + + /** + * 查询系统监控信息列表 + */ + @RequiresPermissions("rocketmq:systemInfo:list") + @GetMapping("/list") + public TableDataInfo list(InitialSystemInfo initialSystemInfo) + { + startPage(); + List list = initialSystemInfoService.selectInitialSystemInfoList(initialSystemInfo); + return getDataTable(list); + } + + /** + * 导出系统监控信息列表 + */ + @RequiresPermissions("rocketmq:systemInfo:export") + @Log(title = "系统监控信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, InitialSystemInfo initialSystemInfo) + { + List list = initialSystemInfoService.selectInitialSystemInfoList(initialSystemInfo); + ExcelUtil util = new ExcelUtil(InitialSystemInfo.class); + util.exportExcel(response, list, "系统监控信息数据"); + } + + /** + * 获取系统监控信息详细信息 + */ + @RequiresPermissions("rocketmq:systemInfo:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(initialSystemInfoService.selectInitialSystemInfoById(id)); + } + + /** + * 新增系统监控信息 + */ + @RequiresPermissions("rocketmq:systemInfo:add") + @Log(title = "系统监控信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody InitialSystemInfo initialSystemInfo) + { + return toAjax(initialSystemInfoService.insertInitialSystemInfo(initialSystemInfo)); + } + + /** + * 修改系统监控信息 + */ + @RequiresPermissions("rocketmq:systemInfo:edit") + @Log(title = "系统监控信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody InitialSystemInfo initialSystemInfo) + { + return toAjax(initialSystemInfoService.updateInitialSystemInfo(initialSystemInfo)); + } + + /** + * 删除系统监控信息 + */ + @RequiresPermissions("rocketmq:systemInfo:remove") + @Log(title = "系统监控信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(initialSystemInfoService.deleteInitialSystemInfoByIds(ids)); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/DeviceMessage.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/DeviceMessage.java index 90e7ec9..a746b07 100644 --- a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/DeviceMessage.java +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/DeviceMessage.java @@ -1,13 +1,15 @@ package com.ruoyi.rocketmq.domain; +import com.ruoyi.common.core.utils.DateUtils; import lombok.Data; -import java.time.LocalDateTime; +import java.util.Date; @Data public class DeviceMessage { private String clientId; private String dataType; private String data; - private LocalDateTime receiveTime = LocalDateTime.now(); + private Date receiveTime = DateUtils.getNowDate(); + private String duringTime; } \ No newline at end of file diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialCpuInfo.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialCpuInfo.java new file mode 100644 index 0000000..8875ab0 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialCpuInfo.java @@ -0,0 +1,236 @@ +package com.ruoyi.rocketmq.domain; + +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; + +/** + * CPU监控信息对象 initial_cpu_info + * + * @author gyt + * @date 2025-08-25 + */ +public class InitialCpuInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 客户端ID */ + @Excel(name = "客户端ID") + private String clientId; + + /** CPU1分钟负载 */ + @Excel(name = "CPU1分钟负载") + private long avg1; + + /** CPU5分钟负载 */ + @Excel(name = "CPU5分钟负载") + private long avg5; + + /** CPU15分钟负载 */ + @Excel(name = "CPU15分钟负载") + private long avg15; + + /** CPU硬件中断提供服务时间(秒) */ + @Excel(name = "CPU硬件中断提供服务时间(秒)") + private long interrupt; + + /** CPU使用率(%) */ + @Excel(name = "CPU使用率(%)") + private long uti; + + /** CPU数量(核数) */ + @Excel(name = "CPU数量(核数)") + private long num; + + /** CPU正常运行时间(秒) */ + @Excel(name = "CPU正常运行时间(秒)") + private Long normal; + + /** CPU空闲时间(秒) */ + @Excel(name = "CPU空闲时间(秒)") + private long idle; + + /** CPU等待响应时间(秒) */ + @Excel(name = "CPU等待响应时间(秒)") + private long iowait; + + /** CPU系统时间(秒) */ + @Excel(name = "CPU系统时间(秒)") + private long system; + + /** CPU软件无响应时间(秒) */ + @Excel(name = "CPU软件无响应时间(秒)") + private long noresp; + + /** CPU用户进程所花费的时间(秒) */ + @Excel(name = "CPU用户进程所花费的时间(秒)") + private long user; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setClientId(String clientId) + { + this.clientId = clientId; + } + + public String getClientId() + { + return clientId; + } + + public void setAvg1(long avg1) + { + this.avg1 = avg1; + } + + public long getAvg1() + { + return avg1; + } + + public void setAvg5(long avg5) + { + this.avg5 = avg5; + } + + public long getAvg5() + { + return avg5; + } + + public void setAvg15(long avg15) + { + this.avg15 = avg15; + } + + public long getAvg15() + { + return avg15; + } + + public void setInterrupt(long interrupt) + { + this.interrupt = interrupt; + } + + public long getInterrupt() + { + return interrupt; + } + + public void setUti(long uti) + { + this.uti = uti; + } + + public long getUti() + { + return uti; + } + + public void setNum(long num) + { + this.num = num; + } + + public long getNum() + { + return num; + } + + public void setNormal(Long normal) + { + this.normal = normal; + } + + public Long getNormal() + { + return normal; + } + + public void setIdle(long idle) + { + this.idle = idle; + } + + public long getIdle() + { + return idle; + } + + public void setIowait(long iowait) + { + this.iowait = iowait; + } + + public long getIowait() + { + return iowait; + } + + public void setSystem(long system) + { + this.system = system; + } + + public long getSystem() + { + return system; + } + + public void setNoresp(long noresp) + { + this.noresp = noresp; + } + + public long getNoresp() + { + return noresp; + } + + public void setUser(long user) + { + this.user = user; + } + + public long getUser() + { + return user; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("clientId", getClientId()) + .append("avg1", getAvg1()) + .append("avg5", getAvg5()) + .append("avg15", getAvg15()) + .append("interrupt", getInterrupt()) + .append("uti", getUti()) + .append("num", getNum()) + .append("normal", getNormal()) + .append("idle", getIdle()) + .append("iowait", getIowait()) + .append("system", getSystem()) + .append("noresp", getNoresp()) + .append("user", getUser()) + .append("createBy", getCreateBy()) + .append("updateBy", getUpdateBy()) + .append("createTime", getCreateTime()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialDiskInfo.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialDiskInfo.java new file mode 100644 index 0000000..d87c9d6 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialDiskInfo.java @@ -0,0 +1,191 @@ +package com.ruoyi.rocketmq.domain; + +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; + +/** + * 磁盘监控信息对象 initial_disk_info + * + * @author gyt + * @date 2025-08-25 + */ +public class InitialDiskInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 客户端ID */ + @Excel(name = "客户端ID") + private String clientId; + + /** 磁盘名称(如sda、sdb等) */ + @Excel(name = "磁盘名称(如sda、sdb等)") + private String name; + + /** 磁盘序列号 */ + @Excel(name = "磁盘序列号") + private String serial; + + /** 磁盘总大小(GB) */ + @Excel(name = "磁盘总大小(GB)") + private Long total; + + /** 磁盘写入速率(字节/秒) */ + @Excel(name = "磁盘写入速率(字节/秒)") + private Long writeSpeed; + + /** 磁盘读取速率(字节/秒) */ + @Excel(name = "磁盘读取速率(字节/秒)") + private Long readSpeed; + + /** 磁盘写入次数 */ + @Excel(name = "磁盘写入次数") + private Long writeTimes; + + /** 磁盘读取次数 */ + @Excel(name = "磁盘读取次数") + private Long readTimes; + + /** 磁盘写入总字节数 */ + @Excel(name = "磁盘写入总字节数") + private Long writeBytes; + + /** 磁盘读取总字节数 */ + @Excel(name = "磁盘读取总字节数") + private Long readBytes; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setClientId(String clientId) + { + this.clientId = clientId; + } + + public String getClientId() + { + return clientId; + } + + public void setName(String name) + { + this.name = name; + } + + public String getName() + { + return name; + } + + public void setSerial(String serial) + { + this.serial = serial; + } + + public String getSerial() + { + return serial; + } + + public void setTotal(Long total) + { + this.total = total; + } + + public Long getTotal() + { + return total; + } + + public void setWriteSpeed(Long writeSpeed) + { + this.writeSpeed = writeSpeed; + } + + public Long getWriteSpeed() + { + return writeSpeed; + } + + public void setReadSpeed(Long readSpeed) + { + this.readSpeed = readSpeed; + } + + public Long getReadSpeed() + { + return readSpeed; + } + + public void setWriteTimes(Long writeTimes) + { + this.writeTimes = writeTimes; + } + + public Long getWriteTimes() + { + return writeTimes; + } + + public void setReadTimes(Long readTimes) + { + this.readTimes = readTimes; + } + + public Long getReadTimes() + { + return readTimes; + } + + public void setWriteBytes(Long writeBytes) + { + this.writeBytes = writeBytes; + } + + public Long getWriteBytes() + { + return writeBytes; + } + + public void setReadBytes(Long readBytes) + { + this.readBytes = readBytes; + } + + public Long getReadBytes() + { + return readBytes; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("clientId", getClientId()) + .append("name", getName()) + .append("serial", getSerial()) + .append("total", getTotal()) + .append("writeSpeed", getWriteSpeed()) + .append("readSpeed", getReadSpeed()) + .append("writeTimes", getWriteTimes()) + .append("readTimes", getReadTimes()) + .append("writeBytes", getWriteBytes()) + .append("readBytes", getReadBytes()) + .append("createBy", getCreateBy()) + .append("updateBy", getUpdateBy()) + .append("createTime", getCreateTime()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialDockerInfo.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialDockerInfo.java new file mode 100644 index 0000000..afdcf78 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialDockerInfo.java @@ -0,0 +1,50 @@ +package com.ruoyi.rocketmq.domain; + +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; +import lombok.Data; + +/** + * 容器监控信息对象 initial_docker_info + * + * @author gyt + * @date 2025-08-25 + */ +@Data +public class InitialDockerInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + private Long autoId; + /** 容器ID */ + private String id; + + /** 容器名称 */ + @Excel(name = "容器名称") + private String name; + + /** 容器状态(running/stopped/error等) */ + @Excel(name = "容器状态(running/stopped/error等)") + private String status; + + /** 容器CPU使用率(%) */ + @Excel(name = "容器CPU使用率(%)") + private String cpuUtil; + + /** 容器内存使用率(%) */ + @Excel(name = "容器内存使用率(%)") + private String memUtil; + + /** 容器网络接收速率(KB/s) */ + @Excel(name = "容器网络接收速率(KB/s)") + private String netInSpeed; + + /** 容器网络发送速率(KB/s) */ + @Excel(name = "容器网络发送速率(KB/s)") + private String netOutSpeed; + + /** 设备唯一标识 */ + @Excel(name = "设备唯一标识") + private String clientId; + +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialMemoryInfo.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialMemoryInfo.java new file mode 100644 index 0000000..9385d47 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialMemoryInfo.java @@ -0,0 +1,51 @@ +package com.ruoyi.rocketmq.domain; + +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 内存监控信息对象 initial_memory_info + * + * @author gyt + * @date 2025-08-25 + */ +@Data +public class InitialMemoryInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 自增主键ID */ + private Long id; + + /** 客户端ID */ + @Excel(name = "客户端ID") + private String clientId; + + /** 交换卷/文件的可用空间(字节) */ + @Excel(name = "交换卷/文件的可用空间(字节)") + private BigDecimal swapSizeFree; + + /** 内存利用率(%) */ + @Excel(name = "内存利用率(%)") + private BigDecimal untilzation; + + /** 可用交换空间百分比(%) */ + @Excel(name = "可用交换空间百分比(%)") + private BigDecimal swapSizePercent; + + /** 可用内存(字节) */ + @Excel(name = "可用内存(字节)") + private Long available; + + /** 可用内存百分比(%) */ + @Excel(name = "可用内存百分比(%)") + private BigDecimal percent; + + /** 总内存(字节) */ + @Excel(name = "总内存(字节)") + private Long total; + +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialMountPointInfo.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialMountPointInfo.java new file mode 100644 index 0000000..eb29ac4 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialMountPointInfo.java @@ -0,0 +1,133 @@ +package com.ruoyi.rocketmq.domain; + +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.math.BigDecimal; + +/** + * 挂载点监控信息对象 initial_mount_point_info + * + * @author gyt + * @date 2025-08-25 + */ +public class InitialMountPointInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 自增主键ID */ + private Long id; + + /** 客户端ID */ + @Excel(name = "客户端ID") + private String clientId; + + /** 挂载点路径(如"/"、"/data"等) */ + @Excel(name = "挂载点路径") + private String mount; + + /** 文件系统类型(如ext4、xfs、ntfs等) */ + @Excel(name = "文件系统类型") + private String vfsType; + + /** 可用空间(字节) */ + @Excel(name = "可用空间") + private Long vfsFree; + + /** 总空间(字节) */ + @Excel(name = "总空间") + private Long vfsTotal; + + /** 空间利用率(%) */ + @Excel(name = "空间利用率") + private BigDecimal vfsUtil; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setClientId(String clientId) + { + this.clientId = clientId; + } + + public String getClientId() + { + return clientId; + } + + public void setMount(String mount) + { + this.mount = mount; + } + + public String getMount() + { + return mount; + } + + public void setVfsType(String vfsType) + { + this.vfsType = vfsType; + } + + public String getVfsType() + { + return vfsType; + } + + public void setVfsFree(Long vfsFree) + { + this.vfsFree = vfsFree; + } + + public Long getVfsFree() + { + return vfsFree; + } + + public void setVfsTotal(Long vfsTotal) + { + this.vfsTotal = vfsTotal; + } + + public Long getVfsTotal() + { + return vfsTotal; + } + + public void setVfsUtil(BigDecimal vfsUtil) + { + this.vfsUtil = vfsUtil; + } + + public BigDecimal getVfsUtil() + { + return vfsUtil; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("clientId", getClientId()) + .append("mount", getMount()) + .append("vfsType", getVfsType()) + .append("vfsFree", getVfsFree()) + .append("vfsTotal", getVfsTotal()) + .append("vfsUtil", getVfsUtil()) + .append("createBy", getCreateBy()) + .append("updateBy", getUpdateBy()) + .append("createTime", getCreateTime()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialSwitchInfo.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialSwitchInfo.java new file mode 100644 index 0000000..4b2d083 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialSwitchInfo.java @@ -0,0 +1,44 @@ +package com.ruoyi.rocketmq.domain; + +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 交换机流量监控信息对象 initial_switch_info + * + * @author gyt + * @date 2025-08-25 + */ +@Data +public class InitialSwitchInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 自增主键ID */ + private Long id; + + + /** 客户端ID */ + @Excel(name = "客户端ID") + private String clientId; + + /** 名称 */ + private String name; + /** 接收流量 */ + private BigDecimal inBytes; + /** 发送流量 */ + private BigDecimal outBytes; + /** 状态 */ + private String status; + /** 类型 */ + private String type; + /** 接收流量(bytes/s) */ + private BigDecimal inSpeed; + /** 发送流量(bytes/s) */ + private BigDecimal outSpeed; + + +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialSwitchInfoTemp.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialSwitchInfoTemp.java new file mode 100644 index 0000000..30375f6 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialSwitchInfoTemp.java @@ -0,0 +1,162 @@ +package com.ruoyi.rocketmq.domain; + +import java.math.BigDecimal; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; + +/** + * 交换机监控信息对象 initial_switch_info_temp + * + * @author gyt + * @date 2025-08-26 + */ +public class InitialSwitchInfoTemp extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 自增主键ID */ + private Long id; + + /** 客户端ID */ + @Excel(name = "客户端ID") + private String clientId; + + /** 网络接口名称(如eth0、ens33等) */ + @Excel(name = "网络接口名称(如eth0、ens33等)") + private String name; + + /** 接收流量(字节) */ + @Excel(name = "接收流量(字节)") + private BigDecimal inBytes; + + /** 发送流量(字节) */ + @Excel(name = "发送流量(字节)") + private BigDecimal outBytes; + + /** 接口状态(up/down等) */ + @Excel(name = "接口状态(up/down等)") + private String status; + + /** 接口类型(ethernet/wireless等) */ + @Excel(name = "接口类型(ethernet/wireless等)") + private String type; + + /** 接收流量(bytes/s) */ + @Excel(name = "接收流量", readConverterExp = "b=ytes/s") + private BigDecimal inSpeed; + + /** 发送流量(bytes/s) */ + @Excel(name = "发送流量", readConverterExp = "b=ytes/s") + private BigDecimal outSpeed; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setClientId(String clientId) + { + this.clientId = clientId; + } + + public String getClientId() + { + return clientId; + } + + public void setName(String name) + { + this.name = name; + } + + public String getName() + { + return name; + } + + public void setInBytes(BigDecimal inBytes) + { + this.inBytes = inBytes; + } + + public BigDecimal getInBytes() + { + return inBytes; + } + + public void setOutBytes(BigDecimal outBytes) + { + this.outBytes = outBytes; + } + + public BigDecimal getOutBytes() + { + return outBytes; + } + + public void setStatus(String status) + { + this.status = status; + } + + public String getStatus() + { + return status; + } + + public void setType(String type) + { + this.type = type; + } + + public String getType() + { + return type; + } + + public void setInSpeed(BigDecimal inSpeed) + { + this.inSpeed = inSpeed; + } + + public BigDecimal getInSpeed() + { + return inSpeed; + } + + public void setOutSpeed(BigDecimal outSpeed) + { + this.outSpeed = outSpeed; + } + + public BigDecimal getOutSpeed() + { + return outSpeed; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("clientId", getClientId()) + .append("name", getName()) + .append("inBytes", getInBytes()) + .append("outBytes", getOutBytes()) + .append("status", getStatus()) + .append("type", getType()) + .append("inSpeed", getInSpeed()) + .append("outSpeed", getOutSpeed()) + .append("createBy", getCreateBy()) + .append("updateBy", getUpdateBy()) + .append("createTime", getCreateTime()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialSystemInfo.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialSystemInfo.java new file mode 100644 index 0000000..04b66fc --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/InitialSystemInfo.java @@ -0,0 +1,76 @@ +package com.ruoyi.rocketmq.domain; + +import com.ruoyi.common.core.annotation.Excel; +import com.ruoyi.common.core.web.domain.BaseEntity; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 系统监控信息对象 initial_system_info + * + * @author gyt + * @date 2025-08-25 + */ +@Data +public class InitialSystemInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 自增主键ID */ + private Long id; + + /** 客户端ID */ + @Excel(name = "客户端ID") + private String clientId; + + /** 操作系统(如Linux、Windows等) */ + @Excel(name = "操作系统(如Linux、Windows等)") + private String os; + + /** 操作系统架构(如x86_64、arm64等) */ + @Excel(name = "操作系统架构(如x86_64、arm64等)") + private String arch; + + /** 最大进程数 */ + @Excel(name = "最大进程数") + private Long maxProc; + + /** 正在运行的进程数 */ + @Excel(name = "正在运行的进程数") + private Long runProcNum; + + /** 登录用户数 */ + @Excel(name = "登录用户数") + private Long usersNum; + + /** 硬盘总可用空间(GB) */ + @Excel(name = "硬盘总可用空间(GB)") + private BigDecimal diskSizeTotal; + + /** 系统启动时间(Unix时间戳) */ + @Excel(name = "系统启动时间(Unix时间戳)") + private Long bootTime; + + /** 系统描述(如Linux 5.4.0-80-generic) */ + @Excel(name = "系统描述(如Linux 5.4.0-80-generic)") + private String uname; + + /** 系统本地时间(如2023-08-15 14:30:00) */ + @Excel(name = "系统本地时间(如2023-08-15 14:30:00)") + private String localTime; + + /** 系统正常运行时间(秒) */ + @Excel(name = "系统正常运行时间(秒)") + private Long upTime; + + /** 进程数 */ + @Excel(name = "进程数") + private BigDecimal procNum; + + /** 记录时间戳(Unix时间戳) */ + @Excel(name = "记录时间戳(Unix时间戳)") + private Long timeStamp; + + private String uuid; +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialCpuInfoMapper.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialCpuInfoMapper.java new file mode 100644 index 0000000..b074ff7 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialCpuInfoMapper.java @@ -0,0 +1,70 @@ +package com.ruoyi.rocketmq.mapper; + +import com.ruoyi.rocketmq.domain.InitialCpuInfo; +import org.springframework.data.repository.query.Param; + +import java.util.List; + +/** + * CPU监控信息Mapper接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface InitialCpuInfoMapper +{ + /** + * 查询CPU监控信息 + * + * @param id CPU监控信息主键 + * @return CPU监控信息 + */ + public InitialCpuInfo selectInitialCpuInfoById(Long id); + + /** + * 查询CPU监控信息列表 + * + * @param initialCpuInfo CPU监控信息 + * @return CPU监控信息集合 + */ + public List selectInitialCpuInfoList(InitialCpuInfo initialCpuInfo); + + /** + * 新增CPU监控信息 + * + * @param initialCpuInfo CPU监控信息 + * @return 结果 + */ + public int insertInitialCpuInfo(InitialCpuInfo initialCpuInfo); + + /** + * 修改CPU监控信息 + * + * @param initialCpuInfo CPU监控信息 + * @return 结果 + */ + public int updateInitialCpuInfo(InitialCpuInfo initialCpuInfo); + + /** + * 删除CPU监控信息 + * + * @param id CPU监控信息主键 + * @return 结果 + */ + public int deleteInitialCpuInfoById(Long id); + + /** + * 批量删除CPU监控信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteInitialCpuInfoByIds(Long[] ids); + /** + * 批量新增CPU监控信息 + * + * @param list CPU监控信息集合 + * @return 结果 + */ + public int batchInsertInitialCpuInfo(@Param("list") List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialDiskInfoMapper.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialDiskInfoMapper.java new file mode 100644 index 0000000..86101db --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialDiskInfoMapper.java @@ -0,0 +1,71 @@ +package com.ruoyi.rocketmq.mapper; + +import com.ruoyi.rocketmq.domain.InitialDiskInfo; +import org.springframework.data.repository.query.Param; + +import java.util.List; + +/** + * 磁盘监控信息Mapper接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface InitialDiskInfoMapper +{ + /** + * 查询磁盘监控信息 + * + * @param id 磁盘监控信息主键 + * @return 磁盘监控信息 + */ + public InitialDiskInfo selectInitialDiskInfoById(Long id); + + /** + * 查询磁盘监控信息列表 + * + * @param initialDiskInfo 磁盘监控信息 + * @return 磁盘监控信息集合 + */ + public List selectInitialDiskInfoList(InitialDiskInfo initialDiskInfo); + + /** + * 新增磁盘监控信息 + * + * @param initialDiskInfo 磁盘监控信息 + * @return 结果 + */ + public int insertInitialDiskInfo(InitialDiskInfo initialDiskInfo); + + /** + * 修改磁盘监控信息 + * + * @param initialDiskInfo 磁盘监控信息 + * @return 结果 + */ + public int updateInitialDiskInfo(InitialDiskInfo initialDiskInfo); + + /** + * 删除磁盘监控信息 + * + * @param id 磁盘监控信息主键 + * @return 结果 + */ + public int deleteInitialDiskInfoById(Long id); + + /** + * 批量删除磁盘监控信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteInitialDiskInfoByIds(Long[] ids); + + /** + * 批量新增磁盘监控信息 + * + * @param list 磁盘监控信息集合 + * @return 结果 + */ + public int batchInsertInitialDiskInfo(@Param("list") List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialDockerInfoMapper.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialDockerInfoMapper.java new file mode 100644 index 0000000..99d70aa --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialDockerInfoMapper.java @@ -0,0 +1,65 @@ +package com.ruoyi.rocketmq.mapper; + +import com.ruoyi.rocketmq.domain.InitialDockerInfo; +import org.springframework.data.repository.query.Param; + +import java.util.List; + +/** + * 容器监控信息Mapper接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface InitialDockerInfoMapper +{ + /** + * 查询容器监控信息 + * + * @param autoId 容器监控信息主键 + * @return 容器监控信息 + */ + public InitialDockerInfo selectInitialDockerInfoById(Long autoId); + + /** + * 查询容器监控信息列表 + * + * @param initialDockerInfo 容器监控信息 + * @return 容器监控信息集合 + */ + public List selectInitialDockerInfoList(InitialDockerInfo initialDockerInfo); + + /** + * 新增容器监控信息 + * + * @param initialDockerInfo 容器监控信息 + * @return 结果 + */ + public int insertInitialDockerInfo(InitialDockerInfo initialDockerInfo); + + /** + * 修改容器监控信息 + * + * @param initialDockerInfo 容器监控信息 + * @return 结果 + */ + public int updateInitialDockerInfo(InitialDockerInfo initialDockerInfo); + + /** + * 删除容器监控信息 + * + * @param autoId 容器监控信息主键 + * @return 结果 + */ + public int deleteInitialDockerInfoById(Long autoId); + + /** + * 批量删除容器监控信息 + * + * @param autoId 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteInitialDockerInfoByIds(Long[] autoId); + + int batchInsertInitialDockerInfo(@Param("list") List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialMemoryInfoMapper.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialMemoryInfoMapper.java new file mode 100644 index 0000000..2945de4 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialMemoryInfoMapper.java @@ -0,0 +1,71 @@ +package com.ruoyi.rocketmq.mapper; + +import com.ruoyi.rocketmq.domain.InitialMemoryInfo; +import org.springframework.data.repository.query.Param; + +import java.util.List; + +/** + * 内存监控信息Mapper接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface InitialMemoryInfoMapper +{ + /** + * 查询内存监控信息 + * + * @param id 内存监控信息主键 + * @return 内存监控信息 + */ + public InitialMemoryInfo selectInitialMemoryInfoById(Long id); + + /** + * 查询内存监控信息列表 + * + * @param initialMemoryInfo 内存监控信息 + * @return 内存监控信息集合 + */ + public List selectInitialMemoryInfoList(InitialMemoryInfo initialMemoryInfo); + + /** + * 新增内存监控信息 + * + * @param initialMemoryInfo 内存监控信息 + * @return 结果 + */ + public int insertInitialMemoryInfo(InitialMemoryInfo initialMemoryInfo); + + /** + * 修改内存监控信息 + * + * @param initialMemoryInfo 内存监控信息 + * @return 结果 + */ + public int updateInitialMemoryInfo(InitialMemoryInfo initialMemoryInfo); + + /** + * 删除内存监控信息 + * + * @param id 内存监控信息主键 + * @return 结果 + */ + public int deleteInitialMemoryInfoById(Long id); + + /** + * 批量删除内存监控信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteInitialMemoryInfoByIds(Long[] ids); + + /** + * 批量新增内存监控信息 + * + * @param list 内存监控信息集合 + * @return 结果 + */ + public int batchInsertInitialMemoryInfo(@Param("list") List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialMountPointInfoMapper.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialMountPointInfoMapper.java new file mode 100644 index 0000000..f0b9ec3 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialMountPointInfoMapper.java @@ -0,0 +1,70 @@ +package com.ruoyi.rocketmq.mapper; + +import com.ruoyi.rocketmq.domain.InitialMountPointInfo; +import org.springframework.data.repository.query.Param; + +import java.util.List; + +/** + * 挂载点监控信息Mapper接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface InitialMountPointInfoMapper +{ + /** + * 查询挂载点监控信息 + * + * @param id 挂载点监控信息主键 + * @return 挂载点监控信息 + */ + public InitialMountPointInfo selectInitialMountPointInfoById(Long id); + + /** + * 查询挂载点监控信息列表 + * + * @param initialMountPointInfo 挂载点监控信息 + * @return 挂载点监控信息集合 + */ + public List selectInitialMountPointInfoList(InitialMountPointInfo initialMountPointInfo); + + /** + * 新增挂载点监控信息 + * + * @param initialMountPointInfo 挂载点监控信息 + * @return 结果 + */ + public int insertInitialMountPointInfo(InitialMountPointInfo initialMountPointInfo); + + /** + * 修改挂载点监控信息 + * + * @param initialMountPointInfo 挂载点监控信息 + * @return 结果 + */ + public int updateInitialMountPointInfo(InitialMountPointInfo initialMountPointInfo); + + /** + * 删除挂载点监控信息 + * + * @param id 挂载点监控信息主键 + * @return 结果 + */ + public int deleteInitialMountPointInfoById(Long id); + + /** + * 批量删除挂载点监控信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteInitialMountPointInfoByIds(Long[] ids); + /** + * 批量新增挂载点监控信息 + * + * @param list 挂载点监控信息集合 + * @return 结果 + */ + public int batchInsertInitialMountPointInfo(@Param("list") List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialSwitchInfoMapper.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialSwitchInfoMapper.java new file mode 100644 index 0000000..da2a0e4 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialSwitchInfoMapper.java @@ -0,0 +1,71 @@ +package com.ruoyi.rocketmq.mapper; + +import com.ruoyi.rocketmq.domain.InitialSwitchInfo; +import org.springframework.data.repository.query.Param; + +import java.util.List; + +/** + * 交换机流量监控信息Mapper接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface InitialSwitchInfoMapper +{ + /** + * 查询交换机流量监控信息 + * + * @param id 交换机流量监控信息主键 + * @return 交换机流量监控信息 + */ + public InitialSwitchInfo selectInitialSwitchInfoById(Long id); + + /** + * 查询交换机流量监控信息列表 + * + * @param initialSwitchInfo 交换机流量监控信息 + * @return 交换机流量监控信息集合 + */ + public List selectInitialSwitchInfoList(InitialSwitchInfo initialSwitchInfo); + + /** + * 新增交换机流量监控信息 + * + * @param initialSwitchInfo 交换机流量监控信息 + * @return 结果 + */ + public int insertInitialSwitchInfo(InitialSwitchInfo initialSwitchInfo); + + /** + * 修改交换机流量监控信息 + * + * @param initialSwitchInfo 交换机流量监控信息 + * @return 结果 + */ + public int updateInitialSwitchInfo(InitialSwitchInfo initialSwitchInfo); + + /** + * 删除交换机流量监控信息 + * + * @param id 交换机流量监控信息主键 + * @return 结果 + */ + public int deleteInitialSwitchInfoById(Long id); + + /** + * 批量删除交换机流量监控信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteInitialSwitchInfoByIds(Long[] ids); + + /** + * 批量新增交换机流量监控信息 + * + * @param list 交换机流量监控信息集合 + * @return 结果 + */ + public int batchInsertInitialSwitchInfo(@Param("list") List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialSwitchInfoTempMapper.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialSwitchInfoTempMapper.java new file mode 100644 index 0000000..4e9ddc7 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialSwitchInfoTempMapper.java @@ -0,0 +1,73 @@ +package com.ruoyi.rocketmq.mapper; + +import com.ruoyi.rocketmq.domain.InitialSwitchInfo; +import com.ruoyi.rocketmq.domain.InitialSwitchInfoTemp; +import org.springframework.data.repository.query.Param; + +import java.util.List; + +/** + * 交换机监控信息Mapper接口 + * + * @author gyt + * @date 2025-08-26 + */ +public interface InitialSwitchInfoTempMapper +{ + /** + * 查询交换机监控信息 + * + * @param id 交换机监控信息主键 + * @return 交换机监控信息 + */ + public InitialSwitchInfoTemp selectInitialSwitchInfoTempById(Long id); + + /** + * 查询交换机监控信息列表 + * + * @param initialSwitchInfoTemp 交换机监控信息 + * @return 交换机监控信息集合 + */ + public List selectInitialSwitchInfoTempList(InitialSwitchInfoTemp initialSwitchInfoTemp); + + /** + * 新增交换机监控信息 + * + * @param initialSwitchInfoTemp 交换机监控信息 + * @return 结果 + */ + public int insertInitialSwitchInfoTemp(InitialSwitchInfoTemp initialSwitchInfoTemp); + + /** + * 修改交换机监控信息 + * + * @param initialSwitchInfoTemp 交换机监控信息 + * @return 结果 + */ + public int updateInitialSwitchInfoTemp(InitialSwitchInfoTemp initialSwitchInfoTemp); + + /** + * 删除交换机监控信息 + * + * @param id 交换机监控信息主键 + * @return 结果 + */ + public int deleteInitialSwitchInfoTempById(Long id); + + /** + * 批量删除交换机监控信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteInitialSwitchInfoTempByIds(Long[] ids); + /** + * 批量新增交换机流量监控信息 + * + * @param list 交换机流量监控信息集合 + * @return 结果 + */ + public int batchInsertInitialSwitchInfoTemp(@Param("list") List list); + + void truncateSwitchInfoTemp(); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialSystemInfoMapper.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialSystemInfoMapper.java new file mode 100644 index 0000000..8e998a8 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/mapper/InitialSystemInfoMapper.java @@ -0,0 +1,70 @@ +package com.ruoyi.rocketmq.mapper; + +import com.ruoyi.rocketmq.domain.InitialSystemInfo; +import org.springframework.data.repository.query.Param; + +import java.util.List; + +/** + * 系统监控信息Mapper接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface InitialSystemInfoMapper +{ + /** + * 查询系统监控信息 + * + * @param id 系统监控信息主键 + * @return 系统监控信息 + */ + public InitialSystemInfo selectInitialSystemInfoById(Long id); + + /** + * 查询系统监控信息列表 + * + * @param initialSystemInfo 系统监控信息 + * @return 系统监控信息集合 + */ + public List selectInitialSystemInfoList(InitialSystemInfo initialSystemInfo); + + /** + * 新增系统监控信息 + * + * @param initialSystemInfo 系统监控信息 + * @return 结果 + */ + public int insertInitialSystemInfo(InitialSystemInfo initialSystemInfo); + + /** + * 修改系统监控信息 + * + * @param initialSystemInfo 系统监控信息 + * @return 结果 + */ + public int updateInitialSystemInfo(InitialSystemInfo initialSystemInfo); + + /** + * 删除系统监控信息 + * + * @param id 系统监控信息主键 + * @return 结果 + */ + public int deleteInitialSystemInfoById(Long id); + + /** + * 批量删除系统监控信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteInitialSystemInfoByIds(Long[] ids); + /** + * 批量新增系统监控信息 + * + * @param list 系统监控信息集合 + * @return 结果 + */ + int batchInsertInitialSystemInfo(@Param("list") List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialCpuInfoService.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialCpuInfoService.java new file mode 100644 index 0000000..09579fc --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialCpuInfoService.java @@ -0,0 +1,69 @@ +package com.ruoyi.rocketmq.service; + +import com.ruoyi.rocketmq.domain.InitialCpuInfo; + +import java.util.List; + +/** + * CPU监控信息Service接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface IInitialCpuInfoService +{ + /** + * 查询CPU监控信息 + * + * @param id CPU监控信息主键 + * @return CPU监控信息 + */ + public InitialCpuInfo selectInitialCpuInfoById(Long id); + + /** + * 查询CPU监控信息列表 + * + * @param initialCpuInfo CPU监控信息 + * @return CPU监控信息集合 + */ + public List selectInitialCpuInfoList(InitialCpuInfo initialCpuInfo); + + /** + * 新增CPU监控信息 + * + * @param initialCpuInfo CPU监控信息 + * @return 结果 + */ + public int insertInitialCpuInfo(InitialCpuInfo initialCpuInfo); + + /** + * 修改CPU监控信息 + * + * @param initialCpuInfo CPU监控信息 + * @return 结果 + */ + public int updateInitialCpuInfo(InitialCpuInfo initialCpuInfo); + + /** + * 批量删除CPU监控信息 + * + * @param ids 需要删除的CPU监控信息主键集合 + * @return 结果 + */ + public int deleteInitialCpuInfoByIds(Long[] ids); + + /** + * 删除CPU监控信息信息 + * + * @param id CPU监控信息主键 + * @return 结果 + */ + public int deleteInitialCpuInfoById(Long id); + /** + * 批量新增CPU监控信息信息 + * + * @param list CPU监控信息信息集合 + * @return 结果 + */ + public int batchInsertInitialCpuInfo(List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialDiskInfoService.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialDiskInfoService.java new file mode 100644 index 0000000..347ee02 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialDiskInfoService.java @@ -0,0 +1,69 @@ +package com.ruoyi.rocketmq.service; + +import com.ruoyi.rocketmq.domain.InitialDiskInfo; + +import java.util.List; + +/** + * 磁盘监控信息Service接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface IInitialDiskInfoService +{ + /** + * 查询磁盘监控信息 + * + * @param id 磁盘监控信息主键 + * @return 磁盘监控信息 + */ + public InitialDiskInfo selectInitialDiskInfoById(Long id); + + /** + * 查询磁盘监控信息列表 + * + * @param initialDiskInfo 磁盘监控信息 + * @return 磁盘监控信息集合 + */ + public List selectInitialDiskInfoList(InitialDiskInfo initialDiskInfo); + + /** + * 新增磁盘监控信息 + * + * @param initialDiskInfo 磁盘监控信息 + * @return 结果 + */ + public int insertInitialDiskInfo(InitialDiskInfo initialDiskInfo); + + /** + * 修改磁盘监控信息 + * + * @param initialDiskInfo 磁盘监控信息 + * @return 结果 + */ + public int updateInitialDiskInfo(InitialDiskInfo initialDiskInfo); + + /** + * 批量删除磁盘监控信息 + * + * @param ids 需要删除的磁盘监控信息主键集合 + * @return 结果 + */ + public int deleteInitialDiskInfoByIds(Long[] ids); + + /** + * 删除磁盘监控信息信息 + * + * @param id 磁盘监控信息主键 + * @return 结果 + */ + public int deleteInitialDiskInfoById(Long id); + /** + * 批量新增磁盘监控信息 + * + * @param list 磁盘监控信息集合 + * @return 结果 + */ + public int batchInsertInitialDiskInfo(List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialDockerInfoService.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialDockerInfoService.java new file mode 100644 index 0000000..b87d730 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialDockerInfoService.java @@ -0,0 +1,70 @@ +package com.ruoyi.rocketmq.service; + +import com.ruoyi.rocketmq.domain.InitialDockerInfo; + +import java.util.List; + +/** + * 容器监控信息Service接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface IInitialDockerInfoService +{ + /** + * 查询容器监控信息 + * + * @param id 容器监控信息主键 + * @return 容器监控信息 + */ + public InitialDockerInfo selectInitialDockerInfoById(Long id); + + /** + * 查询容器监控信息列表 + * + * @param initialDockerInfo 容器监控信息 + * @return 容器监控信息集合 + */ + public List selectInitialDockerInfoList(InitialDockerInfo initialDockerInfo); + + /** + * 新增容器监控信息 + * + * @param initialDockerInfo 容器监控信息 + * @return 结果 + */ + public int insertInitialDockerInfo(InitialDockerInfo initialDockerInfo); + + /** + * 修改容器监控信息 + * + * @param initialDockerInfo 容器监控信息 + * @return 结果 + */ + public int updateInitialDockerInfo(InitialDockerInfo initialDockerInfo); + + /** + * 批量删除容器监控信息 + * + * @param ids 需要删除的容器监控信息主键集合 + * @return 结果 + */ + public int deleteInitialDockerInfoByIds(Long[] ids); + + /** + * 删除容器监控信息信息 + * + * @param id 容器监控信息主键 + * @return 结果 + */ + public int deleteInitialDockerInfoById(Long id); + + /** + * 批量新增容器监控信息 + * + * @param initialDockerInfo 容器监控信息集合 + * @return 结果 + */ + public int batchInsertInitialDockerInfo(List initialDockerInfo); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialMemoryInfoService.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialMemoryInfoService.java new file mode 100644 index 0000000..d021a58 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialMemoryInfoService.java @@ -0,0 +1,69 @@ +package com.ruoyi.rocketmq.service; + +import com.ruoyi.rocketmq.domain.InitialMemoryInfo; + +import java.util.List; + +/** + * 内存监控信息Service接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface IInitialMemoryInfoService +{ + /** + * 查询内存监控信息 + * + * @param id 内存监控信息主键 + * @return 内存监控信息 + */ + public InitialMemoryInfo selectInitialMemoryInfoById(Long id); + + /** + * 查询内存监控信息列表 + * + * @param initialMemoryInfo 内存监控信息 + * @return 内存监控信息集合 + */ + public List selectInitialMemoryInfoList(InitialMemoryInfo initialMemoryInfo); + + /** + * 新增内存监控信息 + * + * @param initialMemoryInfo 内存监控信息 + * @return 结果 + */ + public int insertInitialMemoryInfo(InitialMemoryInfo initialMemoryInfo); + + /** + * 修改内存监控信息 + * + * @param initialMemoryInfo 内存监控信息 + * @return 结果 + */ + public int updateInitialMemoryInfo(InitialMemoryInfo initialMemoryInfo); + + /** + * 批量删除内存监控信息 + * + * @param ids 需要删除的内存监控信息主键集合 + * @return 结果 + */ + public int deleteInitialMemoryInfoByIds(Long[] ids); + + /** + * 删除内存监控信息信息 + * + * @param id 内存监控信息主键 + * @return 结果 + */ + public int deleteInitialMemoryInfoById(Long id); + /** + * 批量新增内存监控信息 + * + * @param list 内存监控信息集合 + * @return 结果 + */ + public int batchInsertInitialMemoryInfo(List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialMountPointInfoService.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialMountPointInfoService.java new file mode 100644 index 0000000..1f91329 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialMountPointInfoService.java @@ -0,0 +1,70 @@ +package com.ruoyi.rocketmq.service; + +import com.ruoyi.rocketmq.domain.InitialMountPointInfo; +import org.springframework.data.repository.query.Param; + +import java.util.List; + +/** + * 挂载点监控信息Service接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface IInitialMountPointInfoService +{ + /** + * 查询挂载点监控信息 + * + * @param id 挂载点监控信息主键 + * @return 挂载点监控信息 + */ + public InitialMountPointInfo selectInitialMountPointInfoById(Long id); + + /** + * 查询挂载点监控信息列表 + * + * @param initialMountPointInfo 挂载点监控信息 + * @return 挂载点监控信息集合 + */ + public List selectInitialMountPointInfoList(InitialMountPointInfo initialMountPointInfo); + + /** + * 新增挂载点监控信息 + * + * @param initialMountPointInfo 挂载点监控信息 + * @return 结果 + */ + public int insertInitialMountPointInfo(InitialMountPointInfo initialMountPointInfo); + + /** + * 修改挂载点监控信息 + * + * @param initialMountPointInfo 挂载点监控信息 + * @return 结果 + */ + public int updateInitialMountPointInfo(InitialMountPointInfo initialMountPointInfo); + + /** + * 批量删除挂载点监控信息 + * + * @param ids 需要删除的挂载点监控信息主键集合 + * @return 结果 + */ + public int deleteInitialMountPointInfoByIds(Long[] ids); + + /** + * 删除挂载点监控信息信息 + * + * @param id 挂载点监控信息主键 + * @return 结果 + */ + public int deleteInitialMountPointInfoById(Long id); + /** + * 批量新增挂载点监控信息 + * + * @param list 挂载点监控信息集合 + * @return 结果 + */ + public int batchInsertInitialMountPointInfo(@Param("list") List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialSwitchInfoService.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialSwitchInfoService.java new file mode 100644 index 0000000..c80c7f3 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialSwitchInfoService.java @@ -0,0 +1,69 @@ +package com.ruoyi.rocketmq.service; + +import com.ruoyi.rocketmq.domain.InitialSwitchInfo; + +import java.util.List; + +/** + * 交换机流量监控信息Service接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface IInitialSwitchInfoService +{ + /** + * 查询交换机流量监控信息 + * + * @param id 交换机流量监控信息主键 + * @return 交换机流量监控信息 + */ + public InitialSwitchInfo selectInitialSwitchInfoById(Long id); + + /** + * 查询交换机流量监控信息列表 + * + * @param initialSwitchInfo 交换机流量监控信息 + * @return 交换机流量监控信息集合 + */ + public List selectInitialSwitchInfoList(InitialSwitchInfo initialSwitchInfo); + + /** + * 新增交换机流量监控信息 + * + * @param initialSwitchInfo 交换机流量监控信息 + * @return 结果 + */ + public int insertInitialSwitchInfo(InitialSwitchInfo initialSwitchInfo); + + /** + * 修改交换机流量监控信息 + * + * @param initialSwitchInfo 交换机流量监控信息 + * @return 结果 + */ + public int updateInitialSwitchInfo(InitialSwitchInfo initialSwitchInfo); + + /** + * 批量删除交换机流量监控信息 + * + * @param ids 需要删除的交换机流量监控信息主键集合 + * @return 结果 + */ + public int deleteInitialSwitchInfoByIds(Long[] ids); + + /** + * 删除交换机流量监控信息信息 + * + * @param id 交换机流量监控信息主键 + * @return 结果 + */ + public int deleteInitialSwitchInfoById(Long id); + /** + * 批量新增交换机流量监控信息 + * + * @param list 交换机流量监控信息集合 + * @return 结果 + */ + public int batchInsertInitialSwitchInfo(List list); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialSwitchInfoTempService.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialSwitchInfoTempService.java new file mode 100644 index 0000000..8eb8f76 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialSwitchInfoTempService.java @@ -0,0 +1,73 @@ +package com.ruoyi.rocketmq.service; + +import com.ruoyi.rocketmq.domain.InitialSwitchInfo; +import com.ruoyi.rocketmq.domain.InitialSwitchInfoTemp; + +import java.util.List; + +/** + * 交换机监控信息Service接口 + * + * @author gyt + * @date 2025-08-26 + */ +public interface IInitialSwitchInfoTempService +{ + /** + * 查询交换机监控信息 + * + * @param id 交换机监控信息主键 + * @return 交换机监控信息 + */ + public InitialSwitchInfoTemp selectInitialSwitchInfoTempById(Long id); + + /** + * 查询交换机监控信息列表 + * + * @param initialSwitchInfoTemp 交换机监控信息 + * @return 交换机监控信息集合 + */ + public List selectInitialSwitchInfoTempList(InitialSwitchInfoTemp initialSwitchInfoTemp); + + /** + * 新增交换机监控信息 + * + * @param initialSwitchInfoTemp 交换机监控信息 + * @return 结果 + */ + public int insertInitialSwitchInfoTemp(InitialSwitchInfoTemp initialSwitchInfoTemp); + + /** + * 修改交换机监控信息 + * + * @param initialSwitchInfoTemp 交换机监控信息 + * @return 结果 + */ + public int updateInitialSwitchInfoTemp(InitialSwitchInfoTemp initialSwitchInfoTemp); + + /** + * 批量删除交换机监控信息 + * + * @param ids 需要删除的交换机监控信息主键集合 + * @return 结果 + */ + public int deleteInitialSwitchInfoTempByIds(Long[] ids); + + /** + * 删除交换机监控信息信息 + * + * @param id 交换机监控信息主键 + * @return 结果 + */ + public int deleteInitialSwitchInfoTempById(Long id); + + /** + * 批量新增交换机流量监控信息 + * + * @param list 交换机流量监控信息集合 + * @return 结果 + */ + public int batchInsertInitialSwitchInfoTemp(List list); + + void truncateSwitchInfoTemp(); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialSystemInfoService.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialSystemInfoService.java new file mode 100644 index 0000000..8c3fd93 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/IInitialSystemInfoService.java @@ -0,0 +1,70 @@ +package com.ruoyi.rocketmq.service; + +import com.ruoyi.rocketmq.domain.InitialSystemInfo; + +import java.util.List; + +/** + * 系统监控信息Service接口 + * + * @author gyt + * @date 2025-08-25 + */ +public interface IInitialSystemInfoService +{ + /** + * 查询系统监控信息 + * + * @param id 系统监控信息主键 + * @return 系统监控信息 + */ + public InitialSystemInfo selectInitialSystemInfoById(Long id); + + /** + * 查询系统监控信息列表 + * + * @param initialSystemInfo 系统监控信息 + * @return 系统监控信息集合 + */ + public List selectInitialSystemInfoList(InitialSystemInfo initialSystemInfo); + + /** + * 新增系统监控信息 + * + * @param initialSystemInfo 系统监控信息 + * @return 结果 + */ + public int insertInitialSystemInfo(InitialSystemInfo initialSystemInfo); + + /** + * 修改系统监控信息 + * + * @param initialSystemInfo 系统监控信息 + * @return 结果 + */ + public int updateInitialSystemInfo(InitialSystemInfo initialSystemInfo); + + /** + * 批量删除系统监控信息 + * + * @param ids 需要删除的系统监控信息主键集合 + * @return 结果 + */ + public int deleteInitialSystemInfoByIds(Long[] ids); + + /** + * 删除系统监控信息信息 + * + * @param id 系统监控信息主键 + * @return 结果 + */ + public int deleteInitialSystemInfoById(Long id); + + /** + * 批量新增系统监控信息 + * + * @param initialSystemInfo 系统监控信息集合 + * @return 结果 + */ + public int batchInsertInitialSystemInfo(List initialSystemInfo); +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialCpuInfoServiceImpl.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialCpuInfoServiceImpl.java new file mode 100644 index 0000000..a20e992 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialCpuInfoServiceImpl.java @@ -0,0 +1,117 @@ +package com.ruoyi.rocketmq.service.impl; + +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.rocketmq.domain.InitialCpuInfo; +import com.ruoyi.rocketmq.mapper.InitialCpuInfoMapper; +import com.ruoyi.rocketmq.service.IInitialCpuInfoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * CPU监控信息Service业务层处理 + * + * @author gyt + * @date 2025-08-25 + */ +@Service +@Slf4j +public class InitialCpuInfoServiceImpl implements IInitialCpuInfoService +{ + @Autowired + private InitialCpuInfoMapper initialCpuInfoMapper; + + /** + * 查询CPU监控信息 + * + * @param id CPU监控信息主键 + * @return CPU监控信息 + */ + @Override + public InitialCpuInfo selectInitialCpuInfoById(Long id) + { + return initialCpuInfoMapper.selectInitialCpuInfoById(id); + } + + /** + * 查询CPU监控信息列表 + * + * @param initialCpuInfo CPU监控信息 + * @return CPU监控信息 + */ + @Override + public List selectInitialCpuInfoList(InitialCpuInfo initialCpuInfo) + { + return initialCpuInfoMapper.selectInitialCpuInfoList(initialCpuInfo); + } + + /** + * 新增CPU监控信息 + * + * @param initialCpuInfo CPU监控信息 + * @return 结果 + */ + @Override + public int insertInitialCpuInfo(InitialCpuInfo initialCpuInfo) + { + initialCpuInfo.setCreateTime(DateUtils.getNowDate()); + return initialCpuInfoMapper.insertInitialCpuInfo(initialCpuInfo); + } + + /** + * 修改CPU监控信息 + * + * @param initialCpuInfo CPU监控信息 + * @return 结果 + */ + @Override + public int updateInitialCpuInfo(InitialCpuInfo initialCpuInfo) + { + initialCpuInfo.setUpdateTime(DateUtils.getNowDate()); + return initialCpuInfoMapper.updateInitialCpuInfo(initialCpuInfo); + } + + /** + * 批量删除CPU监控信息 + * + * @param ids 需要删除的CPU监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialCpuInfoByIds(Long[] ids) + { + return initialCpuInfoMapper.deleteInitialCpuInfoByIds(ids); + } + + /** + * 删除CPU监控信息信息 + * + * @param id CPU监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialCpuInfoById(Long id) + { + return initialCpuInfoMapper.deleteInitialCpuInfoById(id); + } + + /** + * 批量新增CPU监控信息信息 + * + * @param list CPU监控信息信息集合 + * @return 结果 + */ + @Override + @Transactional + public int batchInsertInitialCpuInfo(List list) { + try { + return initialCpuInfoMapper.batchInsertInitialCpuInfo(list); + }catch (Exception e){ + log.error("批量插入CPU信息失败,失败数量:{}", list.size(), e); + throw new RuntimeException("批量保存失败",e); + } + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialDiskInfoServiceImpl.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialDiskInfoServiceImpl.java new file mode 100644 index 0000000..1cd2e28 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialDiskInfoServiceImpl.java @@ -0,0 +1,116 @@ +package com.ruoyi.rocketmq.service.impl; + +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.rocketmq.domain.InitialDiskInfo; +import com.ruoyi.rocketmq.mapper.InitialDiskInfoMapper; +import com.ruoyi.rocketmq.service.IInitialDiskInfoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * 磁盘监控信息Service业务层处理 + * + * @author gyt + * @date 2025-08-25 + */ +@Service +@Slf4j +public class InitialDiskInfoServiceImpl implements IInitialDiskInfoService +{ + @Autowired + private InitialDiskInfoMapper initialDiskInfoMapper; + + /** + * 查询磁盘监控信息 + * + * @param id 磁盘监控信息主键 + * @return 磁盘监控信息 + */ + @Override + public InitialDiskInfo selectInitialDiskInfoById(Long id) + { + return initialDiskInfoMapper.selectInitialDiskInfoById(id); + } + + /** + * 查询磁盘监控信息列表 + * + * @param initialDiskInfo 磁盘监控信息 + * @return 磁盘监控信息 + */ + @Override + public List selectInitialDiskInfoList(InitialDiskInfo initialDiskInfo) + { + return initialDiskInfoMapper.selectInitialDiskInfoList(initialDiskInfo); + } + + /** + * 新增磁盘监控信息 + * + * @param initialDiskInfo 磁盘监控信息 + * @return 结果 + */ + @Override + public int insertInitialDiskInfo(InitialDiskInfo initialDiskInfo) + { + initialDiskInfo.setCreateTime(DateUtils.getNowDate()); + return initialDiskInfoMapper.insertInitialDiskInfo(initialDiskInfo); + } + + /** + * 修改磁盘监控信息 + * + * @param initialDiskInfo 磁盘监控信息 + * @return 结果 + */ + @Override + public int updateInitialDiskInfo(InitialDiskInfo initialDiskInfo) + { + initialDiskInfo.setUpdateTime(DateUtils.getNowDate()); + return initialDiskInfoMapper.updateInitialDiskInfo(initialDiskInfo); + } + + /** + * 批量删除磁盘监控信息 + * + * @param ids 需要删除的磁盘监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialDiskInfoByIds(Long[] ids) + { + return initialDiskInfoMapper.deleteInitialDiskInfoByIds(ids); + } + + /** + * 删除磁盘监控信息信息 + * + * @param id 磁盘监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialDiskInfoById(Long id) + { + return initialDiskInfoMapper.deleteInitialDiskInfoById(id); + } + /** + * 批量新增磁盘监控信息 + * + * @param list 磁盘监控信息集合 + * @return 结果 + */ + @Override + @Transactional + public int batchInsertInitialDiskInfo(List list) { + try { + return initialDiskInfoMapper.batchInsertInitialDiskInfo(list); + }catch (Exception e){ + log.error("批量插入磁盘信息失败,失败数量:{}", list.size(), e); + throw new RuntimeException("批量保存失败",e); + } + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialDockerInfoServiceImpl.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialDockerInfoServiceImpl.java new file mode 100644 index 0000000..77d8693 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialDockerInfoServiceImpl.java @@ -0,0 +1,117 @@ +package com.ruoyi.rocketmq.service.impl; + +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.rocketmq.domain.InitialDockerInfo; +import com.ruoyi.rocketmq.mapper.InitialDockerInfoMapper; +import com.ruoyi.rocketmq.service.IInitialDockerInfoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * 容器监控信息Service业务层处理 + * + * @author gyt + * @date 2025-08-25 + */ +@Service +@Slf4j +public class InitialDockerInfoServiceImpl implements IInitialDockerInfoService +{ + @Autowired + private InitialDockerInfoMapper initialDockerInfoMapper; + + /** + * 查询容器监控信息 + * + * @param id 容器监控信息主键 + * @return 容器监控信息 + */ + @Override + public InitialDockerInfo selectInitialDockerInfoById(Long id) + { + return initialDockerInfoMapper.selectInitialDockerInfoById(id); + } + + /** + * 查询容器监控信息列表 + * + * @param initialDockerInfo 容器监控信息 + * @return 容器监控信息 + */ + @Override + public List selectInitialDockerInfoList(InitialDockerInfo initialDockerInfo) + { + return initialDockerInfoMapper.selectInitialDockerInfoList(initialDockerInfo); + } + + /** + * 新增容器监控信息 + * + * @param initialDockerInfo 容器监控信息 + * @return 结果 + */ + @Override + public int insertInitialDockerInfo(InitialDockerInfo initialDockerInfo) + { + initialDockerInfo.setCreateTime(DateUtils.getNowDate()); + return initialDockerInfoMapper.insertInitialDockerInfo(initialDockerInfo); + } + + /** + * 修改容器监控信息 + * + * @param initialDockerInfo 容器监控信息 + * @return 结果 + */ + @Override + public int updateInitialDockerInfo(InitialDockerInfo initialDockerInfo) + { + initialDockerInfo.setUpdateTime(DateUtils.getNowDate()); + return initialDockerInfoMapper.updateInitialDockerInfo(initialDockerInfo); + } + + /** + * 批量删除容器监控信息 + * + * @param ids 需要删除的容器监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialDockerInfoByIds(Long[] ids) + { + return initialDockerInfoMapper.deleteInitialDockerInfoByIds(ids); + } + + /** + * 删除容器监控信息信息 + * + * @param id 容器监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialDockerInfoById(Long id) + { + return initialDockerInfoMapper.deleteInitialDockerInfoById(id); + } + + /** + * 批量新增容器监控信息 + * + * @param initialDockerInfo 容器监控信息集合 + * @return 结果 + */ + @Override + @Transactional + public int batchInsertInitialDockerInfo(List initialDockerInfo){ + try { + return initialDockerInfoMapper.batchInsertInitialDockerInfo(initialDockerInfo); + }catch (Exception e){ + log.error("批量插入Docker信息失败,失败数量:{}", initialDockerInfo.size(), e); + throw new RuntimeException("批量保存失败",e); + } + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialMemoryInfoServiceImpl.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialMemoryInfoServiceImpl.java new file mode 100644 index 0000000..371796c --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialMemoryInfoServiceImpl.java @@ -0,0 +1,117 @@ +package com.ruoyi.rocketmq.service.impl; + +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.rocketmq.domain.InitialMemoryInfo; +import com.ruoyi.rocketmq.mapper.InitialMemoryInfoMapper; +import com.ruoyi.rocketmq.service.IInitialMemoryInfoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * 内存监控信息Service业务层处理 + * + * @author gyt + * @date 2025-08-25 + */ +@Service +@Slf4j +public class InitialMemoryInfoServiceImpl implements IInitialMemoryInfoService +{ + @Autowired + private InitialMemoryInfoMapper initialMemoryInfoMapper; + + /** + * 查询内存监控信息 + * + * @param id 内存监控信息主键 + * @return 内存监控信息 + */ + @Override + public InitialMemoryInfo selectInitialMemoryInfoById(Long id) + { + return initialMemoryInfoMapper.selectInitialMemoryInfoById(id); + } + + /** + * 查询内存监控信息列表 + * + * @param initialMemoryInfo 内存监控信息 + * @return 内存监控信息 + */ + @Override + public List selectInitialMemoryInfoList(InitialMemoryInfo initialMemoryInfo) + { + return initialMemoryInfoMapper.selectInitialMemoryInfoList(initialMemoryInfo); + } + + /** + * 新增内存监控信息 + * + * @param initialMemoryInfo 内存监控信息 + * @return 结果 + */ + @Override + public int insertInitialMemoryInfo(InitialMemoryInfo initialMemoryInfo) + { + initialMemoryInfo.setCreateTime(DateUtils.getNowDate()); + return initialMemoryInfoMapper.insertInitialMemoryInfo(initialMemoryInfo); + } + + /** + * 修改内存监控信息 + * + * @param initialMemoryInfo 内存监控信息 + * @return 结果 + */ + @Override + public int updateInitialMemoryInfo(InitialMemoryInfo initialMemoryInfo) + { + initialMemoryInfo.setUpdateTime(DateUtils.getNowDate()); + return initialMemoryInfoMapper.updateInitialMemoryInfo(initialMemoryInfo); + } + + /** + * 批量删除内存监控信息 + * + * @param ids 需要删除的内存监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialMemoryInfoByIds(Long[] ids) + { + return initialMemoryInfoMapper.deleteInitialMemoryInfoByIds(ids); + } + + /** + * 删除内存监控信息信息 + * + * @param id 内存监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialMemoryInfoById(Long id) + { + return initialMemoryInfoMapper.deleteInitialMemoryInfoById(id); + } + + /** + * 批量新增内存监控信息 + * + * @param list 内存监控信息集合 + * @return 结果 + */ + @Override + @Transactional + public int batchInsertInitialMemoryInfo(List list) { + try { + return initialMemoryInfoMapper.batchInsertInitialMemoryInfo(list); + }catch (Exception e){ + log.error("批量插入内存信息失败,失败数量:{}", list.size(), e); + throw new RuntimeException("批量保存失败",e); + } + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialMountPointInfoServiceImpl.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialMountPointInfoServiceImpl.java new file mode 100644 index 0000000..3d0ec75 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialMountPointInfoServiceImpl.java @@ -0,0 +1,116 @@ +package com.ruoyi.rocketmq.service.impl; + +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.rocketmq.domain.InitialMountPointInfo; +import com.ruoyi.rocketmq.mapper.InitialMountPointInfoMapper; +import com.ruoyi.rocketmq.service.IInitialMountPointInfoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * 挂载点监控信息Service业务层处理 + * + * @author gyt + * @date 2025-08-25 + */ +@Service +@Slf4j +public class InitialMountPointInfoServiceImpl implements IInitialMountPointInfoService +{ + @Autowired + private InitialMountPointInfoMapper initialMountPointInfoMapper; + + /** + * 查询挂载点监控信息 + * + * @param id 挂载点监控信息主键 + * @return 挂载点监控信息 + */ + @Override + public InitialMountPointInfo selectInitialMountPointInfoById(Long id) + { + return initialMountPointInfoMapper.selectInitialMountPointInfoById(id); + } + + /** + * 查询挂载点监控信息列表 + * + * @param initialMountPointInfo 挂载点监控信息 + * @return 挂载点监控信息 + */ + @Override + public List selectInitialMountPointInfoList(InitialMountPointInfo initialMountPointInfo) + { + return initialMountPointInfoMapper.selectInitialMountPointInfoList(initialMountPointInfo); + } + + /** + * 新增挂载点监控信息 + * + * @param initialMountPointInfo 挂载点监控信息 + * @return 结果 + */ + @Override + public int insertInitialMountPointInfo(InitialMountPointInfo initialMountPointInfo) + { + initialMountPointInfo.setCreateTime(DateUtils.getNowDate()); + return initialMountPointInfoMapper.insertInitialMountPointInfo(initialMountPointInfo); + } + + /** + * 修改挂载点监控信息 + * + * @param initialMountPointInfo 挂载点监控信息 + * @return 结果 + */ + @Override + public int updateInitialMountPointInfo(InitialMountPointInfo initialMountPointInfo) + { + initialMountPointInfo.setUpdateTime(DateUtils.getNowDate()); + return initialMountPointInfoMapper.updateInitialMountPointInfo(initialMountPointInfo); + } + + /** + * 批量删除挂载点监控信息 + * + * @param ids 需要删除的挂载点监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialMountPointInfoByIds(Long[] ids) + { + return initialMountPointInfoMapper.deleteInitialMountPointInfoByIds(ids); + } + + /** + * 删除挂载点监控信息信息 + * + * @param id 挂载点监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialMountPointInfoById(Long id) + { + return initialMountPointInfoMapper.deleteInitialMountPointInfoById(id); + } + /** + * 批量新增挂载点监控信息 + * + * @param list 挂载点监控信息集合 + * @return 结果 + */ + @Override + @Transactional + public int batchInsertInitialMountPointInfo(List list) { + try { + return initialMountPointInfoMapper.batchInsertInitialMountPointInfo(list); + }catch (Exception e){ + log.error("批量插入挂载点信息失败,失败数量:{}", list.size(), e); + throw new RuntimeException("批量保存失败",e); + } + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialSwitchInfoServiceImpl.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialSwitchInfoServiceImpl.java new file mode 100644 index 0000000..9e3fbbf --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialSwitchInfoServiceImpl.java @@ -0,0 +1,117 @@ +package com.ruoyi.rocketmq.service.impl; + +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.rocketmq.domain.InitialSwitchInfo; +import com.ruoyi.rocketmq.mapper.InitialSwitchInfoMapper; +import com.ruoyi.rocketmq.service.IInitialSwitchInfoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * 交换机流量监控信息Service业务层处理 + * + * @author gyt + * @date 2025-08-25 + */ +@Service +@Slf4j +public class InitialSwitchInfoServiceImpl implements IInitialSwitchInfoService +{ + @Autowired + private InitialSwitchInfoMapper initialSwitchInfoMapper; + + /** + * 查询交换机流量监控信息 + * + * @param id 交换机流量监控信息主键 + * @return 交换机流量监控信息 + */ + @Override + public InitialSwitchInfo selectInitialSwitchInfoById(Long id) + { + return initialSwitchInfoMapper.selectInitialSwitchInfoById(id); + } + + /** + * 查询交换机流量监控信息列表 + * + * @param initialSwitchInfo 交换机流量监控信息 + * @return 交换机流量监控信息 + */ + @Override + public List selectInitialSwitchInfoList(InitialSwitchInfo initialSwitchInfo) + { + return initialSwitchInfoMapper.selectInitialSwitchInfoList(initialSwitchInfo); + } + + /** + * 新增交换机流量监控信息 + * + * @param initialSwitchInfo 交换机流量监控信息 + * @return 结果 + */ + @Override + public int insertInitialSwitchInfo(InitialSwitchInfo initialSwitchInfo) + { + initialSwitchInfo.setCreateTime(DateUtils.getNowDate()); + return initialSwitchInfoMapper.insertInitialSwitchInfo(initialSwitchInfo); + } + + /** + * 修改交换机流量监控信息 + * + * @param initialSwitchInfo 交换机流量监控信息 + * @return 结果 + */ + @Override + public int updateInitialSwitchInfo(InitialSwitchInfo initialSwitchInfo) + { + initialSwitchInfo.setUpdateTime(DateUtils.getNowDate()); + return initialSwitchInfoMapper.updateInitialSwitchInfo(initialSwitchInfo); + } + + /** + * 批量删除交换机流量监控信息 + * + * @param ids 需要删除的交换机流量监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialSwitchInfoByIds(Long[] ids) + { + return initialSwitchInfoMapper.deleteInitialSwitchInfoByIds(ids); + } + + /** + * 删除交换机流量监控信息信息 + * + * @param id 交换机流量监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialSwitchInfoById(Long id) + { + return initialSwitchInfoMapper.deleteInitialSwitchInfoById(id); + } + + /** + * 批量新增交换机流量监控信息 + * + * @param list 交换机流量监控信息集合 + * @return 结果 + */ + @Override + @Transactional + public int batchInsertInitialSwitchInfo(List list) { + try { + return initialSwitchInfoMapper.batchInsertInitialSwitchInfo(list); + }catch (Exception e){ + log.error("批量插入交换机信息失败,失败数量:{}", list.size(), e); + throw new RuntimeException("批量保存失败",e); + } + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialSwitchInfoTempServiceImpl.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialSwitchInfoTempServiceImpl.java new file mode 100644 index 0000000..eedf5c2 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialSwitchInfoTempServiceImpl.java @@ -0,0 +1,122 @@ +package com.ruoyi.rocketmq.service.impl; + +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.rocketmq.domain.InitialSwitchInfo; +import com.ruoyi.rocketmq.domain.InitialSwitchInfoTemp; +import com.ruoyi.rocketmq.mapper.InitialSwitchInfoTempMapper; +import com.ruoyi.rocketmq.service.IInitialSwitchInfoTempService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * 交换机监控信息Service业务层处理 + * + * @author gyt + * @date 2025-08-26 + */ +@Service +@Slf4j +public class InitialSwitchInfoTempServiceImpl implements IInitialSwitchInfoTempService +{ + @Autowired + private InitialSwitchInfoTempMapper initialSwitchInfoTempMapper; + + /** + * 查询交换机监控信息 + * + * @param id 交换机监控信息主键 + * @return 交换机监控信息 + */ + @Override + public InitialSwitchInfoTemp selectInitialSwitchInfoTempById(Long id) + { + return initialSwitchInfoTempMapper.selectInitialSwitchInfoTempById(id); + } + + /** + * 查询交换机监控信息列表 + * + * @param initialSwitchInfoTemp 交换机监控信息 + * @return 交换机监控信息 + */ + @Override + public List selectInitialSwitchInfoTempList(InitialSwitchInfoTemp initialSwitchInfoTemp) + { + return initialSwitchInfoTempMapper.selectInitialSwitchInfoTempList(initialSwitchInfoTemp); + } + + /** + * 新增交换机监控信息 + * + * @param initialSwitchInfoTemp 交换机监控信息 + * @return 结果 + */ + @Override + public int insertInitialSwitchInfoTemp(InitialSwitchInfoTemp initialSwitchInfoTemp) + { + initialSwitchInfoTemp.setCreateTime(DateUtils.getNowDate()); + return initialSwitchInfoTempMapper.insertInitialSwitchInfoTemp(initialSwitchInfoTemp); + } + + /** + * 修改交换机监控信息 + * + * @param initialSwitchInfoTemp 交换机监控信息 + * @return 结果 + */ + @Override + public int updateInitialSwitchInfoTemp(InitialSwitchInfoTemp initialSwitchInfoTemp) + { + initialSwitchInfoTemp.setUpdateTime(DateUtils.getNowDate()); + return initialSwitchInfoTempMapper.updateInitialSwitchInfoTemp(initialSwitchInfoTemp); + } + + /** + * 批量删除交换机监控信息 + * + * @param ids 需要删除的交换机监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialSwitchInfoTempByIds(Long[] ids) + { + return initialSwitchInfoTempMapper.deleteInitialSwitchInfoTempByIds(ids); + } + + /** + * 删除交换机监控信息信息 + * + * @param id 交换机监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialSwitchInfoTempById(Long id) + { + return initialSwitchInfoTempMapper.deleteInitialSwitchInfoTempById(id); + } + /** + * 批量新增交换机流量监控信息 + * + * @param list 交换机流量监控信息集合 + * @return 结果 + */ + @Override + @Transactional + public int batchInsertInitialSwitchInfoTemp(List list) { + try { + return initialSwitchInfoTempMapper.batchInsertInitialSwitchInfoTemp(list); + }catch (Exception e){ + log.error("批量插入交换机信息临时表失败,失败数量:{}", list.size(), e); + throw new RuntimeException("批量保存失败",e); + } + } + + @Override + public void truncateSwitchInfoTemp() { + initialSwitchInfoTempMapper.truncateSwitchInfoTemp(); + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialSystemInfoServiceImpl.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialSystemInfoServiceImpl.java new file mode 100644 index 0000000..1b57b24 --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/service/impl/InitialSystemInfoServiceImpl.java @@ -0,0 +1,116 @@ +package com.ruoyi.rocketmq.service.impl; + +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.rocketmq.domain.InitialSystemInfo; +import com.ruoyi.rocketmq.mapper.InitialSystemInfoMapper; +import com.ruoyi.rocketmq.service.IInitialSystemInfoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 系统监控信息Service业务层处理 + * + * @author gyt + * @date 2025-08-25 + */ +@Service +@Slf4j +public class InitialSystemInfoServiceImpl implements IInitialSystemInfoService +{ + @Autowired + private InitialSystemInfoMapper initialSystemInfoMapper; + + /** + * 查询系统监控信息 + * + * @param id 系统监控信息主键 + * @return 系统监控信息 + */ + @Override + public InitialSystemInfo selectInitialSystemInfoById(Long id) + { + return initialSystemInfoMapper.selectInitialSystemInfoById(id); + } + + /** + * 查询系统监控信息列表 + * + * @param initialSystemInfo 系统监控信息 + * @return 系统监控信息 + */ + @Override + public List selectInitialSystemInfoList(InitialSystemInfo initialSystemInfo) + { + return initialSystemInfoMapper.selectInitialSystemInfoList(initialSystemInfo); + } + + /** + * 新增系统监控信息 + * + * @param initialSystemInfo 系统监控信息 + * @return 结果 + */ + @Override + public int insertInitialSystemInfo(InitialSystemInfo initialSystemInfo) + { + initialSystemInfo.setCreateTime(DateUtils.getNowDate()); + return initialSystemInfoMapper.insertInitialSystemInfo(initialSystemInfo); + } + + /** + * 修改系统监控信息 + * + * @param initialSystemInfo 系统监控信息 + * @return 结果 + */ + @Override + public int updateInitialSystemInfo(InitialSystemInfo initialSystemInfo) + { + initialSystemInfo.setUpdateTime(DateUtils.getNowDate()); + return initialSystemInfoMapper.updateInitialSystemInfo(initialSystemInfo); + } + + /** + * 批量删除系统监控信息 + * + * @param ids 需要删除的系统监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialSystemInfoByIds(Long[] ids) + { + return initialSystemInfoMapper.deleteInitialSystemInfoByIds(ids); + } + + /** + * 删除系统监控信息信息 + * + * @param id 系统监控信息主键 + * @return 结果 + */ + @Override + public int deleteInitialSystemInfoById(Long id) + { + return initialSystemInfoMapper.deleteInitialSystemInfoById(id); + } + + /** + * 批量新增系统监控信息 + * + * @param initialSystemInfo 系统监控信息集合 + * @return 结果 + */ + @Override + public int batchInsertInitialSystemInfo(List initialSystemInfo) + { + try { + return initialSystemInfoMapper.batchInsertInitialSystemInfo(initialSystemInfo); + }catch (Exception e){ + log.error("批量插入挂载点信息失败,失败数量:{}", initialSystemInfo.size(), e); + throw new RuntimeException("批量保存失败",e); + } + } +} diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/utils/JsonDataParser.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/utils/JsonDataParser.java new file mode 100644 index 0000000..ba3c92c --- /dev/null +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/utils/JsonDataParser.java @@ -0,0 +1,41 @@ +package com.ruoyi.rocketmq.utils; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import org.springframework.util.StringUtils; + +import java.util.ArrayList; +import java.util.List; + +public class JsonDataParser { + private static final ObjectMapper objectMapper = new ObjectMapper(); + + /** + * 通用JSON解析方法(兼容对象和数组) + * @param jsonStr JSON字符串 + * @param valueType 目标实体类类型 + * @return 实体类List集合 + */ + public static List parseJsonData(String jsonStr, Class valueType) { + if (!StringUtils.hasText(jsonStr)) { + return new ArrayList<>(); + } + + try { + JsonNode rootNode = objectMapper.readTree(jsonStr); + + if (rootNode.isArray()) { + // 处理数组格式JSON + return objectMapper.readValue(jsonStr, + objectMapper.getTypeFactory().constructCollectionType(List.class, valueType)); + } else { + // 处理单个对象格式JSON + List result = new ArrayList<>(1); + result.add(objectMapper.readValue(jsonStr, valueType)); + return result; + } + } catch (Exception e) { + throw new RuntimeException("JSON解析失败: " + e.getMessage(), e); + } + } +} \ No newline at end of file diff --git a/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialCpuInfoMapper.xml b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialCpuInfoMapper.xml new file mode 100644 index 0000000..604e412 --- /dev/null +++ b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialCpuInfoMapper.xml @@ -0,0 +1,191 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, client_id, avg1, avg5, avg15, interrupt, uti, num, normal, idle, iowait, system, noresp, user, create_by, update_by, create_time, update_time from initial_cpu_info + + + + + + + + insert into initial_cpu_info + + client_id, + avg1, + avg5, + avg15, + interrupt, + uti, + num, + normal, + idle, + iowait, + system, + noresp, + user, + create_by, + update_by, + create_time, + update_time, + + + #{clientId}, + #{avg1}, + #{avg5}, + #{avg15}, + #{interrupt}, + #{uti}, + #{num}, + #{normal}, + #{idle}, + #{iowait}, + #{system}, + #{noresp}, + #{user}, + #{createBy}, + #{updateBy}, + #{createTime}, + #{updateTime}, + + + + + update initial_cpu_info + + client_id = #{clientId}, + avg1 = #{avg1}, + avg5 = #{avg5}, + avg15 = #{avg15}, + interrupt = #{interrupt}, + uti = #{uti}, + num = #{num}, + normal = #{normal}, + idle = #{idle}, + iowait = #{iowait}, + system = #{system}, + noresp = #{noresp}, + user = #{user}, + create_by = #{createBy}, + update_by = #{updateBy}, + create_time = #{createTime}, + update_time = #{updateTime}, + + where id = #{id} + + + + delete from initial_cpu_info where id = #{id} + + + + delete from initial_cpu_info where id in + + #{id} + + + + + INSERT INTO initial_cpu_info + ( + client_id, + avg1, + avg5, + avg15, + interrupt, + uti, + num, + normal, + idle, + iowait, + `system`, + noresp, + `user`, + create_by, + update_by, + create_time, + update_time + ) + VALUES + + ( + #{item.clientId}, + #{item.avg1}, + #{item.avg5}, + #{item.avg15}, + #{item.interrupt}, + #{item.uti}, + #{item.num}, + #{item.normal}, + #{item.idle}, + #{item.iowait}, + #{item.system}, + #{item.noresp}, + #{item.user}, + #{item.createBy}, + #{item.updateBy}, + + + #{item.createTime} + + + NOW() + + , + + + #{item.updateTime} + + + NOW() + + + ) + + + \ No newline at end of file diff --git a/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialDiskInfoMapper.xml b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialDiskInfoMapper.xml new file mode 100644 index 0000000..93275f9 --- /dev/null +++ b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialDiskInfoMapper.xml @@ -0,0 +1,174 @@ + + + + + + + + + + + + + + + + + + + + + + + + select id, client_id, name, serial, total, write_speed, read_speed, write_times, read_times, write_bytes, read_bytes, create_by, update_by, create_time, update_time from initial_disk_info + + + + + + + + insert into initial_disk_info + + id, + client_id, + name, + serial, + total, + write_speed, + read_speed, + write_times, + read_times, + write_bytes, + read_bytes, + create_by, + update_by, + create_time, + update_time, + + + #{id}, + #{clientId}, + #{name}, + #{serial}, + #{total}, + #{writeSpeed}, + #{readSpeed}, + #{writeTimes}, + #{readTimes}, + #{writeBytes}, + #{readBytes}, + #{createBy}, + #{updateBy}, + #{createTime}, + #{updateTime}, + + + + + update initial_disk_info + + client_id = #{clientId}, + name = #{name}, + serial = #{serial}, + total = #{total}, + write_speed = #{writeSpeed}, + read_speed = #{readSpeed}, + write_times = #{writeTimes}, + read_times = #{readTimes}, + write_bytes = #{writeBytes}, + read_bytes = #{readBytes}, + create_by = #{createBy}, + update_by = #{updateBy}, + create_time = #{createTime}, + update_time = #{updateTime}, + + where id = #{id} + + + + delete from initial_disk_info where id = #{id} + + + + delete from initial_disk_info where id in + + #{id} + + + + + INSERT INTO initial_disk_info + ( + id, + client_id, + `name`, + serial, + total, + write_speed, + read_speed, + write_times, + read_times, + write_bytes, + read_bytes, + create_by, + update_by, + create_time, + update_time + ) + VALUES + + ( + #{item.id}, + #{item.clientId}, + #{item.name}, + #{item.serial}, + #{item.total}, + #{item.writeSpeed}, + #{item.readSpeed}, + #{item.writeTimes}, + #{item.readTimes}, + #{item.writeBytes}, + #{item.readBytes}, + #{item.createBy}, + #{item.updateBy}, + + + #{item.createTime} + + + NOW() + + , + + + #{item.updateTime} + + + NOW() + + + ) + + + \ No newline at end of file diff --git a/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialDockerInfoMapper.xml b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialDockerInfoMapper.xml new file mode 100644 index 0000000..f7d2e9f --- /dev/null +++ b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialDockerInfoMapper.xml @@ -0,0 +1,155 @@ + + + + + + + + + + + + + + + + + + + + + + select auto_id, id, name, status, cpu_util, mem_util, net_in_speed, net_out_speed, client_id, create_time, update_time, create_by, update_by from initial_docker_info + + + + + + + + insert into initial_docker_info + + id, + name, + status, + cpu_util, + mem_util, + net_in_speed, + net_out_speed, + client_id, + create_time, + update_time, + create_by, + update_by, + + + #{id}, + #{name}, + #{status}, + #{cpuUtil}, + #{memUtil}, + #{netInSpeed}, + #{netOutSpeed}, + #{clientId}, + #{createTime}, + #{updateTime}, + #{createBy}, + #{updateBy}, + + + + + update initial_docker_info + + id = #{id}, + name = #{name}, + status = #{status}, + cpu_util = #{cpuUtil}, + mem_util = #{memUtil}, + net_in_speed = #{netInSpeed}, + net_out_speed = #{netOutSpeed}, + client_id = #{clientId}, + create_time = #{createTime}, + update_time = #{updateTime}, + create_by = #{createBy}, + update_by = #{updateBy}, + + where id = #{id} + + + + delete from initial_docker_info where auto_id = #{autoId} + + + + delete from initial_docker_info where auto_id in + + #{autoId} + + + + + INSERT INTO initial_docker_info + ( + `id`, + `name`, + status, + cpu_util, + mem_util, + net_in_speed, + net_out_speed, + client_id, + create_time, + update_time, + create_by, + update_by + ) + VALUES + + ( + #{item.id}, + #{item.name}, + #{item.status}, + #{item.cpuUtil}, + #{item.memUtil}, + #{item.netInSpeed}, + #{item.netOutSpeed}, + #{item.clientId}, + + + #{item.createTime} + + + NOW() + + , + + + #{item.updateTime} + + + NOW() + + , + #{item.createBy}, + #{item.updateBy} + ) + + + \ No newline at end of file diff --git a/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialMemoryInfoMapper.xml b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialMemoryInfoMapper.xml new file mode 100644 index 0000000..109b193 --- /dev/null +++ b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialMemoryInfoMapper.xml @@ -0,0 +1,149 @@ + + + + + + + + + + + + + + + + + + + + + select id, client_id, swap_size_free, untilzation, swap_size_percent, available, percent, total, create_by, update_by, create_time, update_time from initial_memory_info + + + + + + + + insert into initial_memory_info + + client_id, + swap_size_free, + untilzation, + swap_size_percent, + available, + percent, + total, + create_by, + update_by, + create_time, + update_time, + + + #{clientId}, + #{swapSizeFree}, + #{untilzation}, + #{swapSizePercent}, + #{available}, + #{percent}, + #{total}, + #{createBy}, + #{updateBy}, + #{createTime}, + #{updateTime}, + + + + + update initial_memory_info + + client_id = #{clientId}, + swap_size_free = #{swapSizeFree}, + untilzation = #{untilzation}, + swap_size_percent = #{swapSizePercent}, + available = #{available}, + percent = #{percent}, + total = #{total}, + create_by = #{createBy}, + update_by = #{updateBy}, + create_time = #{createTime}, + update_time = #{updateTime}, + + where id = #{id} + + + + delete from initial_memory_info where id = #{id} + + + + delete from initial_memory_info where id in + + #{id} + + + + + INSERT INTO initial_memory_info + ( + client_id, + swap_size_free, + untilzation, + swap_size_percent, + available, + percent, + total, + create_by, + update_by, + create_time, + update_time + ) + VALUES + + ( + #{item.clientId}, + #{item.swapSizeFree}, + #{item.untilzation}, + #{item.swapSizePercent}, + #{item.available}, + #{item.percent}, + #{item.total}, + #{item.createBy}, + #{item.updateBy}, + + + #{item.createTime} + + + NOW() + + , + + + #{item.updateTime} + + + NOW() + + + ) + + + \ No newline at end of file diff --git a/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialMountPointInfoMapper.xml b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialMountPointInfoMapper.xml new file mode 100644 index 0000000..91aa29f --- /dev/null +++ b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialMountPointInfoMapper.xml @@ -0,0 +1,142 @@ + + + + + + + + + + + + + + + + + + + + select id, client_id, mount, vfs_type, vfs_free, vfs_total, vfs_util, create_by, update_by, create_time, update_time from initial_mount_point_info + + + + + + + + insert into initial_mount_point_info + + client_id, + mount, + vfs_type, + vfs_free, + vfs_total, + vfs_util, + create_by, + update_by, + create_time, + update_time, + + + #{clientId}, + #{mount}, + #{vfsType}, + #{vfsFree}, + #{vfsTotal}, + #{vfsUtil}, + #{createBy}, + #{updateBy}, + #{createTime}, + #{updateTime}, + + + + + update initial_mount_point_info + + client_id = #{clientId}, + mount = #{mount}, + vfs_type = #{vfsType}, + vfs_free = #{vfsFree}, + vfs_total = #{vfsTotal}, + vfs_util = #{vfsUtil}, + create_by = #{createBy}, + update_by = #{updateBy}, + create_time = #{createTime}, + update_time = #{updateTime}, + + where id = #{id} + + + + delete from initial_mount_point_info where id = #{id} + + + + delete from initial_mount_point_info where id in + + #{id} + + + + + INSERT INTO initial_mount_point_info + ( + client_id, + mount, + vfs_type, + vfs_free, + vfs_total, + vfs_util, + create_by, + update_by, + create_time, + update_time + ) + VALUES + + ( + #{item.clientId}, + #{item.mount}, + #{item.vfsType}, + #{item.vfsFree}, + #{item.vfsTotal}, + #{item.vfsUtil}, + #{item.createBy}, + #{item.updateBy}, + + + #{item.createTime} + + + NOW() + + , + + + #{item.updateTime} + + + NOW() + + + ) + + + \ No newline at end of file diff --git a/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialSwitchInfoMapper.xml b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialSwitchInfoMapper.xml new file mode 100644 index 0000000..eba9fff --- /dev/null +++ b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialSwitchInfoMapper.xml @@ -0,0 +1,150 @@ + + + + + + + + + + + + + + + + + + + + + + SELECT + id, client_id, `name`, in_bytes, out_bytes, status, `type`, + in_speed, out_speed, create_by, update_by, create_time, update_time + FROM initial_switch_info + + + + + + + + INSERT INTO initial_switch_info + + client_id, + name, + in_bytes, + out_bytes, + status, + type, + in_speed, + out_speed, + create_by, + update_by, + create_time, + update_time + + + #{clientId}, + #{name}, + #{inBytes}, + #{outBytes}, + #{status}, + #{type}, + #{inSpeed}, + #{outSpeed}, + #{createBy}, + #{updateBy}, + NOW(), + NOW() + + + + + UPDATE initial_switch_info + + client_id = #{clientId}, + name = #{name}, + in_bytes = #{inBytes}, + out_bytes = #{outBytes}, + status = #{status}, + type = #{type}, + in_speed = #{inSpeed} + out_speed = #{outSpeed} + update_by = #{updateBy}, + update_time = NOW() + + WHERE id = #{id} + + + + delete from initial_switch_info where id = #{id} + + + + delete from initial_switch_info where id in + + #{id} + + + + + INSERT INTO initial_switch_info + ( + client_id, name, in_bytes, out_bytes, status, type, in_speed, out_speed, + create_by, update_by, create_time, update_time + ) + VALUES + + ( + #{item.clientId}, #{item.name}, #{item.inBytes}, #{item.outBytes}, + #{item.status}, #{item.type}, #{item.inSpeed}, #{item.outSpeed}, #{item.createBy}, #{item.updateBy}, + + + #{item.createTime} + + + NOW() + + , + + + #{item.updateTime} + + + NOW() + + + ) + + + \ No newline at end of file diff --git a/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialSwitchInfoTempMapper.xml b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialSwitchInfoTempMapper.xml new file mode 100644 index 0000000..a6d76c4 --- /dev/null +++ b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialSwitchInfoTempMapper.xml @@ -0,0 +1,140 @@ + + + + + + + + + + + + + + + + + + + + + + select id, client_id, name, in_bytes, out_bytes, status, type, in_speed, out_speed, create_by, update_by, create_time, update_time from initial_switch_info_temp + + + + + + + + insert into initial_switch_info_temp + + client_id, + name, + in_bytes, + out_bytes, + status, + type, + in_speed, + out_speed, + create_by, + update_by, + create_time, + update_time, + + + #{clientId}, + #{name}, + #{inBytes}, + #{outBytes}, + #{status}, + #{type}, + #{inSpeed}, + #{outSpeed}, + #{createBy}, + #{updateBy}, + #{createTime}, + #{updateTime}, + + + + + update initial_switch_info_temp + + client_id = #{clientId}, + name = #{name}, + in_bytes = #{inBytes}, + out_bytes = #{outBytes}, + status = #{status}, + type = #{type}, + in_speed = #{inSpeed}, + out_speed = #{outSpeed}, + create_by = #{createBy}, + update_by = #{updateBy}, + create_time = #{createTime}, + update_time = #{updateTime}, + + where id = #{id} + + + + delete from initial_switch_info_temp where id = #{id} + + + + delete from initial_switch_info_temp where id in + + #{id} + + + + INSERT INTO initial_switch_info_temp + ( + client_id, name, in_bytes, out_bytes, status, type, in_speed, out_speed, + create_by, update_by, create_time, update_time + ) + VALUES + + ( + #{item.clientId}, #{item.name}, #{item.inBytes}, #{item.outBytes}, + #{item.status}, #{item.type}, #{item.inSpeed}, #{item.outSpeed}, #{item.createBy}, #{item.updateBy}, + + + #{item.createTime} + + + NOW() + + , + + + #{item.updateTime} + + + NOW() + + + ) + + + + truncate table initial_switch_info_temp + + \ No newline at end of file diff --git a/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialSystemInfoMapper.xml b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialSystemInfoMapper.xml new file mode 100644 index 0000000..d59a4f0 --- /dev/null +++ b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/InitialSystemInfoMapper.xml @@ -0,0 +1,197 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, client_id, os, arch, max_proc, run_proc_num, users_num, disk_size_total, boot_time, uname, local_time, up_time, proc_num, time_stamp, create_by, update_by, create_time, update_time, uuid from initial_system_info + + + + + + + + insert into initial_system_info + + client_id, + os, + arch, + max_proc, + run_proc_num, + users_num, + disk_size_total, + boot_time, + uname, + local_time, + up_time, + proc_num, + time_stamp, + create_by, + update_by, + create_time, + update_time, + uuid, + + + #{clientId}, + #{os}, + #{arch}, + #{maxProc}, + #{runProcNum}, + #{usersNum}, + #{diskSizeTotal}, + #{bootTime}, + #{uname}, + #{localTime}, + #{upTime}, + #{procNum}, + #{timeStamp}, + #{createBy}, + #{updateBy}, + #{createTime}, + #{updateTime}, + #{uuid}, + + + + + update initial_system_info + + client_id = #{clientId}, + os = #{os}, + arch = #{arch}, + max_proc = #{maxProc}, + run_proc_num = #{runProcNum}, + users_num = #{usersNum}, + disk_size_total = #{diskSizeTotal}, + boot_time = #{bootTime}, + uname = #{uname}, + local_time = #{localTime}, + up_time = #{upTime}, + proc_num = #{procNum}, + time_stamp = #{timeStamp}, + create_by = #{createBy}, + update_by = #{updateBy}, + create_time = #{createTime}, + update_time = #{updateTime}, + uuid = #{uuid}, + + where id = #{id} + + + + delete from initial_system_info where id = #{id} + + + + delete from initial_system_info where id in + + #{id} + + + + INSERT INTO initial_system_info + ( + client_id, + os, + arch, + max_proc, + run_proc_num, + users_num, + disk_size_total, + boot_time, + uname, + local_time, + up_time, + proc_num, + time_stamp, + create_by, + update_by, + create_time, + update_time, + uuid + ) + VALUES + + ( + #{item.clientId}, + #{item.os}, + #{item.arch}, + #{item.maxProc}, + #{item.runProcNum}, + #{item.usersNum}, + #{item.diskSizeTotal}, + #{item.bootTime}, + #{item.uname}, + #{item.localTime}, + #{item.upTime}, + #{item.procNum}, + #{item.timeStamp}, + #{item.createBy}, + #{item.updateBy}, + + + #{item.createTime} + + + NOW() + + , + + + #{item.updateTime} + + + NOW() + + , + #{item.uuid} + ) + + + \ No newline at end of file