protected string getToDoWorkList() { //WebApplication.CCFlow.ComleaderServer ccflow = new WebApplication.CCFlow.ComleaderServer(); UserLogInfo userLoginInfo = this.LogInfo; TSysUserVo user = userLoginInfo.UserInfo; IList <string[]> queryParams = new List <string[]>(); if (!string.IsNullOrEmpty(Request["flowName"])) { queryParams.Add(new string[3] { "FlowName", Request["flowName"], "like" }); } if (!string.IsNullOrEmpty(Request["ADTStart"])) { queryParams.Add(new string[3] { "ADT", Request["ADTStart"], "ge" }); } if (!string.IsNullOrEmpty(Request["ADTEnd"])) { queryParams.Add(new string[3] { "ADT", Request["ADTEnd"], "le" }); } if (!string.IsNullOrEmpty(Request["FK_Node"])) { queryParams.Add(new string[3] { "FK_Node", Request["FK_Node"], "eq" }); } int?page = null; int?pageSize = null; if (!string.IsNullOrEmpty(Request["page"])) { page = Convert.ToInt32(Request["page"]); } if (!string.IsNullOrEmpty(Request["pagesize"])) { pageSize = Convert.ToInt32(Request["pagesize"]); } string info = CCFlowFacade.GetEmpWorks(user.USER_NAME, queryParams.ToArray(), page, pageSize); XmlDocument document = new XmlDocument(); document.LoadXml(info); XmlNodeList rows = document.SelectNodes("/root/record/row"); XmlNode nodeCount = document.SelectSingleNode("/root/count"); string total = nodeCount.InnerText; IList <Dictionary <string, string> > list = new List <Dictionary <string, string> >(); for (int i = 0; i < rows.Count; i++) { XmlNode node = rows.Item(i); XmlNodeList children = node.ChildNodes; Dictionary <string, string> dic = new Dictionary <string, string>(); for (int j = 0; j < children.Count; j++) { XmlNode element = children[j]; dic.Add(element.Name, Server.UrlDecode(element.InnerText)); } DateTime sdt = Convert.ToDateTime(dic["SDT"]); DateTime now = DateTime.Now; if (DateTime.Compare(now, sdt) <= 0) { dic["NodeState"] = "正常"; } else { dic["NodeState"] = "逾期"; } list.Add(dic); } JavaScriptSerializer serializer = new JavaScriptSerializer(); if (page == null || pageSize == null) { return(serializer.Serialize(new { Rows = list })); } else { return(serializer.Serialize(new { Total = total, Rows = list })); } }
protected string SampleQcCheckCount = "0"; //现场室主任审核 #endregion protected void Page_Load(object sender, EventArgs e) { this.Hidden1.Value = ConfigurationManager.AppSettings["Welcome"]; ShowData(); if (Request["GetCCFlow"] == "GetCCFlow") { var works = CCFlowFacade.GetEmpWorks(this.LogInfo.UserInfo.USER_NAME, new string[][] { }, null, null); var xe = XElement.Parse(works).Element("record").Elements(); var group = from p in xe where !Server.UrlDecode(p.Element("AtPara").Value).Contains("IsCC=1") group p by p.Element("FK_Node").Value into grps select new { FK_Node = grps.Key, Total = grps.Count(), NodeName = Server.UrlDecode(grps.First().Element("NodeName").Value) }; JavaScriptSerializer serializer = new JavaScriptSerializer(); var result = serializer.Serialize(group); Response.Write(result); Response.End(); } if (Request["GetCCFlow"] == "GetCCFlowBatch") { var works = CCFlowFacade.GetBatchWorks(this.LogInfo.UserInfo.USER_NAME); var xe = XElement.Parse(works).Element("record").Elements(); var group = from p in xe select new { FK_Node = p.Element("NodeID").Value, NUM = p.Element("NUM").Value, NodeName = Server.UrlDecode(p.Element("Name").Value) }; JavaScriptSerializer serializer = new JavaScriptSerializer(); var result = serializer.Serialize(group); Response.Write(result); Response.End(); } if (Request["GetCCFlow"] == "GetCCFlowCC") { //待办中的抄送 var works = CCFlowFacade.GetEmpWorks(this.LogInfo.UserInfo.USER_NAME, new string[][] { }, null, null); var xe = XElement.Parse(works).Element("record").Elements().Where(t => Server.UrlDecode(t.Element("AtPara").Value).Contains("IsCC=1")); //抄送 var queryParams = new List <string[]>(); queryParams.Add(new string[3] { "Sta", "0", "eq" }); var ccWorks = CCFlowFacade.GetCC(this.LogInfo.UserInfo.USER_NAME, queryParams.ToArray(), null, null); var inWorks = xe.Select(t => t.Element("WorkID").Value + t.Element("FK_Node").Value + t.Element("FK_Emp").Value); var ccXE = XElement.Parse(ccWorks).Element("record").Elements() .Where(t => !inWorks.Contains(t.Element("WorkID").Value + t.Element("FK_Node").Value + t.Element("CCTo").Value)); var group = (from p in xe group p by p.Element("FK_Node").Value into grps select new { FK_Node = grps.Key, Total = grps.Count(), NodeName = Server.UrlDecode(grps.First().Element("NodeName").Value), IsToDo = true }).Union ( from p in ccXE group p by p.Element("FK_Node").Value into grps select new { FK_Node = grps.Key, Total = grps.Count(), NodeName = Server.UrlDecode(grps.First().Element("NodeName").Value), IsToDo = false } ); JavaScriptSerializer serializer = new JavaScriptSerializer(); var result = serializer.Serialize(group); Response.Write(result); Response.End(); } }