feat:等级名称与db关联

master
sunhonglei 7 months ago
parent 1879f3c5c2
commit d300bbd554
  1. 116
      ViewModel/Grading/GradingResultVM.cs
  2. 4
      Views/Grading/GradingResult.xaml

@ -61,7 +61,7 @@ public class GradingResultVM : BaseViewModel
private readonly static string digitsFormat = "f1";
private int totalCutGrade = 0;
private int totalSymGrade = 0;
private decimal totalSymGrade = 0;
private AlgorithmResultEntity algorithmResult;
private string username = "Lavanda";
private string machine = "71953";
@ -75,13 +75,13 @@ public class GradingResultVM : BaseViewModel
{
SaveAsCommand = new RelayCommand(SaveAs);
SaveFileCommand = new RelayCommand(SaveFile);
if (result != null)
{
algorithmResult = result as AlgorithmResultEntity?? new AlgorithmResultEntity();
InitView(algorithmResult);
machine = "71953";
}
InitCombobox();
DS = "NA";
AutoSave();
}
@ -91,6 +91,9 @@ public class GradingResultVM : BaseViewModel
{
// DS下拉列表初始化
InitDSlist();
string sql = $"SELECT GRADE_NAME AS NAME, GRADE_EN_S_NAME AS EN_NAME, GRADE_EN_NAME AS EN_ALL_NAME, GRADE_ORDER FROM GRADE WHERE SHAPE_ID = '{shapeId}' AND RULE_ID = '{ruleId}'; ";
GradeList = DataBaseHelper.ExecuteQuery(sql);
}
private void InitViewportData(AlgorithmResultEntity result)
{
@ -146,6 +149,7 @@ public class GradingResultVM : BaseViewModel
ruleId = getRuleId();
Standard = result.Standard;
shapeId = result.Shape;
InitCombobox();
Shape = GetName(result.Shape);
CrownType = result.CrownType;
PavType = result.PavType;
@ -164,6 +168,7 @@ public class GradingResultVM : BaseViewModel
DataInfo? dataInfo = methodInfo.Invoke(this, parameters) as DataInfo;
if (dataInfo != null)
{
dataInfo.GradeList = GradeList;
DtResults.Add(dataInfo);
}
}
@ -205,7 +210,6 @@ public class GradingResultVM : BaseViewModel
#region 定级计算
private List<CalGradeInfo> GetCalGradeInfos(string item)
{
// TODO DB要改
string sql = $"Select GRADE_ORDER as gradeOrder,STANDARD_MIN Min, STANDARD_MAX Max,IS_MAX_EXIST as isMaxExist,IS_MIN_EXIST as isMinExist from STANDARD where TEST_ITEM_ID = '{item}' AND SHAPE_ID = UPPER('{shapeId}') AND RULE_ID = '{ruleId}' ";
List<CalGradeInfo> calGrades = DataBaseHelper.ExecuteQuery<CalGradeInfo>(sql);
return calGrades;
@ -740,7 +744,7 @@ public class GradingResultVM : BaseViewModel
stream.WriteLine($"TOTAL DEPTH={info.TOTAL_DEPTH * 100}");
stream.WriteLine($"CULET={info.CULET*100}");
stream.WriteLine($"MACHINE={machine}");
stream.WriteLine($"CUTGRADE={GetGradeEnName(totalCutGrade)}");
stream.WriteLine($"CUTGRADE={GetGradeEnName(totalCutGrade.ToString())}");
stream.WriteLine($"LW RATIO={info.LW_RATIO}");
stream.WriteLine($"DS={DS}");
stream.WriteLine($"COC={info.COC * 100}");
@ -799,10 +803,9 @@ public class GradingResultVM : BaseViewModel
dataRow.CreateCell(col++).SetCellValue($"{FormatDouble_P(info.TOTAL_DEPTH)}%");
dataRow.CreateCell(col++).SetCellValue($"{FormatDouble_A(info.CROWN_ANGLE)}°");
dataRow.CreateCell(col++).SetCellValue($"{FormatDouble_A(info.PAV_ANGLE)}°");
// TODO 底尖直径
dataRow.CreateCell(col++).SetCellValue($"{FormatDouble_A(info.CULET)}(mm)");
dataRow.CreateCell(col++).SetCellValue($"{FormatDouble_A(info.CULET_SIZE)}(mm)");
dataRow.CreateCell(col++).SetCellValue($"{FormatDouble_P(info.GIRDLE)}%");
// TODO 腰部厚度英文
// 腰部厚度英文
dataRow.CreateCell(col++).SetCellValue($"{calGirdleName(info)}");
dataRow.CreateCell(col++).SetCellValue($"");
string sysmlevel = "";
@ -973,39 +976,49 @@ public class GradingResultVM : BaseViewModel
{
return Name.getNameById(id);
}
private string GetGradeName(int order)
{
// TODO DB没关联
Dictionary<int, string> dictionary = new();
dictionary.Add(0, "");
dictionary.Add(1,"极好");
dictionary.Add(2, "很好");
dictionary.Add(3, "好");
dictionary.Add(4, "一般");
dictionary.Add(5, "差");
return dictionary[order];
}
private int GetGradeOrder(string Grade)
{
// TODO DB没关联
Dictionary<string, int> dictionary = new();
dictionary.Add("极好", 1);
dictionary.Add("很好", 2);
dictionary.Add("好", 3);
dictionary.Add("一般", 4);
dictionary.Add("差", 5);
return dictionary[Grade];
}
private string GetGradeEnName(int order)
{
// TODO DB没关联
Dictionary<int, string> dictionary = new();
dictionary.Add(1, "EXCELLENT-Ideal");
dictionary.Add(2, "EXCELLENT");
dictionary.Add(3, "VERY GOOD");
dictionary.Add(4, "GOOD");
dictionary.Add(5, "FAIR-POOR");
return dictionary[order];
private string GetGradeName(decimal order)
{
string name = GradeList.AsEnumerable().Where(x => order.ToString().Equals(x["GRADE_ORDER"].ToString()))
.Select(x=>x[MultilingualHelper.getString("NameType")].ToString()).FirstOrDefault("");
// DB没关联
// Dictionary<int, string> dictionary = new();
// dictionary.Add(0, "");
// dictionary.Add(1,"极好");
// dictionary.Add(2, "很好");
// dictionary.Add(3, "好");
// dictionary.Add(4, "一般");
// dictionary.Add(5, "差");
// return dictionary[order];
return name;
}
private string GetGradeOrder(string Grade)
{
string order = GradeList.AsEnumerable().Where(x => Grade.Equals(x[MultilingualHelper.getString("NameType")].ToString()))
.Select(x=>x["GRADE_ORDER"].ToString()).FirstOrDefault("");
// DB没关联
// Dictionary<string, int> dictionary = new();
// dictionary.Add("极好", 1);
// dictionary.Add("很好", 2);
// dictionary.Add("好", 3);
// dictionary.Add("一般", 4);
// dictionary.Add("差", 5);
// return dictionary[Grade];
return order;
}
private string GetGradeEnName(string order)
{
string name = GradeList.AsEnumerable().Where(x => order.Equals(x["GRADE_ORDER"].ToString()))
.Select(x=>x["EN_ALL_NAME"].ToString()).FirstOrDefault("");
// DB没关联
// Dictionary<int, string> dictionary = new();
// dictionary.Add(1, "EXCELLENT-Ideal");
// dictionary.Add(2, "EXCELLENT");
// dictionary.Add(3, "VERY GOOD");
// dictionary.Add(4, "GOOD");
// dictionary.Add(5, "FAIR-POOR");
// return dictionary[order];
return name;
}
#endregion
@ -1015,11 +1028,11 @@ public class GradingResultVM : BaseViewModel
/// <param name="norm"></param>
public void ChangeSym(object norm)
{
int? order = this.DtResults.Select(x => x.SymLevel).Max();
decimal? order = this.DtResults.Select(x => x.SymLevel).Max();
if (order.HasValue)
{
totalSymGrade = order.Value;
SymLevelTotal = GetGradeName((int)order.Value);
SymLevelTotal = GetGradeName((decimal)order.Value);
}
else
{
@ -1340,9 +1353,9 @@ public class DataInfo
public string? Min { get; set; }
public string? Max { get; set; }
public string? CutLevel { get; set; }
private int? _symLevel;
private Int64? _symLevel;
//public int? SymLevel { get; set; }
public int? SymLevel
public Int64? SymLevel
{
get { return _symLevel; }
set
@ -1359,19 +1372,12 @@ public class DataInfo
public DataTable GradeList {
get
{
// TODO DB没关联
if (this._gradeList == null) {
_gradeList = new DataTable();
_gradeList.Columns.Add("Key");
_gradeList.Columns.Add("Value");
_gradeList.Rows.Add("极好", 1);
_gradeList.Rows.Add("很好", 2);
_gradeList.Rows.Add("好", 3);
_gradeList.Rows.Add("一般", 4);
_gradeList.Rows.Add("差", 5);
}
return _gradeList;
}
set
{
_gradeList = value;
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propertyName)

@ -676,8 +676,8 @@
<ComboBox ItemsSource="{Binding GradeList}"
IsEnabled="{Binding isEnabled}"
DisplayMemberPath="Key"
SelectedValuePath="Value"
DisplayMemberPath="{DynamicResource NameType}"
SelectedValuePath="GRADE_ORDER"
SelectedValue="{Binding SymLevel, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
SelectionChanged="ChangSymLevel"
FontSize="20"

Loading…
Cancel
Save