<%@ WebHandler Language="C#" Class="GetCheckBarcode_WCF" %> using System; using System.Collections.Generic; using System.Web; using System.Web.SessionState; using System.Configuration; using System.Data; using Newtonsoft.Json; using Curtain.DataAccess; using Curtain.Log; using DK.XuWei.WebMes; public class GetCheckBarcode_WCF : IHttpHandler { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; using (IDataAccess conn = DataAccess.Create()) { string barcode = context.Request["barcode"].ToString(); string type = context.Request["type"].ToString(); //包装条码 if (barcode.Length ==8) { DataTable procedurename = conn.ExecuteDatatable(@" SELECT BARCODE FROM TP_PM_GROUTINGDAILYDETAIL WHERE SERVICECODE = @OUTLABELCODE@", new CDAParameter("OUTLABELCODE", barcode.Substring(barcode.IndexOf('-')+1)) ); barcode = procedurename.Rows[0]["BARCODE"].ToString(); } else if (barcode.Length == 28) { DataTable procedurename = conn.ExecuteDatatable(@" SELECT BARCODE FROM TP_PM_GROUTINGDAILYDETAIL WHERE OUTLABELCODE = @OUTLABELCODE@", new CDAParameter("OUTLABELCODE", barcode) ); barcode = procedurename.Rows[0]["BARCODE"].ToString(); } DataTable hourTable = conn.ExecuteDatatable(@" SELECT TO_CHAR(SYSDATE, 'HH24') AS hour FROM DUAL" ); int hour = Convert.ToInt32(hourTable.Rows[0]["hour"]); string classes = ""; //A班 if (hour >= 7 && hour < 18) { classes = "A"; } else { classes = "B"; } //调用检验条码存储过程 List sqlPara = new List(); sqlPara.Add(new CDAParameter("IN_BARCODE", barcode)); sqlPara.Add(new CDAParameter("IN_TYPE", type)); sqlPara.Add(new CDAParameter("IN_CLASS", classes)); sqlPara.Add(new CDAParameter("OUT_ERRMSG", DataType.VarChar,50, ParameterDirection.Output)); sqlPara.Add(new CDAParameter("OUT_INFO", DataType.VarChar,50, ParameterDirection.Output)); sqlPara.Add(new CDAParameter("OUT_RESULT", DataType.Cursor, ParameterDirection.Output)); DataTable barcodeTable = conn.ExecuteSPDatatable("PRO_PM_CHECKBARCODE_FQC", sqlPara.ToArray()); context.Response.Write(new JsonResult(barcodeTable).ToJson()); } } public bool IsReusable { get { return false; } } }