Ejemplo n.º 1
0
        private void RenderStatus(WfProcessCurrentInfoCollection atpc, UserIMAddressCollection extendInfo, HtmlTextWriter writer)
        {
            WfProcessCurrentInfo atp = null;

            if (this.ProcessID.IsNotEmpty())
            {
                atp = atpc.Find(a => string.Compare(a.InstanceID, this.ProcessID, true) == 0);
            }
            else
            {
                if (this.ResourceID.IsNotEmpty())
                {
                    atp = atpc.Find(a => string.Compare(a.ResourceID, this.ResourceID, true) == 0);
                }
            }

            if (atp != null)
            {
                writer.Write(WebControlUtility.GetControlHtml(CreateStatusDisplayControl(atp, extendInfo)));
            }
        }
        protected override void OnAfterQuery(System.Data.DataView result)
        {
            base.OnAfterQuery(result);

            List <string> resourceIDList = new List <string>();
            List <string> processIDList  = new List <string>();

            foreach (DataRowView rowView in result)
            {
                if (!resourceIDList.Contains(rowView["RESOURCE_ID"].ToString()))
                {
                    resourceIDList.Add(rowView["RESOURCE_ID"].ToString());
                }

                if (!processIDList.Contains(rowView["PROCESS_ID"].ToString()))
                {
                    processIDList.Add(rowView["PROCESS_ID"].ToString());
                }
            }

            var atpc = new WfProcessCurrentInfoCollection();

            WfProcessCurrentInfoCollection resourceAtpc = WfProcessCurrentInfoAdapter.Instance.Load(resourceIDList.ToArray());
            WfProcessCurrentInfoCollection processAtpc  = WfProcessCurrentInfoAdapter.Instance.LoadByProcessID(processIDList.ToArray());

            resourceAtpc.ForEach(atp =>
            {
                if (atpc.Exists(p => p.InstanceID == atp.InstanceID) == false)
                {
                    atpc.Add(atp);
                }
            });

            processAtpc.ForEach(atp =>
            {
                if (atpc.Exists(p => p.InstanceID == atp.InstanceID) == false)
                {
                    atpc.Add(atp);
                }
            });

            result.Table.Columns.Add("Status");

            foreach (DataRowView rowView in result)
            {
                var processInfo = atpc.Find(p => p.InstanceID == rowView["PROCESS_ID"].ToString() || p.ResourceID == rowView["RESOURCE_ID"].ToString());

                rowView["Status"] = processInfo != null ? (int)processInfo.Status : 0;
            }
        }
        protected override void OnAfterQuery(System.Data.DataView result)
        {
            base.OnAfterQuery(result);

            List<string> resourceIDList = new List<string>();
            List<string> processIDList = new List<string>();

            foreach (DataRowView rowView in result)
            {
                if (!resourceIDList.Contains(rowView["RESOURCE_ID"].ToString()))
                    resourceIDList.Add(rowView["RESOURCE_ID"].ToString());

                if (!processIDList.Contains(rowView["PROCESS_ID"].ToString()))
                    processIDList.Add(rowView["PROCESS_ID"].ToString());
            }

            var atpc = new WfProcessCurrentInfoCollection();

            WfProcessCurrentInfoCollection resourceAtpc = WfProcessCurrentInfoAdapter.Instance.Load(resourceIDList.ToArray());
            WfProcessCurrentInfoCollection processAtpc = WfProcessCurrentInfoAdapter.Instance.LoadByProcessID(processIDList.ToArray());

            resourceAtpc.ForEach(atp =>
            {
                if (atpc.Exists(p => p.InstanceID == atp.InstanceID) == false)
                    atpc.Add(atp);
            });

            processAtpc.ForEach(atp =>
            {
                if (atpc.Exists(p => p.InstanceID == atp.InstanceID) == false)
                    atpc.Add(atp);
            });

            result.Table.Columns.Add("Status");

            foreach (DataRowView rowView in result)
            {
                var processInfo = atpc.Find(p => p.InstanceID == rowView["PROCESS_ID"].ToString() || p.ResourceID == rowView["RESOURCE_ID"].ToString());

                rowView["Status"] = processInfo != null ? (int)processInfo.Status : 0;
            }
        }
Ejemplo n.º 4
0
        private void RenderStatus(WfProcessCurrentInfoCollection atpc, UserIMAddressCollection extendInfo, HtmlTextWriter writer)
        {
            WfProcessCurrentInfo atp = null;

            if (this.ProcessID.IsNotEmpty())
            {
                atp = atpc.Find(a => string.Compare(a.InstanceID, this.ProcessID, true) == 0);
            }
            else
            {
                if (this.ResourceID.IsNotEmpty())
                    atp = atpc.Find(a => string.Compare(a.ResourceID, this.ResourceID, true) == 0);
            }

            if (atp != null)
                writer.Write(WebControlUtility.GetControlHtml(CreateStatusDisplayControl(atp, extendInfo)));
        }