GetWorkStationInfo.ashx 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <%@ WebHandler Language="C#" Class="GetWorkStationInfo" %>
  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 GetWorkStationInfo : IHttpHandler, IReadOnlySessionState
  14. {
  15. public void ProcessRequest(HttpContext context)
  16. {
  17. using (IDataAccess conn = DataAccess.Create())
  18. {
  19. DataTable dt = conn.ExecuteDatatable(@"
  20. SELECT W.WORKSTATIONNAME || '【' ||
  21. (SELECT LISTAGG(TO_CHAR(S.STAFFNAME), ',') WITHIN GROUP(ORDER BY S.STAFFNAME)
  22. FROM TP_PC_CLASSESDETAIL T
  23. LEFT JOIN TP_HR_STAFF S
  24. ON S.STAFFID = T.STAFFID
  25. WHERE T.CLASSESSETTINGID = (SELECT MAX(CD.CLASSESSETTINGID)
  26. FROM TP_PC_CLASSESDETAIL CD
  27. WHERE CD.USERID = @USERID@)) || '】' AS WORKSTATIONINFO
  28. FROM TP_MST_WORKSTATION W
  29. WHERE W.USERCODE = @USERCODE@
  30. ",
  31. new CDAParameter("USERID", context.Session["UserID"].ToString()),
  32. new CDAParameter("USERCODE", context.Session["userCode"].ToString())
  33. );
  34. context.Response.Write(new JsonResult(dt).ToJson());
  35. }
  36. }
  37. public bool IsReusable
  38. {
  39. get
  40. {
  41. return false;
  42. }
  43. }
  44. }