using System; using System.Collections; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; using System.Web; using System.Xml; namespace DeviceITisation { class GetWebserver { public string QueryGetWebService(String URL, String MethodName, Hashtable Pars) { HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(URL + "/" + MethodName + "?" + ParsToString(Pars)); request.Method = "GET"; request.ContentType = "application/x-www-form-urlencoded"; SetWebRequest(request); return ReadXmlResponse(request.GetResponse()); } /// /// 获得条码 /// /// /// /// /// public string GetTVInfo(String URL, String MethodName, string SN) { HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(URL + "/" + MethodName + "?" + "SN=" + Uri.EscapeDataString(SN)); request.Method = "GET"; request.ContentType = "application/x-www-form-urlencoded"; SetWebRequest(request); return ReadXmlResponse(request.GetResponse()); } /// /// 获得下一工序代码 /// /// /// /// /// public string GetNextProcessCode(String URL, String MethodName, string SN) { HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(URL + "/" + MethodName + "?" + "TVSN=" + Uri.EscapeDataString(SN)); request.Method = "GET"; request.ContentType = "application/x-www-form-urlencoded"; SetWebRequest(request); return ReadXmlResponse(request.GetResponse()); } /// /// 上传条码扫描路线结果 /// /// /// /// /// /// /// /// /// /// /// public string Scan(String URL, String MethodName, string TVSN, string LineCode, string PcProcessCode, string Host, string IP, string User, string UserName) { try { HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(URL + "/" + MethodName + "?" + "TVSN=" + Uri.EscapeDataString(TVSN) + "&" + "LineCode=" + LineCode + "&" + "PcProcessCode=" + PcProcessCode + "&" + "Host=" + Host + "&" + "IP=" + IP + "&" + "User=" + User + "&" + "UserName=" + UserName + "&" + "PartStrs=" + ""); request.Method = "GET"; request.ContentType = "application/x-www-form-urlencoded"; SetWebRequest(request); return ReadXmlResponse(request.GetResponse()); } catch (Exception ex) { return ""; } } private static void SetWebRequest(HttpWebRequest request) { request.Credentials = CredentialCache.DefaultCredentials; request.Timeout = 50000; } private static string ReadXmlResponse(WebResponse response) { StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.UTF8); String retXml = sr.ReadToEnd(); sr.Close(); XmlDocument doc = new XmlDocument(); return retXml; } private static String ParsToString(Hashtable Pars) { StringBuilder sb = new StringBuilder(); foreach (string k in Pars.Keys) { if (sb.Length > 0) { sb.Append("&"); } sb.Append(HttpUtility.UrlEncode(k) + "=" + HttpUtility.UrlEncode(Pars[k].ToString())); } return sb.ToString(); } } public class GetTVInfo { public string ODF { get; set; } public string ProductName { get; set; } public string ProductCode { get; set; } } public class RootObject5 { public string ODF { get; set; } public string BOM { get; set; } public string SCREEN { get; set; } public string SHIPPING { get; set; } public string SIZE { get; set; } public string Model { get; set; } } public class REject { public string E_TXT_1 { get; set; } public string E_TXT_E { get; set; } public string E_TXT_OTHER { get; set; } public eClass E_CLASS { get; set; } } public class eClass { public string MATNR { get; set; } public string FL1 { get; set; } public string FL2 { get; set; } public string ZHMS { get; set; } public string XHXL { get; set; } public string ZN { get; set; } public string JX { get; set; } public string ZJX { get; set; } public string ZCC { get; set; } public string PBM { get; set; } public string BP { get; set; } public string PMBM { get; set; } public string PRO { get; set; } } }