GetAutoFireID.ashx 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <%@ WebHandler Language="C#" Class="GetAutoFireID" %>
  2. using System;
  3. using System.Web;
  4. using System.Web.SessionState;
  5. using System.Web.Configuration;
  6. using System.Configuration;
  7. using Newtonsoft.Json.Linq;
  8. using Curtain.DataAccess;
  9. using Curtain.Log;
  10. using System.Data;
  11. using DK.XuWei.WebMes;
  12. /// <summary>
  13. /// 自动获取重烧ID
  14. /// xuwei 2020-02-18
  15. /// </summary>
  16. public class GetAutoFireID : IHttpHandler, IReadOnlySessionState
  17. {
  18. public void ProcessRequest(HttpContext context)
  19. {
  20. //读取成检自动识别重烧节点配置
  21. bool ProductCheckAutoRefire = Convert.ToBoolean(ConfigurationManager.AppSettings["ProductCheckAutoRefire"]);
  22. string ProductCheckRefireProcedureId = ConfigurationManager.AppSettings["ProductCheckRefireProcedureId"].ToString();
  23. //判断产品是否重烧过
  24. bool isReFire = false;
  25. using (IDataAccess conn = DataAccess.Create())
  26. {
  27. DataTable dt = conn.ExecuteDatatable(@"
  28. SELECT
  29. T.ISREFIRE
  30. FROM
  31. TP_PM_INPRODUCTION T
  32. WHERE
  33. T.BARCODE = @BARCODE@ UNION
  34. SELECT
  35. T.ISREFIRE
  36. FROM
  37. TP_PM_INPRODUCTIONTRASH T
  38. WHERE
  39. T.BARCODE = @BARCODE@
  40. ",
  41. new CDAParameter("BARCODE", context.Request["barcode"])
  42. );
  43. if(dt.Rows.Count == 0)
  44. {
  45. isReFire = false;
  46. }
  47. else
  48. {
  49. isReFire = (dt.Rows[0]["ISREFIRE"].ToString() == "6") ? true : false;
  50. }
  51. }
  52. if (ProductCheckAutoRefire && isReFire )
  53. {
  54. context.Response.Write(new JsonResult(ProductCheckRefireProcedureId){ message = "产品已重烧,procedureId自动切换!" }.ToJson());
  55. }
  56. else
  57. {
  58. context.Response.Write(new JsonResult(JsonStatus.otherError) { message = "产品没有重烧过,procedureId不自动切换!" }.ToJson());
  59. }
  60. }
  61. public bool IsReusable
  62. {
  63. get
  64. {
  65. return false;
  66. }
  67. }
  68. }