diff --git a/Language/zh_CN.xaml b/Language/zh_CN.xaml index e66592a..e9922cf 100644 --- a/Language/zh_CN.xaml +++ b/Language/zh_CN.xaml @@ -58,6 +58,7 @@ STANDARD_NAME SHAPE_NAME INSTITUTE_NAME + RULE_NAME 请输入上传钻石编码 确定 @@ -100,7 +101,6 @@ 选择 定级标准 保存路径不存在 - RULE_NAME 系统配置 diff --git a/SparkDB.db b/SparkDB.db index 32bd5d6..c0d48f8 100644 Binary files a/SparkDB.db and b/SparkDB.db differ diff --git a/ViewModel/Configuration/LevelConfigVM.cs b/ViewModel/Configuration/LevelConfigVM.cs index 8dde5ab..5d8b41b 100644 --- a/ViewModel/Configuration/LevelConfigVM.cs +++ b/ViewModel/Configuration/LevelConfigVM.cs @@ -80,7 +80,7 @@ public class LevelConfigVM : BaseViewModel private void InitData() { dataGrid.Columns.Clear(); - string shapeSql = @"SELECT * FROM SHAPE;"; + string shapeSql = @"SELECT * FROM SHAPE WHERE PARENT_ID IS NULL OR TRIM(PARENT_ID) = '' ;"; Shapes = DataBaseHelper.ExecuteQuery(shapeSql); if (Shapes != null) { @@ -89,17 +89,17 @@ public class LevelConfigVM : BaseViewModel } private string setInstitutes(string id) { - string insituteSql = @"SELECT * FROM INSTITUTE WHERE SHAPE_ID = " + id + ";"; + string insituteSql = @"SELECT * FROM RULE;"; Institutes = DataBaseHelper.ExecuteQuery(insituteSql); - return Institutes.AsEnumerable().FirstOrDefault()["INSTITUTE_ID"].ToString(); + return Institutes.AsEnumerable().FirstOrDefault()["RULE_ID"].ToString(); } private void setDataGrid(string shapeId, string instituteId) { - string gradeSql = $"SELECT * FROM GRADE WHERE SHAPE_ID = '{shapeId}' AND INSTITUTE_ID = '{instituteId}' ORDER BY GRADE_ORDER;"; + string gradeSql = $"SELECT * FROM GRADE WHERE SHAPE_ID = '{shapeId}' AND RULE_ID = '{instituteId}' ORDER BY GRADE_ORDER;"; DataTable columnInfos = DataBaseHelper.ExecuteQuery(gradeSql); - string standardSql = $"SELECT * FROM STANDARD WHERE SHAPE_ID = '{shapeId}' AND INSTITUTE_ID = '{instituteId}' ORDER BY SORT, GRADE_ID;"; + string standardSql = $"SELECT * FROM STANDARD WHERE SHAPE_ID = '{shapeId}' AND RULE_ID = '{instituteId}' ORDER BY SUBSTR(0 || SORT, - 2), GRADE_ORDER;"; DataTable rowInfos = DataBaseHelper.ExecuteQuery(standardSql); setStandardList(columnInfos, rowInfos); } @@ -150,7 +150,7 @@ public class LevelConfigVM : BaseViewModel foreach (DataRow columnInfo in gradeList.Rows) { // 每一行单元格内数据 - var row = standard.Where(s => s["GRADE_ID"].ToString() == columnInfo["GRADE_ID"].ToString()).FirstOrDefault(); + var row = standard.Where(s => s["GRADE_ORDER"].ToString() == columnInfo["GRADE_ORDER"].ToString()).FirstOrDefault(); string value = ""; if (rowInfo.Count == 0) { diff --git a/ViewModel/Grading/GradingResultVM.cs b/ViewModel/Grading/GradingResultVM.cs index 6d16a97..e889ba2 100644 --- a/ViewModel/Grading/GradingResultVM.cs +++ b/ViewModel/Grading/GradingResultVM.cs @@ -2,22 +2,18 @@ using System.ComponentModel; using System.Data; using System.IO; using System.Reflection; -using System.Windows; using System.Windows.Forms; using System.Windows.Input; -using HandyControl.Controls; using Newtonsoft.Json; using SparkClient.Model.Entity.ApiEntity; using SparkClient.Model.Helper; using SparkClient.Views.UserControl.ViewportData; -using Microsoft.Win32; using SaveFileDialog = Microsoft.Win32.SaveFileDialog; using NPOI.SS.UserModel; using NPOI.XSSF.UserModel; using SparkClient.Views.Dialog; using NPOI.HPSF; using Application = System.Windows.Application; -using System.Runtime.CompilerServices; namespace SparkClient.ViewModel.Grading; public class GradingResultVM : BaseViewModel @@ -59,6 +55,8 @@ public class GradingResultVM : BaseViewModel private AlgorithmResultEntity algorithmResult; private string username = "Lavanda"; private string machine = "71953"; + private string shapeId = string.Empty; + private string ruleId = string.Empty; /// /// 构造 /// @@ -75,7 +73,7 @@ public class GradingResultVM : BaseViewModel } InitCombobox(); DS = "NA"; - AutoSave(); + //AutoSave(); } #region 画面初始化相关操作 @@ -83,8 +81,7 @@ public class GradingResultVM : BaseViewModel { // DS下拉列表初始化 InitDSlist(); - // 等级下拉列表初始化 - InitGradeList(); + } private void InitDSlist() { @@ -95,17 +92,7 @@ public class GradingResultVM : BaseViewModel DSList.Rows.Add("pass", "pass"); DSList.Rows.Add("refer", "refer"); } - private void InitGradeList() - { - GradeList = new DataTable(); - GradeList.Columns.Add("Key"); - GradeList.Columns.Add("Value"); - GradeList.Rows.Add("极好", "Exc"); - GradeList.Rows.Add("很好", "VG"); - GradeList.Rows.Add("好", "G"); - GradeList.Rows.Add("一般", "F"); - GradeList.Rows.Add("差", "P"); - } + private void InitView(AlgorithmResultEntity result) { string data = JsonConvert.SerializeObject(result); @@ -113,7 +100,9 @@ public class GradingResultVM : BaseViewModel ViewportData.LoadData(); totalCutGrade = 0; totalSymGrade = 0; + ruleId = getRuleId(); Standard = result.Standard; + shapeId = result.Shape; Shape = GetName(result.Shape); CrownType = result.CrownType; PavType = result.PavType; @@ -138,6 +127,10 @@ public class GradingResultVM : BaseViewModel } CutLevelTotal = GetGradeName(totalCutGrade); } + private string getRuleId() + { + return "IGI2023"; + } #endregion /// /// 参数列表测试内容获取 @@ -170,7 +163,7 @@ public class GradingResultVM : BaseViewModel private List GetCalGradeInfos(string item) { // TODO DB要改 - string sql = $"Select GRADE_ID as gradeOrder,STANDARD_MIN Min, STANDARD_MAX Max,IS_MAX_EXIST as isMaxExist,IS_MIN_EXIST as isMinExist from STANDARD where STANDARD_ID = '{item}'"; + 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 calGrades = DataBaseHelper.ExecuteQuery(sql); return calGrades; } diff --git a/Views/Configuration/LevelConfigPage.xaml b/Views/Configuration/LevelConfigPage.xaml index 13a645e..5906d32 100644 --- a/Views/Configuration/LevelConfigPage.xaml +++ b/Views/Configuration/LevelConfigPage.xaml @@ -22,7 +22,7 @@ diff --git a/Views/Grading/GradingResult.xaml.cs b/Views/Grading/GradingResult.xaml.cs index 8009c22..b168ae9 100644 --- a/Views/Grading/GradingResult.xaml.cs +++ b/Views/Grading/GradingResult.xaml.cs @@ -122,6 +122,16 @@ public partial class GradingResult private void dataGrid_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { + detailPopup.IsOpen = false; + // 获取点击的目标元素 + var element = e.OriginalSource as FrameworkElement; + + // 检查目标元素是否是 ComboBox + if (element is Border) + { + e.Handled = true; + return; + } var dataGrid = sender as DataGrid; var selectedItem = dataGrid.SelectedItem;