fix: version 20250327

master
Tongg 9 months ago
parent 3ab2445543
commit 7c485f2305
  1. 33
      Model/Extension/CommonExtension.cs
  2. 4
      ViewModel/Configuration/AlgorithmConfigVM.cs
  3. 4
      ViewModel/Grading/GradingLoadingVM.cs
  4. 2
      Views/UserControl/ViewportData/Helper/ViewportHelperPro.cs

@ -1,3 +1,6 @@
using System.Globalization;
using Newtonsoft.Json.Linq;
namespace SparkClient.Model.Extension;
public static class CommonExtension
@ -30,4 +33,34 @@ public static class CommonExtension
return Helper.Common.GenerateMd5Hash(str);
}
}
public static JToken ConvertJTokenValue(this string value)
{
// 处理布尔类型(不区分大小写)
if (string.Equals(value, "true", StringComparison.OrdinalIgnoreCase))
return new JValue(true);
if (string.Equals(value, "false", StringComparison.OrdinalIgnoreCase))
return new JValue(false);
// 处理数值类型
if (double.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out double numericValue))
{
// 判断是否为整数
if (numericValue == Math.Truncate(numericValue))
{
// 在int范围内转换为整型
if (numericValue >= int.MinValue && numericValue <= int.MaxValue)
return new JValue((int)numericValue);
// 超出int范围使用long类型
return new JValue((long)numericValue);
}
// 保留小数部分
return new JValue(numericValue);
}
// 默认处理为字符串
return new JValue(value);
}
}

@ -152,11 +152,11 @@ public class AlgorithmConfigVM : BaseViewModel
currentNode = currentNode[currentKey];
}
var finalKey = keys[keys.Length - 1];
currentNode[finalKey] = value;
currentNode[finalKey] = value.ConvertJTokenValue();
}
else
{
jsonAlgorithm[jsonKey] = value;
jsonAlgorithm[jsonKey] = value.ConvertJTokenValue();
}
}
}

@ -242,8 +242,8 @@ public class GradingLoadingVM : BaseViewModel,IDisposable
//算法配置参数,初始化算法配置数据并获取 AlgorithmConfigJson
var _algorithmConfigVM = new AlgorithmConfigVM();
_algorithmConfigVM.InitAlgorithmData(_diamnondType);
string algo_config = _algorithmConfigVM.AlgorithmConfigJson;
// string algo_config = _algorithmConfigVM.AlgorithmConfigJson;
string algo_config = _algorithmConfigVM.GetAlgorithmConfig(_diamnondType);
string imageFileBasePath = string.Empty;
//图片根目录
if (type == 1)

@ -2394,7 +2394,7 @@ public class ViewportHelperPro
// case "CROWN HEIGHT":
// case "PAV DEPTH":
v *= 100;
return hasUnit ? $"{Math.Round(v, 2, MidpointRounding.AwayFromZero).ToString("F1")}%" : Math.Round(v, 2, MidpointRounding.AwayFromZero).ToString("F1");
return hasUnit ? $"{Math.Truncate(v * 10) / 10}%" : $"{Math.Truncate(v * 10) / 10}";
default:
v = Math.Floor(v * 1000) / 1000;
return hasUnit ? $"{(v*100).ToString("F1")}%" : (v*100).ToString("F1");

Loading…
Cancel
Save