|
|
|
@ -114,7 +114,8 @@ public class GradingLoadingVM : BaseViewModel,IDisposable |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
#endregion |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private bool _isCancel = false; |
|
|
|
|
public GradingLoadingVM(string diamnondType, string diamondCode) |
|
|
|
|
{ |
|
|
|
|
_diamondCode = diamondCode; |
|
|
|
@ -237,23 +238,34 @@ public class GradingLoadingVM : BaseViewModel,IDisposable |
|
|
|
|
await detectTask; |
|
|
|
|
if (detectTask.Status == TaskStatus.RanToCompletion) |
|
|
|
|
{ |
|
|
|
|
return ReslutGen(detectTask); |
|
|
|
|
return await ReslutGen(detectTask); |
|
|
|
|
} |
|
|
|
|
await progress; |
|
|
|
|
return ReslutGen(detectTask); |
|
|
|
|
return await ReslutGen(detectTask); |
|
|
|
|
} |
|
|
|
|
catch(Exception ex) |
|
|
|
|
{ |
|
|
|
|
return -100; |
|
|
|
|
Logger.Error(ex.Message); |
|
|
|
|
if (_isCancel) |
|
|
|
|
{ |
|
|
|
|
return -100; |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
return -10; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private int ReslutGen(Task<DiaResult> detectTask) |
|
|
|
|
private async Task<int> ReslutGen(Task<DiaResult> detectTask) |
|
|
|
|
{ |
|
|
|
|
|
|
|
|
|
CompleteProgressQuicklyAsync(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (detectTask.Result != null) |
|
|
|
|
{ |
|
|
|
|
switch (detectTask.Result.Status) |
|
|
|
|
{ |
|
|
|
|
case StatusCodes.AlgorithmFailed: |
|
|
|
@ -270,16 +282,22 @@ public class GradingLoadingVM : BaseViewModel,IDisposable |
|
|
|
|
return -1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
Progress = 100; |
|
|
|
|
Progress = (100.00); |
|
|
|
|
|
|
|
|
|
string strParam = JsonConvert.SerializeObject(detectTask.Result); |
|
|
|
|
AlgorithmResultEntity parameter = JsonConvert.DeserializeObject<AlgorithmResultEntity>(strParam); |
|
|
|
|
if (parameter == null) |
|
|
|
|
if (parameter == null && _isCancel == false) |
|
|
|
|
{ |
|
|
|
|
new MessageBox().Show(MultilingualHelper.getString("JsonParseFailure")); |
|
|
|
|
return -1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
parameter.DiamondCode = _diamondCode; |
|
|
|
|
parameter.Standard = getStandardName(); |
|
|
|
|
parameter.Shape = _diamnondType.Split(" ")[0]; |
|
|
|
|
parameter.CrownType = _diamnondType.Split(" ")[1]; |
|
|
|
|
parameter.PavType = _diamnondType.Split(" ")[2]; |
|
|
|
|
|
|
|
|
|
try |
|
|
|
|
{ |
|
|
|
|
string parameterJson = JsonConvert.SerializeObject(parameter); |
|
|
|
@ -300,7 +318,12 @@ public class GradingLoadingVM : BaseViewModel,IDisposable |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
Parameter = parameter; |
|
|
|
|
if (_isCancel == true) return -100; |
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return -10; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private async Task CompleteProgressSlowlyAsync() |
|
|
|
@ -356,6 +379,7 @@ public class GradingLoadingVM : BaseViewModel,IDisposable |
|
|
|
|
{ |
|
|
|
|
WindowManager.mainViewModel.Content = WindowManager.PreviousVM(); |
|
|
|
|
_scanner?.Cancel(); |
|
|
|
|
_isCancel = true; |
|
|
|
|
_progressCts.Cancel(); |
|
|
|
|
this.Dispose(); |
|
|
|
|
} |
|
|
|
@ -421,6 +445,19 @@ public class GradingLoadingVM : BaseViewModel,IDisposable |
|
|
|
|
_disposed = true; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private string getStandardName() |
|
|
|
|
{ |
|
|
|
|
string sql = $"select\r\nRULE_NAME AS NAME,\r\nRULE_EN_NAME AS EN_NAME\r\nfrom\r\nsetting\r\nleft join rule\r\non setting.SETTING_P = rule.RULE_ID\r\nwhere\r\nsetting.SETTING_ID = 'RuleId'\r\n"; |
|
|
|
|
DataTable dataTable = DataBaseHelper.ExecuteQuery(sql); |
|
|
|
|
if (dataTable == null || dataTable.Rows.Count == 0) |
|
|
|
|
{ |
|
|
|
|
return ""; |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
return dataTable.Rows[0][MultilingualHelper.getString("NameType")].ToString()??""; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
#region 图片播放处理 |
|
|
|
|
|
|
|
|
|
public void LoadImages(string folderPath) |
|
|
|
|