using Estsh.Client.Common.HttpClientUtil; using System.Collections; using System.Text; namespace Estsh.Client { public class RFIDApp { private HttpClientHelper httpClient = null; public RFIDApp(HttpClientHelper _httpClient) { httpClient = _httpClient; } public List GetRFIDOperationType(int terminalID, string paramName) { lock (httpClient) { string sqlstring = "SELECT top 1 operation_type FROM dbo.sys_terminal_params WHERE terminal_id = @terminalID AND param_name = @paramName"; Dictionary values = new Dictionary(2); values.Add("@terminalID", terminalID); values.Add("@paramName", paramName); return httpClient.GetEntityList(sqlstring.ToString(), values); } } /// /// 读取PLC值 /// /// public string ReadyPlc(string pointName, int terminalID) { StringBuilder SqlStringBuilder = new StringBuilder(1024); SqlStringBuilder.Append(" SELECT a.point_value FROM dbo.opc_point a "); SqlStringBuilder.Append(" LEFT JOIN dbo.sys_terminal_params b ON a.point_name=b.param_value "); SqlStringBuilder.Append(" WHERE param_name=@pointName AND terminal_id=@terminalID "); Dictionary ht = new Dictionary(2); ht.Add("@pointName", pointName); ht.Add("@terminalID", terminalID); object obj = httpClient.GetScalar(SqlStringBuilder.ToString(), ht); return obj != null && obj != DBNull.Value ? obj.ToString().ToUpper() : string.Empty; } /// /// 发送值到PLC /// /// /// /// public bool UpdatePLC(string pointName, int terminID, string pointValue) { lock (httpClient) { string sqlstring = @"update opc_point set point_value = @pointValue,point_flag1=101,update_time=GETDATE() where point_name IN ( SELECT param_value FROM sys_terminal_params(NOLOCK) WHERE param_name=@pointName AND terminal_id=@terminID ) "; Dictionary values = new Dictionary(3); values.Add("@pointName", pointName); values.Add("@terminID", terminID); values.Add("@pointValue", pointValue); if (httpClient.Execute(sqlstring.ToString(), values) > 0) { return true; } else { return false; } } } public string validataLimit(string paramName) { lock (httpClient) { StringBuilder querySen = new StringBuilder(1024); querySen.AppendLine("SELECT param_value "); querySen.AppendLine("FROM sys_base "); querySen.AppendLine("WHERE ( param_name = @paramName ) "); Dictionary ht = new Dictionary(1); ht.Add("@paramName", paramName); object obj = httpClient.GetScalar(querySen.ToString(), ht); return obj != null && obj != DBNull.Value ? obj.ToString().ToUpper() : string.Empty; } } public string getPartLocation(string sn) { string sql = "SELECT b.part_location FROM dbo.g_sn_status a LEFT JOIN dbo.sys_part b ON a.part_id=b.part_id WHERE a.serial_number ='" + sn + "'"; object obj = httpClient.GetScalar(sql); return obj != null && obj != DBNull.Value ? obj.ToString().ToUpper() : ""; } } }