增加计算服务器平均流量方法、优化95值自动计算方法

This commit is contained in:
gaoyutao
2025-11-06 13:47:29 +08:00
parent b0868dfe2d
commit 5e5330a924
13 changed files with 942 additions and 48 deletions
@@ -7,7 +7,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<update id="createEpsTrafficTable">
CREATE TABLE IF NOT EXISTS ${tableName} (
id BIGINT(20) AUTO_INCREMENT COMMENT '唯一标识ID',
`name` VARCHAR(100) COMMENT '接口名称',
`name` VARCHAR(255) COMMENT '接口名称',
`mac` VARCHAR(50) COMMENT 'MAC地址',
`status` VARCHAR(20) COMMENT '运行状态',
`type` VARCHAR(30) COMMENT '接口类型',
@@ -16,6 +16,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
`out_dropped` DECIMAL(20,2) COMMENT '出站丢包率(%)',
`in_speed` varchar(50) COMMENT '接收带宽(bit)',
`out_speed` varchar(50) COMMENT '发送带宽(bit)',
`total_in_speed` varchar(50) COMMENT '总接收带宽(bit)',
`total_out_speed` varchar(50) COMMENT '总发送带宽(bit)',
`machine_flow` varchar(50) COMMENT '金山带宽(bit)',
`speed` varchar(100) COMMENT '协商速度',
`duplex` varchar(100) COMMENT '工作模式',
@@ -37,10 +39,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
INDEX idx_service_sn (service_sn)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='EPS设备流量初始数据表';
</update>
<update id="createEpsInitialTrafficTable">
CREATE TABLE IF NOT EXISTS ${tableName} (
id BIGINT(20) AUTO_INCREMENT COMMENT '唯一标识ID',
`name` VARCHAR(100) COMMENT '接口名称',
`name` VARCHAR(255) COMMENT '接口名称',
`mac` VARCHAR(20) COMMENT 'MAC地址',
`status` VARCHAR(20) COMMENT '运行状态',
`type` VARCHAR(30) COMMENT '接口类型',
@@ -49,6 +52,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
`out_dropped` DECIMAL(20,2) COMMENT '出站丢包率(%)',
`in_speed` VARCHAR(50) COMMENT '接收带宽(Mbps)',
`out_speed` VARCHAR(50) COMMENT '发送带宽(Mbps)',
`total_in_speed` VARCHAR(50) COMMENT '总接收带宽(Mbps)',
`total_out_speed` VARCHAR(50) COMMENT '总发送带宽(Mbps)',
`speed` varchar(100) COMMENT '协商速度',
`duplex` varchar(100) COMMENT '工作模式',
create_time DATETIME COMMENT '创建时间',
@@ -61,6 +66,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
INDEX idx_name_time (`name`,create_time)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='初始带宽流量表';
</update>
<!-- 单条插入语句 -->
<insert id="insert">
INSERT INTO ${tableName} (
@@ -73,6 +79,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
`out_dropped`,
`in_speed`,
`out_speed`,
`total_in_speed`,
`total_out_speed`,
`speed`,
`duplex`,
business_id,
@@ -94,6 +102,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{outDropped},
#{inSpeed},
#{outSpeed},
#{totalInSpeed},
#{totalOutSpeed},
#{speed},
#{duplex},
#{businessId},
@@ -121,6 +131,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
`out_dropped`,
`in_speed`,
`out_speed`,
`total_in_speed`,
`total_out_speed`,
`speed`,
`duplex`,
business_id,
@@ -147,6 +159,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{data.outDropped,jdbcType=DECIMAL},
#{data.inSpeed,jdbcType=VARCHAR},
#{data.outSpeed,jdbcType=VARCHAR},
#{data.totalInSpeed,jdbcType=VARCHAR},
#{data.totalOutSpeed,jdbcType=VARCHAR},
#{data.speed,jdbcType=VARCHAR},
#{data.duplex,jdbcType=VARCHAR},
#{data.businessId,jdbcType=VARCHAR},
@@ -167,30 +181,32 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<!-- 条件查询 -->
<select id="selectByCondition" resultType="EpsInitialTrafficData">
SELECT
id,
`name` AS name,
`mac` AS mac,
`status` AS status,
`type` AS type,
`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,
`machine_flow` AS machineFlow,
`speed` AS speed,
`duplex` AS duplex,
business_id AS businessId,
business_name AS businessName,
service_sn AS serviceSn,
node_name AS nodeName,
revenue_method AS revenueMethod,
package_bandwidth AS packageBandwidth,
create_time AS createTime,
update_time AS updateTime,
create_by AS createBy,
update_by AS updateBy,
client_id AS clientId
id,
`name` AS name,
`mac` AS mac,
`status` AS status,
`type` AS type,
`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,
`machine_flow` AS machineFlow,
`speed` AS speed,
`duplex` AS duplex,
business_id AS businessId,
business_name AS businessName,
service_sn AS serviceSn,
node_name AS nodeName,
revenue_method AS revenueMethod,
package_bandwidth AS packageBandwidth,
create_time AS createTime,
update_time AS updateTime,
create_by AS createBy,
update_by AS updateBy,
client_id AS clientId
FROM ${tableName}
<where>
<if test="serviceSn != '' and serviceSn != null">
@@ -211,7 +227,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="revenueMethod != null">
and revenue_method = #{revenueMethod}
</if>
</where>
group BY create_time desc
</select>
@@ -229,6 +244,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
`out_dropped` AS outDropped,
`in_speed` AS inSpeed,
`out_speed` AS outSpeed,
`total_in_speed` AS totalInSpeed,
`total_out_speed` AS totalOutSpeed,
`speed` AS speed,
`duplex` AS duplex,
create_time AS createTime,
@@ -244,7 +261,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="endTime != null">
and create_time &lt;= #{endTime}
</if>
</where>
ORDER BY create_time desc
</select>