Skip to content

Commit 067f8df

Browse files
shuaijiedeepin-bot[bot]
authored andcommitted
fix: for disk Longsys 1.92T
Longsys 1.92T Log: Longsys 1.92T Bug: https://pms.uniontech.com/bug-view-268779.html
1 parent ba9dcbf commit 067f8df

1 file changed

Lines changed: 10 additions & 6 deletions

File tree

deepin-devicemanager/src/DeviceManager/DeviceStorage.cpp

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ static QString decimalkilos(quint64 value)
5959
const QString prefixes("KMGTPEZY");
6060
int i = 0;
6161
quint64 curValue = value;
62+
QString valueStr = QString();
6263
while ((i < prefixes.size()) && ((curValue > 1000) || (curValue % 1000 == 0)))
6364
{
6465
value = curValue;
@@ -69,12 +70,15 @@ static QString decimalkilos(quint64 value)
6970
if (i < 4) {
7071
quint64 diffValue = value - curValue * 1000;
7172
double calValue = diffValue / 1000.0 + 0.1;
72-
curValue += static_cast<quint64>(calValue);;
73-
}
74-
75-
QString valueStr = QString::number(curValue) + " ";
76-
if ((i > 0) && (i <= prefixes.size())) {
77-
valueStr += prefixes[i - 1];
73+
curValue += static_cast<quint64>(calValue);
74+
valueStr = QString::number(curValue) + " ";
75+
if (i > 0)
76+
valueStr += prefixes[i - 1];
77+
} else if (i <= prefixes.size()) { // 单位T以上处理
78+
if (value % 1000 >= 1)
79+
valueStr = QString::number(value) + " " + prefixes[i - 2]; //保留小数部分 如1920GB 10001GB
80+
else
81+
valueStr = QString::number(curValue) + " " + prefixes[i - 1]; //无小数部分入整 如1TB
7882
}
7983
valueStr += "B";
8084
return valueStr;

0 commit comments

Comments
 (0)