diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/RmResourceRegistrationController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/RmResourceRegistrationController.java index a4f7ac9..7a25b71 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/RmResourceRegistrationController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/RmResourceRegistrationController.java @@ -4,7 +4,6 @@ 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.PageDomain; import com.ruoyi.common.core.web.page.TableDataInfo; import com.ruoyi.common.log.annotation.Log; import com.ruoyi.common.log.enums.BusinessType; @@ -41,12 +40,11 @@ public class RmResourceRegistrationController extends BaseController @PostMapping("/list") public TableDataInfo list(@RequestBody RmResourceRegistration rmResourceRegistration) { - PageDomain pageDomain = new PageDomain(); - pageDomain.setPageNum(rmResourceRegistration.getPageNum()); - pageDomain.setPageSize(rmResourceRegistration.getPageSize()); - startPage(pageDomain); - List list = rmResourceRegistrationService.selectRmResourceRegistrationList(rmResourceRegistration); - return getDataTable(list); + Map resultMap = rmResourceRegistrationService.getRegistrationTableInfoList(rmResourceRegistration); + if(rmResourceRegistration.getQueryParam() != null){ + return getDataTable((List) resultMap.get("list"), (int) resultMap.get("total")); + } + return getDataTable((List) resultMap.get("list")); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RmResourceRegistrationMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RmResourceRegistrationMapper.java index c1c1cca..5cb96a6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RmResourceRegistrationMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RmResourceRegistrationMapper.java @@ -99,4 +99,11 @@ public interface RmResourceRegistrationMapper * @return */ List getAllLogicalNodeId(); + + /** + * 关联查询machinecode + * @param rmResourceRegistration + * @return + */ + List getRegistrationTableInfoList(RmResourceRegistration rmResourceRegistration); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IRmResourceRegistrationService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IRmResourceRegistrationService.java index fc3a240..a417584 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IRmResourceRegistrationService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IRmResourceRegistrationService.java @@ -31,6 +31,8 @@ public interface IRmResourceRegistrationService * @param rmResourceRegistration 资源注册 * @return 资源注册集合 */ + public Map getRegistrationTableInfoList(RmResourceRegistration rmResourceRegistration); + public List selectRmResourceRegistrationList(RmResourceRegistration rmResourceRegistration); /** 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 6844502..69d1aaa 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 @@ -183,11 +183,6 @@ public class EpsInitialTrafficDataServiceImpl implements EpsInitialTrafficDataSe */ @Override public List query(EpsInitialTrafficData queryParam) { - // 参数校验 -// if (StringUtils.isBlank(queryParam.getDeviceSn())) { -// throw new IllegalArgumentException("设备序列号不能为空"); -// } - // 获取涉及的表名 Set tableNames = TableRouterUtil.getTableNamesBetween(queryParam.getStartTime(), queryParam.getEndTime()); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RmResourceRegistrationServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RmResourceRegistrationServiceImpl.java index 9cfc4cc..0cf7e00 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RmResourceRegistrationServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RmResourceRegistrationServiceImpl.java @@ -7,6 +7,7 @@ import com.ruoyi.common.core.enums.MsgEnum; import com.ruoyi.common.core.utils.DateUtils; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.web.page.PageDomain; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.system.api.RemoteRocketMqService; import com.ruoyi.system.api.domain.*; @@ -25,6 +26,8 @@ import java.math.RoundingMode; import java.util.*; import java.util.stream.Collectors; +import static com.ruoyi.common.core.utils.PageUtils.startPage; + /** * 资源注册Service业务层处理 * @@ -63,10 +66,68 @@ public class RmResourceRegistrationServiceImpl implements IRmResourceRegistratio if(rmResourceRegistration.getClientId()!= null){ // set网卡信息 setNetWorkMsg(rmResourceRegistration); + // set金山machineCode + setMachineMsg(rmResourceRegistration); } return rmResourceRegistration; } + /** + * 查询资源注册列表 + * + * @param rmResourceRegistration 资源注册 + * @return 资源注册 + */ + @Override + public Map getRegistrationTableInfoList(RmResourceRegistration rmResourceRegistration) + { + Map resultMap = new HashMap(); + if(rmResourceRegistration.getQueryParam() == null){ + PageDomain pageDomain = new PageDomain(); + pageDomain.setPageNum(rmResourceRegistration.getPageNum()); + pageDomain.setPageSize(rmResourceRegistration.getPageSize()); + startPage(pageDomain); + } + List rmResourceRegistrationList = rmResourceRegistrationMapper.getRegistrationTableInfoList(rmResourceRegistration); + for (RmResourceRegistration resourceRegistration : rmResourceRegistrationList) { + if(resourceRegistration.getClientId() != null){ + // 网卡信息 + setNetWorkMsg(resourceRegistration); + } + } + if(rmResourceRegistration.getQueryParam() != null){ + String queryValue = rmResourceRegistration.getQueryParam().trim(); + // 筛选公网IP私网IP设备SN相等的数据 + // 从rmResourceRegistrationList列表中筛选符合条件的数据 + List filteredList = rmResourceRegistrationList.stream() + .filter(item -> item != null) + .filter(item -> + // 检查公网IP (IP1-3和管理网) + queryValue.equals(item.getIp1PublicIp()) || + queryValue.equals(item.getIp2PublicIp()) || + queryValue.equals(item.getIp3PublicIp()) || + queryValue.equals(item.getMgmtPublicIp()) || + + // 检查私网IP (IP1-3和管理网) + queryValue.equals(item.getIp1Ipv4Address()) || + queryValue.equals(item.getIp2Ipv4Address()) || + queryValue.equals(item.getIp3Ipv4Address()) || + queryValue.equals(item.getMgmtIpv4Address()) || + + // 检查设备SN + queryValue.equals(item.getHardwareSn()) || + queryValue.equals(item.getClientId()) + ) + .collect(Collectors.toList()); + List pageInfo = applyPagination(filteredList, rmResourceRegistration.getPageNum(), rmResourceRegistration.getPageSize()); + resultMap.put("list", pageInfo); + resultMap.put("total", filteredList.size()); + return resultMap; + }else{ + resultMap.put("list", rmResourceRegistrationList); + } + return resultMap; + } /** * 查询资源注册列表 * @@ -76,7 +137,7 @@ public class RmResourceRegistrationServiceImpl implements IRmResourceRegistratio @Override public List selectRmResourceRegistrationList(RmResourceRegistration rmResourceRegistration) { - List rmResourceRegistrationList = rmResourceRegistrationMapper.selectRmResourceRegistrationList(rmResourceRegistration); + List rmResourceRegistrationList = rmResourceRegistrationMapper.getRegistrationTableInfoList(rmResourceRegistration); for (RmResourceRegistration resourceRegistration : rmResourceRegistrationList) { if(resourceRegistration.getClientId() != null){ // 网卡信息 @@ -111,6 +172,22 @@ public class RmResourceRegistrationServiceImpl implements IRmResourceRegistratio } return rmResourceRegistrationList; } + /** + * 内存分页 + */ + private List applyPagination(List list, int pageNum, int pageSize) { + if (list == null || list.isEmpty()) { + return new ArrayList<>(); + } + + int fromIndex = (pageNum - 1) * pageSize; + if (fromIndex >= list.size()) { + return new ArrayList<>(); + } + + int toIndex = Math.min(fromIndex + pageSize, list.size()); + return list.subList(fromIndex, toIndex); + } /** * 网卡信息赋值 @@ -198,15 +275,21 @@ public class RmResourceRegistrationServiceImpl implements IRmResourceRegistratio registration.setMgmtGateway(network.getGateway()); } } + } + + /** + * 设置金山machineCode + * @param registration + */ + public void setMachineMsg(RmResourceRegistration registration){ // 设置金山machineCode RmRegistrationMachine rmRegistrationMachine = new RmRegistrationMachine(); - rmRegistrationMachine.setClientId(clientId); + rmRegistrationMachine.setClientId(registration.getClientId()); List machineList = rmRegistrationMachineMapper.selectRmRegistrationMachineList(rmRegistrationMachine); if(!machineList.isEmpty()){ RmRegistrationMachine machineMsg = machineList.get(0); registration.setMachineCode(machineMsg.getMachineCode()); } - } /** * 新增资源注册 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 0e740c2..bde2401 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 @@ -189,10 +189,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" `ipV4` AS ipV4, `in_dropped` AS inDropped, `out_dropped` AS outDropped, - sum(ifnull(`in_speed`,0)) AS inSpeed, - sum(ifnull(`out_speed`,0)) AS outSpeed, - sum(ifnull(`total_in_speed`,0)) AS totalInSpeed, - sum(ifnull(`total_out_speed`,0)) AS totalOutSpeed, + CAST(sum(ifnull(`in_speed`,0)) AS DECIMAL(20,0)) AS inSpeed, + CAST(sum(ifnull(`out_speed`,0)) AS DECIMAL(20,0)) AS outSpeed, + CAST(sum(ifnull(`total_in_speed`,0)) AS DECIMAL(20,0)) AS totalInSpeed, + CAST(sum(ifnull(`total_out_speed`,0)) AS DECIMAL(20,0)) AS totalOutSpeed, `machine_flow` AS machineFlow, `speed` AS speed, `duplex` AS duplex, diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RmResourceRegistrationMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RmResourceRegistrationMapper.xml index 3f45cf5..c6905c1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RmResourceRegistrationMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RmResourceRegistrationMapper.xml @@ -383,4 +383,36 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select logical_node_id logicalNodeId from rm_resource_registration where logical_node_id != '' group by logical_node_id + \ No newline at end of file diff --git a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/RmDeploymentPolicy.java b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/RmDeploymentPolicy.java index 2a21367..b897fc0 100644 --- a/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/RmDeploymentPolicy.java +++ b/ruoyi-rocketmq/src/main/java/com/ruoyi/rocketmq/domain/RmDeploymentPolicy.java @@ -71,8 +71,8 @@ public class RmDeploymentPolicy extends BaseEntity private String policyStatus; /** 策略下发时间 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "策略下发时间", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "策略下发时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date deployTime; /** 脚本类型 */ diff --git a/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/RmAgentManagementMapper.xml b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/RmAgentManagementMapper.xml index afba6e3..946cb24 100644 --- a/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/RmAgentManagementMapper.xml +++ b/ruoyi-rocketmq/src/main/resources/mapper/rocketmq/RmAgentManagementMapper.xml @@ -51,6 +51,7 @@ and deploy_device = #{deployDevice} and (resource_name like concat('%', #{resourceName}, '%') or internal_ip = #{internalIp}) + order by last_update_time desc