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; }
}
}