@ -30,6 +30,7 @@ using NPOI.SS.Formula.Functions;
using System.Windows.Media ;
using Brush = System . Drawing . Brush ;
using Brushes = System . Drawing . Brushes ;
using SparkClient.Model.Attributes ;
namespace SparkClient.ViewModel.Grading ;
/// <summary>
@ -204,6 +205,7 @@ public class GradingResultVM : BaseViewModel
}
#region 画面初始化相关操作
[Log]
private void InitCombobox ( )
{
// DS下拉列表初始化
@ -212,6 +214,7 @@ public class GradingResultVM : BaseViewModel
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 LIKE '{ruleId}%' GROUP BY GRADE_NAME,GRADE_EN_NAME,GRADE_ORDER ORDER BY GRADE_ORDER; " ;
GradeList = DataBaseHelper . ExecuteQuery ( sql ) ;
}
[Log]
private void InitViewportData ( AlgorithmResultEntity result )
{
Dictionary < string , string > colorProperty = new Dictionary < string , string > ( ) ;
@ -248,6 +251,7 @@ public class GradingResultVM : BaseViewModel
ViewportData = new ViewportData ( result . DiamondCode , data , colorConfigEntity ) ;
ViewportData . LoadData ( ) ;
}
[Log]
private void InitDSlist ( )
{
DSList = new DataTable ( ) ;
@ -258,6 +262,7 @@ public class GradingResultVM : BaseViewModel
DSList . Rows . Add ( "refer" , "refer" ) ;
}
[Log]
private void InitView ( AlgorithmResultEntity result )
{
try
@ -300,6 +305,7 @@ public class GradingResultVM : BaseViewModel
Logger . Error ( $"全局异常捕获:{ex.Message}" , ex ) ;
}
}
[Log]
private string getRuleId ( )
{
return Settings . SelectValueById ( "RuleId" ) ;
@ -333,6 +339,7 @@ public class GradingResultVM : BaseViewModel
return list ;
}
#region 定级计算
[Log]
private string getActualRuleId ( )
{
string ruleIdForSelect = "" ;
@ -370,6 +377,7 @@ public class GradingResultVM : BaseViewModel
List < CalGradeInfo > calGrades = DataBaseHelper . ExecuteQuery < CalGradeInfo > ( sql ) ;
return calGrades ;
}
[Log]
private int calGrade ( string item , double value )
{
int order = 1 ;
@ -428,6 +436,7 @@ public class GradingResultVM : BaseViewModel
}
return order ;
}
[Log]
private string calGrade_TOTAL_DEPTH ( double avg )
{
string result = "" ;
@ -435,6 +444,7 @@ public class GradingResultVM : BaseViewModel
result = GetGradeName ( order ) ;
return result ;
}
[Log]
private string calGrade_TABLE ( double min , double max )
{
string result = "" ;
@ -444,6 +454,7 @@ public class GradingResultVM : BaseViewModel
result = GetGradeName ( order ) ;
return result ;
}
[Log]
private string calGrade_CROWN_ANGLE ( double min , double max )
{
string result = "" ;
@ -453,6 +464,7 @@ public class GradingResultVM : BaseViewModel
result = GetGradeName ( order ) ;
return result ;
}
[Log]
private string calGrade_CROWN_HEIGHT ( double min , double max )
{
string result = "" ;
@ -462,6 +474,7 @@ public class GradingResultVM : BaseViewModel
result = GetGradeName ( order ) ;
return result ;
}
[Log]
private string calGrade_GIRDLE ( double min , double max )
{
string result = "" ;
@ -471,6 +484,7 @@ public class GradingResultVM : BaseViewModel
result = GetGradeName ( order ) ;
return result ;
}
[Log]
private string calGrade_PAV_ANGLE ( double min , double max )
{
string result = "" ;
@ -480,6 +494,7 @@ public class GradingResultVM : BaseViewModel
result = GetGradeName ( order ) ;
return result ;
}
[Log]
private string calGrade_PAV_DEPTH ( double min , double max )
{
string result = "" ;
@ -489,6 +504,7 @@ public class GradingResultVM : BaseViewModel
result = GetGradeName ( order ) ;
return result ;
}
[Log]
private string calGrade_CULET ( double avg )
{
string result = "" ;
@ -496,6 +512,7 @@ public class GradingResultVM : BaseViewModel
result = GetGradeName ( order ) ;
return result ;
}
[Log]
private string calGrade_STAR ( double min , double max )
{
string result = "" ;
@ -505,6 +522,7 @@ public class GradingResultVM : BaseViewModel
result = GetGradeName ( order ) ;
return result ;
}
[Log]
private string calGrade_LOWER_HALVES_RATIO ( double min , double max )
{
string result = "" ;
@ -516,6 +534,7 @@ public class GradingResultVM : BaseViewModel
}
# endregion
#region 参数列表行编辑
[Log]
private string calDev ( string max , string min )
{
decimal Max = 0 ;
@ -525,6 +544,7 @@ public class GradingResultVM : BaseViewModel
return ( Max - Min ) . ToString ( ) ;
}
[Log]
private DataInfo getDIAMETER ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -537,6 +557,7 @@ public class GradingResultVM : BaseViewModel
info . Dev = calDev ( info . Max , info . Min ) ;
return info ;
}
[Log]
private DataInfo getTOTAL_DEPTH ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -548,6 +569,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getTABLE ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -561,6 +583,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getCROWN_ANGLE ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -575,6 +598,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getCROWN_HEIGHT ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -589,6 +613,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getGIRDLE_BEZEL ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -602,6 +627,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getGIRDLE_BONE ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -614,6 +640,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getGIRDLE ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -628,6 +655,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getPAV_ANGLE ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -642,6 +670,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getPAV_DEPTH ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -656,6 +685,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getSTAR ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -669,6 +699,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getLOWER_HALVES_RATIO ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -682,6 +713,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getCULET ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -693,6 +725,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getTOC ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -702,6 +735,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getCOC ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -711,6 +745,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getTWIST ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -724,6 +759,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
[Log]
private DataInfo getCULET_TO_TABLE ( AlgorithmResultEntity result )
{
DataInfo info = new DataInfo ( ) ;
@ -733,6 +769,7 @@ public class GradingResultVM : BaseViewModel
return info ;
}
# endregion
[Log]
private double CalWight ( AlgorithmResultEntity result )
{
// var M1 = result.measurements.M1;
@ -745,10 +782,12 @@ public class GradingResultVM : BaseViewModel
return wight ;
}
[Log]
private double Square ( double m )
{
return m * m ;
}
[Log]
private void AutoSave ( )
{
if ( string . IsNullOrEmpty ( DiamondCode ) )
@ -775,6 +814,7 @@ public class GradingResultVM : BaseViewModel
}
}
[Log]
public void SaveFile ( object param )
{
if ( string . IsNullOrEmpty ( DiamondCode ) )
@ -803,6 +843,7 @@ public class GradingResultVM : BaseViewModel
SaveTestResult ( SaveStatus . Save ) ;
isSaved = true ;
}
[Log]
private string getFilePath ( )
{
string defultFilePath = "" ;
@ -828,6 +869,7 @@ public class GradingResultVM : BaseViewModel
}
}
#region 文件导出相关
[Log]
public void SaveAs ( object param )
{
try
@ -882,6 +924,7 @@ public class GradingResultVM : BaseViewModel
Logger . Error ( $"全局异常捕获:{ex.Message}" , ex ) ;
}
}
[Log]
private async void ExportFile ( string filePath )
{
try {
@ -947,6 +990,7 @@ public class GradingResultVM : BaseViewModel
Logger . Error ( $"全局异常捕获:{ex.Message}" , ex ) ;
}
}
[Log]
private bool FileSaveEnabled ( string Key )
{
bool result = false ;
@ -958,6 +1002,7 @@ public class GradingResultVM : BaseViewModel
}
return result ;
}
[Log]
private int saveFileCount ( )
{
int result = 0 ;
@ -973,6 +1018,7 @@ public class GradingResultVM : BaseViewModel
/// txt文件导出
/// </summary>
/// <param name="filePath"></param>
[Log]
private void TxtFile ( string filePath )
{
try
@ -1041,6 +1087,7 @@ public class GradingResultVM : BaseViewModel
/// excel文件导出
/// </summary>
/// <param name="filePath"></param>
[Log]
private void ExcelFile ( string filePath )
{
try
@ -1106,6 +1153,7 @@ public class GradingResultVM : BaseViewModel
}
}
[Log]
private string calGirdleName ( Measurements info )
{
string girdleName = "" ;
@ -1118,6 +1166,7 @@ public class GradingResultVM : BaseViewModel
girdleName + = calGirdleName ( max , false ) ;
return girdleName ;
}
[Log]
private string calGirdleName ( decimal cValue , bool isMin )
{
string girdleName = "" ;
@ -1215,6 +1264,7 @@ public class GradingResultVM : BaseViewModel
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
[Log]
private string FormatDouble_D ( double value )
{
return value . ToString ( "f2" ) ;
@ -1224,10 +1274,12 @@ public class GradingResultVM : BaseViewModel
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
[Log]
private string FormatDouble_P ( double value )
{
return ( Math . Floor ( value * 1 0 0 0 ) / 1 0 ) . ToString ( digitsFormat ) ;
}
[Log]
private string FormatDouble_P2 ( double value )
{
return ( Math . Floor ( value * 1 0 0 0 0 ) / 1 0 0 ) . ToString ( "f2" ) ;
@ -1237,6 +1289,7 @@ public class GradingResultVM : BaseViewModel
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
[Log]
private string FormatDouble_Avg ( double value , Accuracy accuracy )
{
string result = "" ;
@ -1257,6 +1310,7 @@ public class GradingResultVM : BaseViewModel
}
return result ;
}
[Log]
private static double RoundFiveDownSixUp ( double value )
{
// 提取整数部分
@ -1279,20 +1333,24 @@ public class GradingResultVM : BaseViewModel
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
[Log]
private string FormatDouble_A ( double value )
{
return ( Math . Floor ( value * 1 0 ) / 1 0 ) . ToString ( digitsFormat ) ;
}
[Log]
private async Task DatFile ( string filePath )
{
//File.Create(filePath + ".dat").Close();
await ViewportData . SaveAsToVedioFile ( filePath + ".mp4" ) ;
}
[Log]
private async Task STLFile ( string filePath )
{
//File.Create(filePath + ".stl").Close();
await ViewportData . SaveAsToStlFile ( filePath + ".stl" ) ;
}
[Log]
private void DataConver ( string filePath )
{
//File.Create(filePath + ".stl").Close();
@ -1301,10 +1359,12 @@ public class GradingResultVM : BaseViewModel
# endregion
#region 各类名称取得
[Log]
private string GetName ( string id )
{
return Name . getNameById ( id ) . Trim ( ) ;
}
[Log]
private string GetGradeName ( decimal order )
{
@ -1321,6 +1381,7 @@ public class GradingResultVM : BaseViewModel
// return dictionary[order];
return name ;
}
[Log]
private string GetGradeOrder ( string Grade )
{
string order = GradeList . AsEnumerable ( ) . Where ( x = > Grade . Equals ( x [ MultilingualHelper . getString ( "NameType" ) ] . ToString ( ) ) )
@ -1335,6 +1396,7 @@ public class GradingResultVM : BaseViewModel
// return dictionary[Grade];
return order ;
}
[Log]
private string GetGradeEnName ( string order )
{
string name = GradeList . AsEnumerable ( ) . Where ( x = > order . Equals ( x [ "GRADE_ORDER" ] . ToString ( ) ) )
@ -1355,6 +1417,7 @@ public class GradingResultVM : BaseViewModel
/// 修改对称性等级
/// </summary>
/// <param name="norm"></param>
[Log]
public void ChangeSym ( object norm )
{
decimal? order = this . DtResults . Select ( x = > x . SymLevel ) . Max ( ) ;
@ -1369,6 +1432,7 @@ public class GradingResultVM : BaseViewModel
}
}
[Log]
public RowDetail getSelectData ( string testItemId )
{
RowDetail row = new RowDetail ( ) ;
@ -1385,6 +1449,7 @@ public class GradingResultVM : BaseViewModel
this . SelRowDataDetail = row ;
return row ;
}
[Log]
private void setDetailItems ( RowDetail row , string TestItemId )
{
if ( "DIAMETER" . Equals ( TestItemId ) )
@ -1436,6 +1501,7 @@ public class GradingResultVM : BaseViewModel
setTWIST_DETAIL ( row ) ;
}
}
[Log]
private void calIndex ( RowDetail row )
{
// 最大值的Index计算
@ -1505,6 +1571,7 @@ public class GradingResultVM : BaseViewModel
row . MinIndex = 7 ;
}
}
[Log]
private void setDIAMETER_DETAIL ( RowDetail row )
{
DiameterDetail diameterDetail = algorithmResult . measurements . DIAMETER_DETAIL ;
@ -1518,6 +1585,7 @@ public class GradingResultVM : BaseViewModel
row . item8 = FormatDouble_D ( diameterDetail . DIAMETER_8 ) ;
calIndex ( row ) ;
}
[Log]
private void setTABLE_DETAIL ( RowDetail row )
{
TableDetail diameterDetail = algorithmResult . measurements . TABLE_DETAIL ;
@ -1527,6 +1595,7 @@ public class GradingResultVM : BaseViewModel
row . item4 = FormatDouble_P ( diameterDetail . TABLE_4 ) ;
calIndex ( row ) ;
}
[Log]
private void setCROWN_HEIGHT_DETAIL ( RowDetail row )
{
CrownHeightDetail crownHeightDetail = algorithmResult . measurements . CROWN_HEIGHT_DETAIL ;
@ -1540,6 +1609,7 @@ public class GradingResultVM : BaseViewModel
row . item8 = FormatDouble_P ( crownHeightDetail . CROWN_HEIGHT_8 ) ;
calIndex ( row ) ;
}
[Log]
private void setCROWN_ANGLE_DETAIL ( RowDetail row )
{
CrownAngleDetail crownAngleDetail = algorithmResult . measurements . CROWN_ANGLE_DETAIL ;
@ -1553,6 +1623,7 @@ public class GradingResultVM : BaseViewModel
row . item8 = FormatDouble_A ( crownAngleDetail . CROWN_ANGLE_8 ) ;
calIndex ( row ) ;
}
[Log]
private void setPAV_DEPTH_DETAIL ( RowDetail row )
{
PavDepthDetail pavDepthDetail = algorithmResult . measurements . PAV_DEPTH_DETAIL ;
@ -1566,6 +1637,7 @@ public class GradingResultVM : BaseViewModel
row . item8 = FormatDouble_P ( pavDepthDetail . PAV_DEPTH_8 ) ;
calIndex ( row ) ;
}
[Log]
private void setPAV_ANGLE_DETAIL ( RowDetail row )
{
PavAngleDetail pavAngleDetail = algorithmResult . measurements . PAV_ANGLE_DETAIL ;
@ -1579,6 +1651,7 @@ public class GradingResultVM : BaseViewModel
row . item8 = FormatDouble_A ( pavAngleDetail . PAV_ANGLE_8 ) ;
calIndex ( row ) ;
}
[Log]
private void setGIRDLE_BEZEL_DETAIL ( RowDetail row )
{
GirdleBezelDetail girdleBezelDetail = algorithmResult . measurements . GIRDLE_BEZEL_DETAIL ;
@ -1592,6 +1665,7 @@ public class GradingResultVM : BaseViewModel
row . item8 = FormatDouble_P ( girdleBezelDetail . GIRDLE_BEZEL_8 ) ;
calIndex ( row ) ;
}
[Log]
private void setGIRDLE_BONE_DETAIL ( RowDetail row )
{
GirdleBoneDetail girdleBoneDetail = algorithmResult . measurements . GIRDLE_BONE_DETAIL ;
@ -1606,6 +1680,7 @@ public class GradingResultVM : BaseViewModel
calIndex ( row ) ;
}
[Log]
private void setGIRDLE_VALLEY_DETAIL ( RowDetail row )
{
GirdleValleyDetail girdleValleyDetail = algorithmResult . measurements . GIRDLE_VALLEY_DETAIL ;
@ -1637,6 +1712,7 @@ public class GradingResultVM : BaseViewModel
row . item8 = FormatDouble_P2 ( doubles [ 1 5 ] ) ;
calIndex ( row ) ;
}
[Log]
private void setSTAR_DETAIL ( RowDetail row )
{
StarDetail starDetail = algorithmResult . measurements . STAR_DETAIL ;
@ -1650,6 +1726,7 @@ public class GradingResultVM : BaseViewModel
row . item8 = FormatDouble_P ( starDetail . STAR_8 ) ;
calIndex ( row ) ;
}
[Log]
private void setLOWER_HALVES_RATIO_DETAIL ( RowDetail row )
{
LowerHalvesRatioDetail lowerHalvesRatioDetail = algorithmResult . measurements . LOWER_HALVES_RATIO_DETAIL ;
@ -1663,6 +1740,7 @@ public class GradingResultVM : BaseViewModel
row . item8 = FormatDouble_P ( lowerHalvesRatioDetail . LOWER_HALVES_RATIO_8 ) ;
calIndex ( row ) ;
}
[Log]
private void setTWIST_DETAIL ( RowDetail row )
{
TwistDetail twistDetail = algorithmResult . measurements . TWIST_DETAIL ;
@ -1678,6 +1756,7 @@ public class GradingResultVM : BaseViewModel
}
#region 履历保存
[Log]
private void SaveTestResult ( SaveStatus saveStatus )
{
string ALGORITHM_RESULT = JsonConvert . SerializeObject ( algorithmResult ) ;
@ -1692,6 +1771,7 @@ public class GradingResultVM : BaseViewModel
# endregion
// 执行热敏打印的方法
[Log]
private void ExecuteThermalPrint ( object parameter )
{
try
@ -1797,12 +1877,14 @@ public class GradingResultVM : BaseViewModel
this . Size = new System . Drawing . Size ( 8 0 0 , 6 0 0 ) ;
}
[Log]
private void ConfirmButton_Click ( object sender , EventArgs e )
{
this . DialogResult = DialogResult . OK ;
this . Close ( ) ;
}
[Log]
private void SystemPrintButton_Click ( object sender , EventArgs e )
{
// 创建一个打印对话框
@ -1819,6 +1901,7 @@ public class GradingResultVM : BaseViewModel
}
}
[Log]
private void PreparePrintData ( object sender , PrintPageEventArgs e )
{
var result = algorithmResult . measurements ;
@ -1964,6 +2047,7 @@ public class GradingResultVM : BaseViewModel
}
[Log]
private void PrintPageHandler ( object sender , PrintPageEventArgs e )
{
var result = algorithmResult . measurements ;
@ -2074,6 +2158,7 @@ public class GradingResultVM : BaseViewModel
}
[Log]
private void InitializeSerialPort ( )
{
try
@ -2161,6 +2246,7 @@ public class Name
public string Id { get ; set ; }
public string name { get ; set ; }
[Log]
public static string getNameById ( string id )
{
string sql = $"SELECT NAME, EN_NAME FROM NAME WHERE ID = '{id}'" ;