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.

112 lines
3.6 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using Estsh.Client.Base;
namespace Estsh.Client.StepLibrary
{
public class RF182CRFIDWrite : StepBase
{
public override bool Do ()
{
try
{
//RF182C rf182c=new RF182C ();
RFIDApp app = new RFIDApp (httpClient);
string el_no = Context [ "serial_number" ] .ToString ();
string terminal_id = Context [ "terminal_id" ] .ToString ();
// 执行父类的 Do 方法并返回
bool initializeRFIDState =Convert .ToBoolean (Context [ "initializeRFIDState" ] .ToString ());
bool TAGState =Convert .ToBoolean (Context [ "TAGState" ] .ToString ());
if ( initializeRFIDState == true )
{
if ( TAGState == false )
{
ShowMessage (this , "red|未检测到TAG");
}
else
{
List<dynamic> RFIDOperationType = app .GetRFIDOperationType (Convert .ToInt32 (terminal_id) , "RFID_IP");
string perationType="";
if ( RFIDOperationType .Count > 0 )
{
perationType = RFIDOperationType [ 0 ] [ "operation_type" ] .ToString ();
}
if ( initializeRFIDState == true && perationType .ToUpper () .ToString () == "WRITE" )
{
RF182C.Write(el_no);
Thread.Sleep(200);
RF182C .read ();
if (el_no != RF182C.BarCode)
{
RF182C.Write(el_no);
RF182C .read ();
if (el_no != RF182C.BarCode)
{
ShowMessage (this , "red|RFID写入失败请重新扫描");
}
Complate(this, new EventArgs());
}
Complate(this, new EventArgs());
}
}
}
}
catch ( Exception ex )
{
// 记录日志
using ( StreamWriter sw = new StreamWriter ("Error_Log_" + DateTime .Now .ToString ("yyyyMM") + ".txt" , true) )
{
sw .WriteLine (string .Format ("{0} {1}" , "["
+ DateTime .Now .ToString ("yyyy-MM-dd HH:mm:ss")
+ "] " , ex .ToString ()));
sw .Flush ();
sw .Close ();
ShowMessage(this, "red|RFID写入失败程序未连接RFID");
}
}
return base.Do();
}
private void InitializeComponent ()
{
this.SuspendLayout();
//
// RF182CRFIDWrite
//
this.Name = "RF182CRFIDWrite";
this.Size = new System.Drawing.Size(831, 409);
this.Load += new System.EventHandler(this.RFIDWrite_Load);
this.ResumeLayout(false);
}
private void RFIDWrite_Load ( object sender , EventArgs e )
{
// 工步执行完成后调用此方法
// Complate (this , e);
}
}
}