master
sunhonglei 6 months ago
parent b6bfc97659
commit 0a10922420
  1. 1
      Language/en_US.xaml
  2. 1
      Language/zh_CN.xaml
  3. 2
      ViewModel/Configuration/AlgorithmConfigVM.cs
  4. 8
      ViewModel/Configuration/SettingBaseVM.cs
  5. 37
      ViewModel/Configuration/SettingsPages/ModelColorSetPageVM.cs
  6. 8
      ViewModel/Configuration/SettingsPages/SettingsVM.cs
  7. 85
      ViewModel/Grading/GradingResultVM.cs
  8. 4
      Views/Grading/GradingResult.xaml

@ -27,6 +27,7 @@
<sys:String x:Key="SHAPE_NAME">SHAPE_EN_NAME</sys:String> <sys:String x:Key="SHAPE_NAME">SHAPE_EN_NAME</sys:String>
<sys:String x:Key="INSTITUTE_NAME">INSTITUTE_EN_NAME</sys:String> <sys:String x:Key="INSTITUTE_NAME">INSTITUTE_EN_NAME</sys:String>
<sys:String x:Key="RULE_NAME">RULE_EN_NAME</sys:String> <sys:String x:Key="RULE_NAME">RULE_EN_NAME</sys:String>
<sys:String x:Key="NameType">EN_NAME</sys:String>
<!--检测结果 报表--> <!--检测结果 报表-->
<sys:String x:Key="Avg">Average</sys:String> <sys:String x:Key="Avg">Average</sys:String>

@ -10,6 +10,7 @@
<sys:String x:Key="ConfigFan">SETTING</sys:String> <sys:String x:Key="ConfigFan">SETTING</sys:String>
<sys:String x:Key="Help">帮助</sys:String> <sys:String x:Key="Help">帮助</sys:String>
<sys:String x:Key="HelpFan">HELP</sys:String> <sys:String x:Key="HelpFan">HELP</sys:String>
<sys:String x:Key="NameType">NAME</sys:String>
<sys:String x:Key="DiamondSelect">钻石选择</sys:String> <sys:String x:Key="DiamondSelect">钻石选择</sys:String>
<sys:String x:Key="DetectionResult">检测结果</sys:String> <sys:String x:Key="DetectionResult">检测结果</sys:String>

@ -120,7 +120,7 @@ public class AlgorithmConfigVM : BaseViewModel
} }
catch (Exception ex) catch (Exception ex)
{ {
Growl.Error(ex.Message); Growl.ErrorGlobal(ex.Message);
} }

@ -20,8 +20,10 @@ public class SettingBaseVM : BaseViewModel
public void Save(object param) public void Save(object param)
{ {
CustomSetContent.SaveUpdate(param); if(CustomSetContent.SaveUpdate(param)&&
ModelColorSetContent.SaveUpdate(param); ModelColorSetContent.SaveUpdate(param))
WindowManager.mainViewModel.Content = WindowManager.PreviousVM(); {
WindowManager.mainViewModel.Content = WindowManager.PreviousVM();
}
} }
} }

