agent更新按最后一次更新时间排序、服务器管理多条件分页查询优化、服务器底层流量科学计数法优化
This commit is contained in:
+5
-7
@@ -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<RmResourceRegistration> list = rmResourceRegistrationService.selectRmResourceRegistrationList(rmResourceRegistration);
|
||||
return getDataTable(list);
|
||||
Map<String, Object> resultMap = rmResourceRegistrationService.getRegistrationTableInfoList(rmResourceRegistration);
|
||||
if(rmResourceRegistration.getQueryParam() != null){
|
||||
return getDataTable((List<RmResourceRegistration>) resultMap.get("list"), (int) resultMap.get("total"));
|
||||
}
|
||||
return getDataTable((List<RmResourceRegistration>) resultMap.get("list"));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+7
@@ -99,4 +99,11 @@ public interface RmResourceRegistrationMapper
|
||||
* @return
|
||||
*/
|
||||
List<Map> getAllLogicalNodeId();
|
||||
|
||||
/**
|
||||
* 关联查询machinecode
|
||||
* @param rmResourceRegistration
|
||||
* @return
|
||||
*/
|
||||
List<RmResourceRegistration> getRegistrationTableInfoList(RmResourceRegistration rmResourceRegistration);
|
||||
}
|
||||
|
||||
+2
@@ -31,6 +31,8 @@ public interface IRmResourceRegistrationService
|
||||
* @param rmResourceRegistration 资源注册
|
||||
* @return 资源注册集合
|
||||
*/
|
||||
public Map<String, Object> getRegistrationTableInfoList(RmResourceRegistration rmResourceRegistration);
|
||||
|
||||
public List<RmResourceRegistration> selectRmResourceRegistrationList(RmResourceRegistration rmResourceRegistration);
|
||||
|
||||
/**
|
||||
|
||||
-5
@@ -183,11 +183,6 @@ public class EpsInitialTrafficDataServiceImpl implements EpsInitialTrafficDataSe
|
||||
*/
|
||||
@Override
|
||||
public List<EpsInitialTrafficData> query(EpsInitialTrafficData queryParam) {
|
||||
// 参数校验
|
||||
// if (StringUtils.isBlank(queryParam.getDeviceSn())) {
|
||||
// throw new IllegalArgumentException("设备序列号不能为空");
|
||||
// }
|
||||
|
||||
// 获取涉及的表名
|
||||
Set<String> tableNames = TableRouterUtil.getTableNamesBetween(queryParam.getStartTime(), queryParam.getEndTime());
|
||||
|
||||
|
||||
+86
-3
@@ -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<String, Object> getRegistrationTableInfoList(RmResourceRegistration rmResourceRegistration)
|
||||
{
|
||||
Map<String, Object> resultMap = new HashMap();
|
||||
if(rmResourceRegistration.getQueryParam() == null){
|
||||
PageDomain pageDomain = new PageDomain();
|
||||
pageDomain.setPageNum(rmResourceRegistration.getPageNum());
|
||||
pageDomain.setPageSize(rmResourceRegistration.getPageSize());
|
||||
startPage(pageDomain);
|
||||
}
|
||||
List<RmResourceRegistration> 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<RmResourceRegistration> 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<RmResourceRegistration> 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<RmResourceRegistration> selectRmResourceRegistrationList(RmResourceRegistration rmResourceRegistration)
|
||||
{
|
||||
List<RmResourceRegistration> rmResourceRegistrationList = rmResourceRegistrationMapper.selectRmResourceRegistrationList(rmResourceRegistration);
|
||||
List<RmResourceRegistration> 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<RmResourceRegistration> applyPagination(List<RmResourceRegistration> 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<RmRegistrationMachine> machineList = rmRegistrationMachineMapper.selectRmRegistrationMachineList(rmRegistrationMachine);
|
||||
if(!machineList.isEmpty()){
|
||||
RmRegistrationMachine machineMsg = machineList.get(0);
|
||||
registration.setMachineCode(machineMsg.getMachineCode());
|
||||
}
|
||||
|
||||
}
|
||||
/**
|
||||
* 新增资源注册
|
||||
|
||||
+4
-4
@@ -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,
|
||||
|
||||
+32
@@ -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
|
||||
</select>
|
||||
<select id="getRegistrationTableInfoList" parameterType="RmResourceRegistration" resultType="RmResourceRegistration">
|
||||
select
|
||||
a.id,
|
||||
a.hardware_sn as hardwareSn,
|
||||
a.agent_version as agentVersion,
|
||||
a.registration_status as registrationStatus,
|
||||
a.online_status as onlineStatus,
|
||||
a.create_time as createTime,
|
||||
a.update_time as updateTime,
|
||||
a.client_id as clientId,
|
||||
a.business_name as businessName,
|
||||
a.logical_node_id as logicalNodeId,
|
||||
a.multi_public_ip_status as multiPublicIpStatus,
|
||||
a.heartbeat_count as heartbeatCount,
|
||||
a.heartbeat_interval as heartbeatInterval,
|
||||
a.onboard_time as onboardTime,
|
||||
b.machine_code as machineCode
|
||||
from rm_resource_registration a
|
||||
left join rm_registration_machine b on a.client_id = b.client_id
|
||||
<where>
|
||||
<if test="hardwareSn != null and hardwareSn != ''"> and a.hardware_sn = #{hardwareSn}</if>
|
||||
<if test="resourceType != null and resourceType != ''"> and a.resource_type = #{resourceType}</if>
|
||||
<if test="agentVersion != null and agentVersion != ''"> and a.agent_version = #{agentVersion}</if>
|
||||
<if test="registrationStatus != null and registrationStatus != ''"> and a.registration_status = #{registrationStatus}</if>
|
||||
<if test="onlineStatus != null and onlineStatus != ''"> and a.online_status = #{onlineStatus}</if>
|
||||
<if test="clientId != null and clientId != ''"> and a.client_id = #{clientId}</if>
|
||||
<if test="businessName != null and businessName != ''"> and a.business_name like concat('%', #{businessName}, '%')</if>
|
||||
<if test="logicalNodeId != null and logicalNodeId != ''"> and a.logical_node_id = #{logicalNodeId}</if>
|
||||
<if test="multiPublicIpStatus != null and multiPublicIpStatus != ''"> and a.multi_public_ip_status = #{multiPublicIpStatus}</if>
|
||||
</where>
|
||||
order by a.create_time desc
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -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;
|
||||
|
||||
/** 脚本类型 */
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
<if test="deployDevice != null and deployDevice != ''"> and deploy_device = #{deployDevice}</if>
|
||||
<if test="queryName != null and queryName != '' "> and (resource_name like concat('%', #{resourceName}, '%') or internal_ip = #{internalIp})</if>
|
||||
</where>
|
||||
order by last_update_time desc
|
||||
</select>
|
||||
|
||||
<select id="selectRmAgentManagementById" parameterType="Long" resultMap="RmAgentManagementResult">
|
||||
|
||||
Reference in New Issue
Block a user