<%@ WebHandler Language="C#" Class="GetAutoFireID" %> using System; using System.Web; using System.Web.SessionState; using System.Web.Configuration; using System.Configuration; using Newtonsoft.Json.Linq; using Curtain.DataAccess; using Curtain.Log; using System.Data; using DK.XuWei.WebMes; /// /// 自动获取重烧ID /// xuwei 2020-02-18 /// public class GetAutoFireID : IHttpHandler, IReadOnlySessionState { public void ProcessRequest(HttpContext context) { //读取成检自动识别重烧节点配置 bool ProductCheckAutoRefire = Convert.ToBoolean(ConfigurationManager.AppSettings["ProductCheckAutoRefire"]); string ProductCheckRefireProcedureId = ConfigurationManager.AppSettings["ProductCheckRefireProcedureId"].ToString(); //判断产品是否重烧过 bool isReFire = false; using (IDataAccess conn = DataAccess.Create()) { DataTable dt = conn.ExecuteDatatable(@" SELECT T.ISREFIRE FROM TP_PM_INPRODUCTION T WHERE T.BARCODE = @BARCODE@ UNION SELECT T.ISREFIRE FROM TP_PM_INPRODUCTIONTRASH T WHERE T.BARCODE = @BARCODE@ ", new CDAParameter("BARCODE", context.Request["barcode"]) ); if(dt.Rows.Count == 0) { isReFire = false; } else { isReFire = (dt.Rows[0]["ISREFIRE"].ToString() == "6") ? true : false; } } if (ProductCheckAutoRefire && isReFire ) { context.Response.Write(new JsonResult(ProductCheckRefireProcedureId){ message = "产品已重烧,procedureId自动切换!" }.ToJson()); } else { context.Response.Write(new JsonResult(JsonStatus.otherError) { message = "产品没有重烧过,procedureId不自动切换!" }.ToJson()); } } public bool IsReusable { get { return false; } } }