You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
233 lines
7.7 KiB
C#
233 lines
7.7 KiB
C#
using NPOI.SS.Formula.Eval;
|
|
using Rs.Framework;
|
|
using Rs.MotionPlat.Entitys;
|
|
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 Rs.MotionPlat
|
|
{
|
|
public partial class UFixture : UserControl
|
|
{
|
|
public UFixture()
|
|
{
|
|
InitializeComponent();
|
|
Control.CheckForIllegalCrossThreadCalls = false;
|
|
}
|
|
|
|
private string fixtureName;
|
|
|
|
public string FixtureName
|
|
{
|
|
get { return fixtureName; }
|
|
set { fixtureName = value;
|
|
lblFixtureName.Text = fixtureName;
|
|
}
|
|
}
|
|
|
|
|
|
public void RefreshStatus(TestFixture tf)
|
|
{
|
|
if (lblStatus.Text != tf.Status.ToString())
|
|
{
|
|
lblStatus.Text = tf.Status.ToString();
|
|
}
|
|
switch (tf.Status)
|
|
{
|
|
case ETestFixtureStatus.NoConnect:
|
|
if(btnReset.Enabled)
|
|
{
|
|
btnReset.Enabled = false;
|
|
}
|
|
if(lblStatus.BackColor!=Color.Gray)
|
|
{
|
|
lblStatus.BackColor = Color.Gray;
|
|
}
|
|
break;
|
|
case ETestFixtureStatus.IDLE:
|
|
if(!btnReset.Enabled)
|
|
{
|
|
btnReset.Enabled = true;
|
|
}
|
|
if(lblStatus.BackColor!=Color.Green)
|
|
{
|
|
lblStatus.BackColor = Color.Green;
|
|
}
|
|
//if (tf.Product != null)
|
|
//{
|
|
// if (tf.Product.Result == "true")
|
|
// {
|
|
// lblResult.BackColor = Color.Green;
|
|
// }
|
|
// if (tf.Product.Result == "false")
|
|
// {
|
|
// lblResult.BackColor = Color.Red;
|
|
// }
|
|
// if (tf.Product != null && tf.Product.Result != null && lblResult.Text != tf.Product.Result)
|
|
// {
|
|
// lblResult.Text = tf.Product.Result.ToString();
|
|
// }
|
|
//}
|
|
//else
|
|
//{
|
|
// lblSN.Text = "";
|
|
// lblFixtureName.BackColor = Color.FromArgb(56, 56, 56);
|
|
//}
|
|
break;
|
|
case ETestFixtureStatus.Testing:
|
|
//if (tf.Product != null && lblSN.Text != tf.Product.SN)
|
|
//{
|
|
// lblSN.Text = tf.Product.SN;
|
|
//}
|
|
if (btnReset.Enabled != false)
|
|
{
|
|
btnReset.Enabled = false;
|
|
}
|
|
if (lblStatus.BackColor != Color.Blue)
|
|
{
|
|
lblStatus.BackColor = Color.Blue;
|
|
}
|
|
break;
|
|
case ETestFixtureStatus.Warning:
|
|
if(btnReset.Enabled!=true)
|
|
{
|
|
btnReset.Enabled = true;
|
|
}
|
|
if (lblStatus.BackColor != Color.Red)
|
|
{
|
|
lblStatus.BackColor = Color.Red;
|
|
}
|
|
break;
|
|
case ETestFixtureStatus.Homing:
|
|
if(btnReset.Enabled!=false)
|
|
{
|
|
btnReset.Enabled = false;
|
|
}
|
|
if(lblStatus.BackColor!=Color.YellowGreen)
|
|
{
|
|
lblStatus.BackColor = Color.YellowGreen;
|
|
}
|
|
break;
|
|
}
|
|
|
|
if(tf.Product!=null)
|
|
{
|
|
if(lblSN.Text!= tf.Product.SN)
|
|
{
|
|
lblSN.Text = tf.Product.SN;
|
|
}
|
|
}
|
|
if(tf.Product!=null)
|
|
{
|
|
if(!string.IsNullOrEmpty(tf.Product.Result) && lblResult.Text!=tf.Product.Result)
|
|
{
|
|
if(tf.Product.Result=="true")
|
|
{
|
|
lblResult.BackColor = Color.Green;
|
|
}
|
|
else
|
|
{
|
|
lblResult.BackColor = Color.Red;
|
|
}
|
|
lblResult.Text = tf.Product.Result;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if(!string.IsNullOrEmpty(lblResult.Text))
|
|
{
|
|
lblResult.Text = "";
|
|
lblResult.BackColor = Color.FromArgb(11, 16, 36);
|
|
}
|
|
}
|
|
//if (tf.Status== ETestFixtureStatus.Testing)
|
|
//{
|
|
// if (tf.Product!=null && lblSN.Text != tf.Product.SN)
|
|
// {
|
|
// lblSN.Text = tf.Product.SN;
|
|
// }
|
|
//}
|
|
//else if(tf.Status== ETestFixtureStatus.IDLE)
|
|
//{
|
|
// if (tf.Product != null)
|
|
// {
|
|
|
|
// if (tf.Product.Result == "true" && lblFixtureName.BackColor != Color.Green)
|
|
// {
|
|
// lblFixtureName.BackColor = Color.Green;
|
|
// }
|
|
// if (tf.Product.Result == "false" && lblFixtureName.BackColor != Color.Red)
|
|
// {
|
|
// lblFixtureName.BackColor = Color.Red;
|
|
// }
|
|
// if (tf.Product!=null && tf.Product.Result!=null && lblResult.Text != tf.Product.Result)
|
|
// {
|
|
// lblResult.Text = tf.Product.Result.ToString();
|
|
// }
|
|
// }
|
|
// else
|
|
// {
|
|
// lblSN.Text = "";
|
|
// lblFixtureName.BackColor = Color.FromArgb(56, 56, 56);
|
|
// }
|
|
//}
|
|
//else if(tf.Status== ETestFixtureStatus.Homing)
|
|
//{
|
|
// if(btnReset.Enabled!=false)
|
|
// {
|
|
// btnReset.Enabled = false;
|
|
// }
|
|
//}
|
|
if(lblName.Text!=tf.MachineID)
|
|
{
|
|
lblName.Text = tf.MachineID;
|
|
}
|
|
if(lblLotName.Text!= GlobalVar.LotName)
|
|
{
|
|
lblLotName.Text = GlobalVar.LotName;
|
|
}
|
|
if(lblEnable.Text!=tf.Enable.ToString())
|
|
{
|
|
//this.lblFixtureName.Enabled = tf.Enable;
|
|
lblEnable.Text = tf.Enable.ToString();
|
|
}
|
|
|
|
this.lblYield.Text = $"{(tf.Yield * 100).ToString("0.00")}%";
|
|
|
|
if(this.lblLastCT.Text != double.Parse(tf.LastCT.ToString()).ToString("0.000"))
|
|
{
|
|
this.lblLastCT.Text = double.Parse(tf.LastCT.ToString()).ToString("0.000");
|
|
}
|
|
|
|
if(lblPassCount.Text != tf.PassCount.ToString())
|
|
{
|
|
lblPassCount.Text = tf.PassCount.ToString();
|
|
}
|
|
if(lblTotalCount.Text != tf.TotalCount.ToString())
|
|
{
|
|
lblTotalCount.Text = tf.TotalCount.ToString();
|
|
}
|
|
if(this.lblFixtureName.Enabled!=tf.Enable)
|
|
{
|
|
this.lblFixtureName.Enabled= tf.Enable;
|
|
}
|
|
}
|
|
|
|
private void btnReset_Click(object sender, EventArgs e)
|
|
{
|
|
TestFixtureManager.Instance.GetTestFixture(int.Parse(this.lblIndex.Text)).Home();
|
|
}
|
|
|
|
public void SetIndex(int index)
|
|
{
|
|
this.lblIndex.Text = index.ToString();
|
|
}
|
|
}
|
|
}
|