Exemple #1
0
    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();
        }
    }