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. 6
      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="INSTITUTE_NAME">INSTITUTE_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>

@ -10,6 +10,7 @@
<sys:String x:Key="ConfigFan">SETTING</sys:String>
<sys:String x:Key="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="DetectionResult">检测结果</sys:String>

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

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

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

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

@ -16,6 +16,9 @@ using NPOI.HPSF;
using Application = System.Windows.Application;
using MessageBox = SparkClient.Views.Dialog.MessageBox;
using System.Windows;
using SharpDX;
using SparkClient.Views.UserControl.ViewportData.Entity;
using SparkClient.ViewModel.Configuration.SettingsPages;
namespace SparkClient.ViewModel.Grading;
public class GradingResultVM : BaseViewModel
@ -87,6 +90,42 @@ public class GradingResultVM : BaseViewModel
// DS下拉列表初始化
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()
{
DSList = new DataTable();
@ -99,9 +138,7 @@ public class GradingResultVM : BaseViewModel
private void InitView(AlgorithmResultEntity result)
{
string data = JsonConvert.SerializeObject(result);
ViewportData = new ViewportData(result.DiamondCode, data);
ViewportData.LoadData();
InitViewportData(result);
totalCutGrade = 0;
totalSymGrade = 0;
ruleId = getRuleId();
@ -919,28 +956,7 @@ public class GradingResultVM : BaseViewModel
#region 各类名称取得
private string GetName(string id)
{
// TODO DB没关联
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??""];
return Name.getNameById(id);
}
private string GetGradeName(int order)
{
@ -1084,7 +1100,26 @@ public class DataInfo
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 string? itemName { get; set; }

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

Loading…
Cancel
Save