GetWorkStation.ashx 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <%@ WebHandler Language="C#" Class="GetWorkStation" %>
  2. using System.Web;
  3. using System.Data;
  4. using System.Web.SessionState;
  5. using System.Web.Configuration;
  6. using Newtonsoft.Json.Linq;
  7. using Curtain.DataAccess;
  8. using Curtain.Log;
  9. using DK.XuWei.WebMes;
  10. /// <summary>
  11. /// 获取工号配置的工位
  12. /// </summary>
  13. public class GetWorkStation : IHttpHandler, IReadOnlySessionState
  14. {
  15. public void ProcessRequest(HttpContext context)
  16. {
  17. using (IDataAccess conn = DataAccess.Create())
  18. {
  19. DataTable dt = new DataTable();
  20. if (context.Request["PROCEDUREID"] == "9999")
  21. {
  22. dt = conn.ExecuteDatatable(@"
  23. SELECT T.WORKSTATIONTYPEID AS TYPEID,
  24. REPLACE(REPLACE(T.WORKSTATIONTYPEURL, '@procedureid', W.PROCEDUREID)
  25. ,'@modeltype'
  26. ,P.MODELTYPE) AS TYPEURL,
  27. W.PROCEDUREID,
  28. W.WORKSTATIONID AS ID,
  29. W.WORKSTATIONNAME AS NAME,
  30. W.PCCODE
  31. FROM TP_MST_WORKSTATION W
  32. LEFT JOIN TP_SYS_WORKSTATIONTYPE T
  33. ON T.WORKSTATIONTYPEID = W.WORKSTATIONTYPEID
  34. LEFT JOIN TP_MST_WORKSTATIONUSER WU
  35. ON WU.WORKSTATIONID = W.WORKSTATIONID
  36. LEFT JOIN TP_MST_USER U
  37. ON U.USERID = WU.USERID
  38. LEFT JOIN TP_PC_PROCEDURE P
  39. ON P.PROCEDUREID = W.PROCEDUREID
  40. WHERE W.VALUEFLAG = '1'
  41. AND U.USERCODE = @USERCODE@
  42. AND W.PROCEDUREID IS NULL
  43. ORDER BY W.WORKSTATIONNAME ",
  44. new CDAParameter("USERCODE",context.Request["UserCode"]),
  45. new CDAParameter("PROCEDUREID",context.Request["PROCEDUREID"])
  46. );
  47. }
  48. else
  49. {
  50. dt = conn.ExecuteDatatable(@"
  51. SELECT T.WORKSTATIONTYPEID AS TYPEID,
  52. REPLACE(REPLACE(T.WORKSTATIONTYPEURL, '@procedureid', W.PROCEDUREID)
  53. ,'@modeltype'
  54. ,P.MODELTYPE) AS TYPEURL,
  55. W.PROCEDUREID,
  56. W.WORKSTATIONID AS ID,
  57. W.WORKSTATIONNAME AS NAME,
  58. W.PCCODE
  59. FROM TP_MST_WORKSTATION W
  60. LEFT JOIN TP_SYS_WORKSTATIONTYPE T
  61. ON T.WORKSTATIONTYPEID = W.WORKSTATIONTYPEID
  62. LEFT JOIN TP_MST_WORKSTATIONUSER WU
  63. ON WU.WORKSTATIONID = W.WORKSTATIONID
  64. LEFT JOIN TP_MST_USER U
  65. ON U.USERID = WU.USERID
  66. LEFT JOIN TP_PC_PROCEDURE P
  67. ON P.PROCEDUREID = W.PROCEDUREID
  68. WHERE W.VALUEFLAG = '1'
  69. AND U.USERCODE = @USERCODE@
  70. AND (@PROCEDUREID@ = '0' OR W.PROCEDUREID = @PROCEDUREID@)
  71. ORDER BY W.WORKSTATIONNAME ",
  72. new CDAParameter("USERCODE",context.Request["UserCode"]),
  73. new CDAParameter("PROCEDUREID",context.Request["PROCEDUREID"])
  74. );
  75. }
  76. context.Response.Write(new JsonResult(dt).ToJson());
  77. }
  78. }
  79. public bool IsReusable
  80. {
  81. get
  82. {
  83. return false;
  84. }
  85. }
  86. }