137 lines
4.1 KiB
C#
137 lines
4.1 KiB
C#
using Aitex.Core.Util;
|
|
using MECF.Framework.Common.OperationCenter;
|
|
using MECF.Framework.UI.Core.TrayCoating;
|
|
using Newtonsoft.Json;
|
|
using SicUI.Models;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Globalization;
|
|
using System.Windows.Data;
|
|
using System.Windows.Media;
|
|
|
|
namespace SicUI
|
|
{
|
|
public class TrayCoatingThicknessViewModel : SicUIViewModelBase
|
|
{
|
|
|
|
public TrayCoatingThicknessViewModel()
|
|
{
|
|
|
|
}
|
|
public CoatingData CoatingDataSelect { get; set; } = new CoatingData();
|
|
public List<CoatingData> CoatingData { get; set; } = new List<CoatingData>();
|
|
public string Tray_ID { get; set; }
|
|
private string _trayCoatingThicknessData;
|
|
|
|
[Subscription("TrayCoatingData")]
|
|
public string TrayCoatingThicknessData
|
|
{
|
|
get { return _trayCoatingThicknessData; }
|
|
set
|
|
{
|
|
if (_trayCoatingThicknessData != value && value != null)
|
|
{
|
|
CoatingData = JsonConvert.DeserializeObject<List<CoatingData>>(value);
|
|
}
|
|
|
|
_trayCoatingThicknessData = value;
|
|
}
|
|
}
|
|
|
|
public void UpCoatingData(string _current)
|
|
{
|
|
|
|
}
|
|
public void SET()//整体更新一行数据
|
|
{
|
|
string coatingData_Json = JsonConvert.SerializeObject(CoatingDataSelect);
|
|
InvokeClient.Instance.Service.DoOperation("CoatingManager.Set", coatingData_Json);
|
|
}
|
|
|
|
public void Clear(String num)//清除一行数据的当前增长厚度
|
|
{
|
|
InvokeClient.Instance.Service.DoOperation("CoatingManager.Clear", num);
|
|
}
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
/// 检测厚度是否大于最大值
|
|
/// </summary>
|
|
class ColorConverter_ForGrow : IMultiValueConverter
|
|
{
|
|
public object Convert(object[] value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
|
|
{
|
|
try
|
|
{
|
|
if (value[0] == null || value[1] == null)
|
|
{
|
|
return new SolidColorBrush(Colors.Black);
|
|
}
|
|
double _current;
|
|
if (!double.TryParse(value[0].ToString(), out _current))
|
|
return new SolidColorBrush(Colors.Red);
|
|
else if (_current < 0 || _current > 9999999)
|
|
return new SolidColorBrush(Colors.Red);
|
|
|
|
double _max;
|
|
if (!double.TryParse(value[1].ToString(), out _max))
|
|
return new SolidColorBrush(Colors.Black);
|
|
|
|
if (_current > _max)
|
|
{
|
|
return new SolidColorBrush(Colors.Red);
|
|
}
|
|
else
|
|
{
|
|
return new SolidColorBrush(Colors.Black);
|
|
}
|
|
}
|
|
catch (Exception)
|
|
{
|
|
return new SolidColorBrush(Colors.Red);
|
|
}
|
|
|
|
}
|
|
|
|
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 输入数值检测
|
|
/// </summary>
|
|
class ColorConverter_ForCheck : IValueConverter
|
|
{
|
|
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
|
{
|
|
try
|
|
{
|
|
if (value == null)
|
|
{
|
|
return new SolidColorBrush(Colors.Black);
|
|
}
|
|
double _setValue;
|
|
if (!double.TryParse(value.ToString(), out _setValue))
|
|
return new SolidColorBrush(Colors.Red);
|
|
else if (_setValue < 0 || _setValue > 9999999)
|
|
return new SolidColorBrush(Colors.Red);
|
|
else
|
|
return new SolidColorBrush(Colors.Black);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
return new SolidColorBrush(Colors.Red);
|
|
}
|
|
|
|
}
|
|
|
|
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
}
|