fix: UPF流量统计字节数据格式化显示不一致问题
This commit is contained in:
@@ -177,25 +177,6 @@ export function parseSizeFromKbs(sizeByte: number, timeInterval: number): any {
|
|||||||
return [(realBit / 1000 / 1000).toFixed(2), ' Mbits/sec'];
|
return [(realBit / 1000 / 1000).toFixed(2), ' Mbits/sec'];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 位数据转换单位
|
|
||||||
* @param bits 位Bit大小 64009540 = 512.08 MB
|
|
||||||
* @returns xx B / KB / MB / GB / TB / PB / EB / ZB / YB
|
|
||||||
*/
|
|
||||||
export function parseSizeFromBits(bits: number | string): string {
|
|
||||||
bits = Number(bits) || 0;
|
|
||||||
if (bits <= 0) return '0 B';
|
|
||||||
bits = bits * 8;
|
|
||||||
const units = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
|
|
||||||
const unitIndex = Math.floor(Math.log2(bits) / 10);
|
|
||||||
const value = bits / Math.pow(1000, unitIndex);
|
|
||||||
const unti = units[unitIndex];
|
|
||||||
if (unitIndex > 0) {
|
|
||||||
return `${value.toFixed(2)} ${unti}`;
|
|
||||||
}
|
|
||||||
return `${value} ${unti}`;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 字节数转换单位
|
* 字节数转换单位
|
||||||
* @param byte 字节Byte大小 64009540 = 512.08 MB
|
* @param byte 字节Byte大小 64009540 = 512.08 MB
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { parseDateToStr } from '@/utils/date-utils';
|
import { parseDateToStr } from '@/utils/date-utils';
|
||||||
import { parseSizeFromBits, parseSizeFromKbs } from '@/utils/parse-utils';
|
import { parseSizeFromByte, parseSizeFromKbs } from '@/utils/parse-utils';
|
||||||
import { ref } from 'vue';
|
import { ref } from 'vue';
|
||||||
|
|
||||||
type FDType = {
|
type FDType = {
|
||||||
@@ -81,9 +81,9 @@ export function upfTFParse(day: string, data: Record<string, number>) {
|
|||||||
let { up, down } = data;
|
let { up, down } = data;
|
||||||
upfTotalFlow.value[day] = {
|
upfTotalFlow.value[day] = {
|
||||||
up: up,
|
up: up,
|
||||||
upFrom: parseSizeFromBits(up),
|
upFrom: parseSizeFromByte(up),
|
||||||
down: down,
|
down: down,
|
||||||
downFrom: parseSizeFromBits(down),
|
downFrom: parseSizeFromByte(down),
|
||||||
requestFlag: false,
|
requestFlag: false,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { parseDateToStr } from '@/utils/date-utils';
|
import { parseDateToStr } from '@/utils/date-utils';
|
||||||
import { parseSizeFromBits, parseSizeFromKbs } from '@/utils/parse-utils';
|
import { parseSizeFromByte, parseSizeFromKbs } from '@/utils/parse-utils';
|
||||||
import { ref } from 'vue';
|
import { ref } from 'vue';
|
||||||
|
|
||||||
type FDType = {
|
type FDType = {
|
||||||
@@ -79,9 +79,9 @@ export function upfTFParse(day: string, data: Record<string, number>) {
|
|||||||
let { up, down } = data;
|
let { up, down } = data;
|
||||||
upfTotalFlow.value[day] = {
|
upfTotalFlow.value[day] = {
|
||||||
up: up,
|
up: up,
|
||||||
upFrom: parseSizeFromBits(up),
|
upFrom: parseSizeFromByte(up),
|
||||||
down: down,
|
down: down,
|
||||||
downFrom: parseSizeFromBits(down),
|
downFrom: parseSizeFromByte(down),
|
||||||
requestFlag: false,
|
requestFlag: false,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user