@ -48,23 +48,23 @@ public class ModelColorSetPageVM : BaseViewModel
private void InitSetting() private void InitSetting()
{ {
colors = new Dictionary<string, string>(); colors = new Dictionary<string, string>();
colors.Add("FACET_COLOR", "面部颜色"); colors.Add("FACET_COLOR", "<EFBFBD>沿<EFBFBD><EFBFBD>ɫ");
colors.Add("BORDER_COLOR", "边框颜色"); colors.Add("BORDER_COLOR", "<EFBFBD>߿<EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("SELECTED_FACET_COLOR", "选中面颜色"); colors.Add("SELECTED_FACET_COLOR", "ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("SELECTED_BORDER_COLOR", "选中面边框颜色"); colors.Add("SELECTED_BORDER_COLOR", "ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>߿<EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("SELECTED_TYPE_COLOR", "选中面同类面颜色"); colors.Add("SELECTED_TYPE_COLOR", "ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("SELECTED_FONT_COLOR", "选中面文字信息颜色"); colors.Add("SELECTED_FONT_COLOR", "ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>ɫ");
colors.Add("RULER_COLOR", "标识线条颜色"); colors.Add("RULER_COLOR", "<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("ARROW_COLOR", "正方向标记颜色"); colors.Add("ARROW_COLOR", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("BLEMISH_FACET_COLOR", "瑕疵面颜色"); colors.Add("BLEMISH_FACET_COLOR", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("TABLE_FACET_COLOR", "台面颜色"); colors.Add("TABLE_FACET_COLOR", "̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("UPPER_MAIN_FACET_COLOR", "风筝面颜色"); colors.Add("UPPER_MAIN_FACET_COLOR", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("STAR_FACET_COLOR", "星刻面颜色"); colors.Add("STAR_FACET_COLOR", "<EFBFBD>ǿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("UPPER_GIRDLE_FACET_COLOR", "上腰面颜色"); colors.Add("UPPER_GIRDLE_FACET_COLOR", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("GIRDLE_FACET_COLOR", "腰面颜色"); colors.Add("GIRDLE_FACET_COLOR", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("PAVILION_MAIN_FACET_COLOR", "亭部主刻面颜色"); colors.Add("PAVILION_MAIN_FACET_COLOR", "ͤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("LOWER_GIRDLE_FACET_COLOR", "下腰面颜色"); colors.Add("LOWER_GIRDLE_FACET_COLOR", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
colors.Add("CULET_COLOR", "底面颜色"); colors.Add("CULET_COLOR", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ");
foreach (var color in colors) foreach (var color in colors)
{ {
@ -72,7 +72,7 @@ public class ModelColorSetPageVM : BaseViewModel
} }
} }
public void SaveUpdate(object param) public bool SaveUpdate(object param)
{ {
DataBaseHelper.BeginTransaction(); DataBaseHelper.BeginTransaction();
foreach(var color in colors) foreach(var color in colors)
@ -80,6 +80,7 @@ public class ModelColorSetPageVM : BaseViewModel
updateDataBase(color.Key); updateDataBase(color.Key);
} }
DataBaseHelper.commit(); DataBaseHelper.commit();
return true;
} }
private void updateDataBase(string SETTING_ID) private void updateDataBase(string SETTING_ID)
{ {

@ -17,7 +17,6 @@ namespace SparkClient.ViewModel.Configuration.SettingsPages
{ {
public class SettingsVM : BaseViewModel public class SettingsVM : BaseViewModel
{ {
public ICommand SaveUpdateCommand { get; }
public ICommand SelectFileCommand { get; } public ICommand SelectFileCommand { get; }
public string _languageId; public string _languageId;
@ -48,7 +47,6 @@ namespace SparkClient.ViewModel.Configuration.SettingsPages
public DataTable Rules { get { return _rules; } set { _rules = value; OnPropertyChanged(nameof(Rules)); } } public DataTable Rules { get { return _rules; } set { _rules = value; OnPropertyChanged(nameof(Rules)); } }
public SettingsVM() public SettingsVM()
{ {
SaveUpdateCommand = new RelayCommand(SaveUpdate);
SelectFileCommand = new RelayCommand(SelectFile); SelectFileCommand = new RelayCommand(SelectFile);
InitSetting(); InitSetting();
} }
@ -91,16 +89,18 @@ namespace SparkClient.ViewModel.Configuration.SettingsPages
} }
//Rules.Rows.Add("IGI 2023", "IGI2023"); //Rules.Rows.Add("IGI 2023", "IGI2023");
} }
public void SaveUpdate(object param) public bool SaveUpdate(object param)
{ {
if (!Directory.Exists(FilePath)) if (!Directory.Exists(FilePath))
{ {
Growl.Error(MultilingualHelper.getString("SavePathIsnotExists")); Growl.Error(MultilingualHelper.getString("SavePathIsnotExists"));
return; return false;
} }
MultilingualHelper.setLanguage(_languageId); MultilingualHelper.setLanguage(_languageId);
updateDataBase(); updateDataBase();
Growl.InfoGlobal(MultilingualHelper.getString("Save_successful_message"));
return true;
} }
private void updateDataBase() private void updateDataBase()
{ {

@ -16,6 +16,9 @@ using NPOI.HPSF;
using Application = System.Windows.Application; using Application = System.Windows.Application;
using MessageBox = SparkClient.Views.Dialog.MessageBox; using MessageBox = SparkClient.Views.Dialog.MessageBox;
using System.Windows; using System.Windows;
using SharpDX;
using SparkClient.Views.UserControl.ViewportData.Entity;
using SparkClient.ViewModel.Configuration.SettingsPages;
namespace SparkClient.ViewModel.Grading; namespace SparkClient.ViewModel.Grading;
public class GradingResultVM : BaseViewModel public class GradingResultVM : BaseViewModel
@ -87,6 +90,42 @@ public class GradingResultVM : BaseViewModel
// DS下拉列表初始化 // DS下拉列表初始化
InitDSlist(); InitDSlist();
} }
private void InitViewportData(AlgorithmResultEntity result)
{
Dictionary<string,string> colorProperty = new Dictionary<string,string>();
colorProperty.Add("FACET_COLOR", "MainFacetColor");
colorProperty.Add("BORDER_COLOR", "MainBorderColor");
colorProperty.Add("SELECTED_FACET_COLOR", "SelFacetColor");
colorProperty.Add("SELECTED BORDER COLOR", "SelBorderColor");
colorProperty.Add("SELECTED_TYPE_COLOR", "SelTypeColor");
colorProperty.Add("SELECTED_FONT_COLOR", "SelFontColor");
colorProperty.Add("RULER_COLOR", "SelLineColor");
colorProperty.Add("ARROW_COLOR", "SelFrontColor");
colorProperty.Add("BLEMISH_FACET_COLOR", "ErrFacetColor");
colorProperty.Add("TABLE_FACET_COLOR", "TableFacetColor");
colorProperty.Add("UPPER_MAIN_FACET_COLOR", "UpperMainFacetColor");
colorProperty.Add("STAR_FACET_COLOR", "StarFacetColor");
colorProperty.Add("UPPER_GIRDLE_FACET_COLOR", "UpperGridleFacetColor");
colorProperty.Add("GIRDLE_FACET_COLOR", "GirdleFacetColor");
colorProperty.Add("PAVILION_MAIN_FACET_COLOR", "PavilionFacetColor");
colorProperty.Add("LOWER_GIRDLE_FACET_COLOR", "LowerGridleFacetColor");
colorProperty.Add("CULET_COLOR", "CuletFacetColor");
ColorConfigEntity colorConfigEntity = new ColorConfigEntity();
Type type = colorConfigEntity.GetType();
foreach (var property in colorProperty)
{
var value = Settings.SelectValueByName(property.Key);
PropertyInfo? p = type.GetProperty(property.Value);
if (p != null && !string.IsNullOrEmpty(value))
{
p.SetValue(colorConfigEntity, value);
}
}
string data = JsonConvert.SerializeObject(result);
ViewportData = new ViewportData(result.DiamondCode, data,colorConfigEntity);
ViewportData.LoadData();
}
private void InitDSlist() private void InitDSlist()
{ {
DSList = new DataTable(); DSList = new DataTable();
@ -99,9 +138,7 @@ public class GradingResultVM : BaseViewModel
private void InitView(AlgorithmResultEntity result) private void InitView(AlgorithmResultEntity result)
{ {
string data = JsonConvert.SerializeObject(result); InitViewportData(result);
ViewportData = new ViewportData(result.DiamondCode, data);
ViewportData.LoadData();
totalCutGrade = 0; totalCutGrade = 0;
totalSymGrade = 0; totalSymGrade = 0;
ruleId = getRuleId(); ruleId = getRuleId();
@ -919,28 +956,7 @@ public class GradingResultVM : BaseViewModel
#region 各类名称取得 #region 各类名称取得
private string GetName(string id) private string GetName(string id)
{ {
// TODO DB没关联 return Name.getNameById(id);
Dictionary<string, string> dictionary = new();
dictionary.Add("DIAMETER", "直径");
dictionary.Add("TOTAL_DEPTH", "全深比");
dictionary.Add("TABLE", "台宽比");
dictionary.Add("CROWN_ANGLE", "冠角");
dictionary.Add("CROWN_HEIGHT", "冠高比");
dictionary.Add("GIRDLE_BEZEL", "波峰(风筝面)");
dictionary.Add("GIRDLE_BONE", "波峰(上腰面)");
dictionary.Add("GIRDLE", "腰厚比");
dictionary.Add("PAV_ANGLE", "亭角");
dictionary.Add("PAV_DEPTH", "亭深比");
dictionary.Add("STAR", "星刻面长度比");
dictionary.Add("LOWER_HALVES_RATIO", "下腰比");
dictionary.Add("CULET", "底尖比");
dictionary.Add("TOC", "台面偏心比");
dictionary.Add("COC", "底尖偏心比");
dictionary.Add("TWIST", "扭曲度");
dictionary.Add("CULET_TO_TABLE", "底尖到台面偏心比");
dictionary.Add("round", "圆形");
dictionary.Add("", "");
return dictionary[id??""];
} }
private string GetGradeName(int order) private string GetGradeName(int order)
{ {
@ -1084,7 +1100,26 @@ public class DataInfo
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
} }
} }
public class Name
{
public string Id { get; set; }
public string name { get; set; }
public static string getNameById(string id)
{
string sql = $"SELECT NAME, EN_NAME FROM NAME WHERE ID = {id}";
DataTable data = DataBaseHelper.ExecuteQuery(sql);
string nameType = MultilingualHelper.getString("NameType");
if (data.Rows.Count>0)
{
return data.Rows[0][nameType].ToString();
}
else
{
return "";
}
}
}
public class RowDetail public class RowDetail
{ {
public string? itemName { get; set; } public string? itemName { get; set; }

@ -702,12 +702,8 @@
<!-- <RowDefinition Height="50"></RowDefinition> --> <!-- <RowDefinition Height="50"></RowDefinition> -->
<RowDefinition Height="*"></RowDefinition> <RowDefinition Height="*"></RowDefinition>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<userControl:Viewport3D ViewportData="{Binding ViewportData}"></userControl:Viewport3D> <userControl:Viewport3D ViewportData="{Binding ViewportData}"></userControl:Viewport3D>
</Grid> </Grid>
</Border> </Border>
</Grid> </Grid>
</Border> </Border>

Loading…
Cancel
Save