using com.hnshituo.core.webapp.vo;
using Common;
using iCore.Rtdb.RtdbTable;
using Infragistics.Win.UltraWinEditors;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace BeltScaleSystem
{
public partial class ucBeltInstrumentInfo_Real : UserControl
{
public ucBeltInstrumentInfo_Real()
{
InitializeComponent();
}
///
/// 计量点信息
///
public string sPointNo = "", sPointName = "", collectionCodeA="", collectionCodeB="";
MemoryTableDataSocket_Belt MemoClass = new MemoryTableDataSocket_Belt();
private ComBaseInfoService comBaseInfoService = new ComBaseInfoService(); //基础数服务
private void ucBeltInstrumentInfo_Load(object sender, EventArgs e)
{
RESTfulResult> rrComGradeName = comBaseInfoService.doQueryBaseList(new ComBaseInfo { validFlag = "1", pBaseCode = "001051", baseName = IpAddress.getIp });
if (rrComGradeName.Succeed && rrComGradeName.Data != null && rrComGradeName.Data.Count > 0)
{
this.PntNameLabel.Text = sPointName;
this.timer1.Start();
}
else
{
this.Visible = false;
MessageBox.Show("该Ip:" + IpAddress.getIp + "无此页面权限!");
return;
}
}
private delegate void UpdateUIEventHander(object sender, UpdateUIArgs args); //自定义事件用来从线程中更新控件的值
///
/// 更新界面的UI
///
///
///
private void UpdateUI_Method(object sender, UpdateUIArgs args)
{
if (sender is UltraTextEditor)
{
if (args.textValue == "" || args.textValue == null)
{
((UltraTextEditor)sender).Text = "0 " + args.unitValue;
}
else
{
((UltraTextEditor)sender).Text = args.textValue + " " + args.unitValue;
}
}
else if (sender is Button)
{
if (args.textValue == "red")
{
((Button)sender).BackColor = Color.Red;
((Button)sender).ForeColor = Color.White;
}
else if (args.textValue == "green")
{
((Button)sender).BackColor = Color.White;
((Button)sender).ForeColor = Color.Black;
}
else
{
((Label)sender).Text = args.textValue;
}
}
}
public class UpdateUIArgs : EventArgs
{
public string textValue { get; private set; }
public string unitValue { get; private set; }
public UpdateUIArgs(string textValue, string unit)
{
this.textValue = textValue;
this.unitValue = unit;
}
}
private void timer1_Tick(object sender, EventArgs e)
{
List ll = MemoClass.getWarnInfo_Belt(collectionCodeA);
// List l2 = MemoClass.getWarnInfo_Belt(collectionCodeB);
if (ll != null)
{
foreach (LiveData lv in ll)
{
string value = lv.Value == null ? "" : lv.Value.ToString().Trim();
switch (lv.Tagname.Replace(collectionCodeA, ""))
{
case "Flow"://瞬时流量
setTedValue("realtime_amount_Ted", Math.Round(Convert.ToDouble(lv.Value), 2).ToString());//实时量
break;
//case "Total"://总累计量
// double total = Math.Round(Convert.ToDouble(lv.Value), 2);
// setTedValue("cumulative_weight_Ted", (Math.Floor(total / 100) * 100).ToString());
// break;
//case "BeltSpeed"://皮带速度
// setTedValue("belt_speed_Ted", Math.Round(Convert.ToDouble(lv.Value), 2).ToString());
// break;
//case "FieldTemp": //现场温度
// setTedValue("temperature_Ted", Math.Round(Convert.ToDouble(lv.Value), 2).ToString());
// break;
}
}
}
//if (l2 != null)
//{
// foreach (LiveData lv in l2)
// {
// string value = lv.Value == null ? "" : lv.Value.ToString().Trim();
// switch (lv.Tagname.Replace(collectionCodeB, ""))
// {
// case "Flow"://瞬时流量
// setTedValue("realtime_amount_Ted_1", Math.Round(Convert.ToDouble(lv.Value), 2).ToString());//实时量
// break;
// case "Total"://总累计量
// double total = Math.Round(Convert.ToDouble(lv.Value), 2);
// setTedValue("cumulative_weight_Ted_1", (Math.Floor(total / 100) * 100).ToString());
// break;
// case "BeltSpeed"://皮带速度
// setTedValue("belt_speed_Ted_1", Math.Round(Convert.ToDouble(lv.Value), 2).ToString());
// break;
// case "FieldTemp": //现场温度
// setTedValue("temperature_Ted_1", Math.Round(Convert.ToDouble(lv.Value), 2).ToString());
// break;
// }
// }
//}
}
public void Close() {
timer1.Stop();
}
private void setTedValue(string Ted, string values)
{
try
{
switch (Ted)
{
//A磅
case "instrument_weight_Ted"://仪表重量
// this.instrument_weight_Ted.Invoke(new UpdateUIEventHander(UpdateUI_Method), instrument_weight_Ted, new UpdateUIArgs(values, "t"));
break;
case "cumulative_weight_Ted"://当前累计量
// this.cumulative_weight_Ted.Invoke(new UpdateUIEventHander(UpdateUI_Method), cumulative_weight_Ted, new UpdateUIArgs(values, "t"));
break;
case "realtime_amount_Ted"://实时量
this.realtime_amount_Ted.Invoke(new UpdateUIEventHander(UpdateUI_Method), realtime_amount_Ted, new UpdateUIArgs(values, "t/h"));
break;
case "belt_speed_Ted"://皮带速度
// this.belt_speed_Ted.Invoke(new UpdateUIEventHander(UpdateUI_Method), belt_speed_Ted, new UpdateUIArgs(values, "m/s"));
break;
case "temperature_Ted"://温度
// this.temperature_Ted.Invoke(new UpdateUIEventHander(UpdateUI_Method), temperature_Ted, new UpdateUIArgs(values, "℃"));
break;
case "parameter_Ted"://物料参数
// this.parameter_Ted.Invoke(new UpdateUIEventHander(UpdateUI_Method), parameter_Ted, new UpdateUIArgs(values, ""));
break;
//B磅
case "instrument_weight_Ted_1"://仪表重量
// this.instrument_weight_Ted_1.Invoke(new UpdateUIEventHander(UpdateUI_Method), instrument_weight_Ted_1, new UpdateUIArgs(values, "t"));
break;
case "cumulative_weight_Ted_1"://当前累计量
// this.cumulative_weight_Ted_1.Invoke(new UpdateUIEventHander(UpdateUI_Method), cumulative_weight_Ted_1, new UpdateUIArgs(values, "t"));
break;
case "realtime_amount_Ted_1"://实时量
// this.realtime_amount_Ted_1.Invoke(new UpdateUIEventHander(UpdateUI_Method), realtime_amount_Ted_1, new UpdateUIArgs(values, "t/h"));
break;
case "belt_speed_Ted_1"://皮带速度
// this.belt_speed_Ted_1.Invoke(new UpdateUIEventHander(UpdateUI_Method), belt_speed_Ted_1, new UpdateUIArgs(values, "m/s"));
break;
case "temperature_Ted_1"://温度
// this.temperature_Ted_1.Invoke(new UpdateUIEventHander(UpdateUI_Method), temperature_Ted_1, new UpdateUIArgs(values, "℃"));
break;
case "parameter_Ted_1"://物料参数
// this.parameter_Ted_1.Invoke(new UpdateUIEventHander(UpdateUI_Method), parameter_Ted_1, new UpdateUIArgs(values, ""));
break;
default:
break;
}
}
catch (Exception ex)
{
throw ex;
}
}
//更新UltraTextEditor、Button控件值
private double getTedValue(string Ted, string values)
{
try
{
switch (Ted)
{
//A磅
case "instrument_weight_Ted"://仪表重量
// return Convert.ToDouble(instrument_weight_Ted.Text.Replace("t", "").Trim());
case "cumulative_weight_Ted"://当前累计量
// return Convert.ToDouble(cumulative_weight_Ted.Text.Replace("t", "").Trim());
case "realtime_amount_Ted"://实时量
return Convert.ToDouble(realtime_amount_Ted.Text.Replace("t/h", "").Trim());
case "belt_speed_Ted"://皮带速度
// return Convert.ToDouble(belt_speed_Ted.Text.Replace("m/s", "").Trim());
case "temperature_Ted"://温度
// return Convert.ToDouble(temperature_Ted.Text.Replace("℃", "").Trim());
case "parameter_Ted"://物料参数
// return Convert.ToDouble(parameter_Ted.Text);
//B磅
case "instrument_weight_Ted_1"://仪表重量
// return Convert.ToDouble(instrument_weight_Ted_1.Text.Replace("t", "").Trim());
case "cumulative_weight_Ted_1"://当前累计量
// return Convert.ToDouble(cumulative_weight_Ted_1.Text.Replace("t", "").Trim());
case "realtime_amount_Ted_1"://实时量
// return Convert.ToDouble(realtime_amount_Ted_1.Text.Replace("t/h", "").Trim());
case "belt_speed_Ted_1"://皮带速度
// return Convert.ToDouble(belt_speed_Ted_1.Text.Replace("m/s", "").Trim());
case "temperature_Ted_1"://温度
// return Convert.ToDouble(temperature_Ted_1.Text.Replace("℃", "").Trim());
case "parameter_Ted_1"://物料参数
// return Convert.ToDouble(parameter_Ted_1.Text);
default:
return 0;
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 登录人及登陆IP信息
///
public string sIpAddress = "";
}
}