PageRenderTime 42ms CodeModel.GetById 18ms RepoModel.GetById 1ms app.codeStats 0ms

/IntelWebSite/wfPanelData.aspx.cs

https://github.com/sirivedula/IntelWebPro
C# | 89 lines | 75 code | 12 blank | 2 comment | 2 complexity | 48f164c2338ef86d4a631ecfcdcab997 MD5 | raw file
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.UI;
  6. using System.Web.UI.WebControls;
  7. using System.Text;
  8. using IntelWeb;
  9. using System.Data.OleDb;
  10. using System.Data;
  11. namespace IntelWebSite
  12. {
  13. public partial class wfPanelData : System.Web.UI.Page
  14. {
  15. protected void Page_Load(object sender, EventArgs e)
  16. {
  17. }
  18. protected void Page_LoadComplete(object sender, EventArgs e)
  19. {
  20. CurrentUser cuser = new CurrentUser();
  21. cuser.userName = "Balaji";
  22. cuser.Load();
  23. string tiercode = Request.QueryString["tiercode"];
  24. string deptcode = Request.QueryString["deptcode"];
  25. string sitecode = Request.QueryString["sitecode"];
  26. string fromdate = Request.QueryString["fdate"];
  27. string todate = Request.QueryString["tdate"];
  28. tbl_alarm_time_details alarmDet = new tbl_alarm_time_details(cuser);
  29. IntelWebField tierFld = alarmDet.Field("tier_code");
  30. tierFld.fieldValue = tiercode;
  31. IntelWebField deptFld = alarmDet.Field("department_code");
  32. deptFld.fieldValue = deptcode;
  33. IntelWebField siteFld = alarmDet.Field("site_code");
  34. siteFld.fieldValue = sitecode;
  35. IntelWebField fdateFld = new IntelWebField("todate", OleDbType.DBDate, 10, 10, 0, DataRowVersion.Current, false, fromdate);
  36. IntelWebField tdateFld = new IntelWebField("todate", OleDbType.DBDate, 10, 10, 0, DataRowVersion.Current, false, todate);
  37. List<IntelWebField> bparam = new List<IntelWebField>();
  38. bparam.Add(tierFld);
  39. bparam.Add(deptFld);
  40. bparam.Add(siteFld);
  41. bparam.Add(fdateFld);
  42. bparam.Add(tdateFld);
  43. List<IntelWebObject> alarmDets = alarmDet.Load("tier_code=? and department_code=? and site_code=? and alarm_date between ? and ?", "panel_code", bparam);
  44. if (alarmDets.Count > 0)
  45. {
  46. StringBuilder sb = new StringBuilder();
  47. /* Panels Table */
  48. sb.Append("<table><tr>");
  49. var distPanels = alarmDets.Select(x => x.Field("panel_code").fieldValue ?? "").Distinct();
  50. foreach (string panel in distPanels)
  51. {
  52. sb.Append("<td>" + AlaramDeviceHTML(sitecode, panel, alarmDets) + "</td>");
  53. }
  54. sb.Append("</tr></table>");
  55. Response.Write(sb.ToString());
  56. }
  57. else
  58. {
  59. Response.Write("There are no details found.");
  60. }
  61. }
  62. private string AlaramDeviceHTML(string site, string panel, List<IntelWebObject> Details)
  63. {
  64. StringBuilder sb1 = new StringBuilder();
  65. /* Total Devices For the Alaram */
  66. int totalDevices = Details.FindAll(x => (x.Field("panel_code").fieldValue ?? "").Equals(panel)).Count();
  67. var distDevices = Details.FindAll(x => (x.Field("panel_code").fieldValue ?? "").Equals(panel)).Select(x => x.Field("alarm_device_code").fieldValue ?? "").Distinct();
  68. foreach (string device in distDevices)
  69. {
  70. int Cnt = Details.FindAll(x => ((x.Field("panel_code").fieldValue ?? "").Equals(panel) && (x.Field("alarm_device_code").fieldValue ?? "").Equals(device))).Count();
  71. sb1.Append("<tr><td style=\"background-color:#DFE6EC;cursor:pointer;\" onclick=\"showDetails('" + JSUtil.EnquoteJS(site) + "','" + JSUtil.EnquoteJS(panel) + "','" + JSUtil.EnquoteJS(device) + "')\" >" + HttpUtility.HtmlEncode(device) + " - " + Cnt.ToString() + "</td></tr>");
  72. }
  73. string result = "<table><tr><td style=\"background-color:#243646;color:#FFF;\">Panel - " + HttpUtility.HtmlEncode(panel) + " - " + totalDevices.ToString() + "</td></tr>" + sb1.ToString() + "</tr></table>";
  74. return result;
  75. }
  76. }
  77. }