示例#1
0
        private Saas.Tools.FlowWFService.SubimtFlowCompletedEventArgs GetFlowCompletedArgs(AuditFBEntityCompletedEventArgs e)
        {
            DataResult dr = e.Result.DataResult;
            
            //CloneEntity(dr, newDr);
            if (dr == null)
            {
                dr = new DataResult();
                dr.FlowResult = FlowResult.FAIL;

            }
            Saas.Tools.FlowWFService.DataResult newDr = new Saas.Tools.FlowWFService.DataResult
            {
                //AgentUserInfo = dr.AgentUserInfo,
                AppState = dr.AppState,
                CheckState = dr.CheckState,
                CountersignType = dr.CountersignType,
                //DictAgentUserInfo = dr.DictAgentUserInfo,
                DictCounterUser = new Dictionary<Saas.Tools.FlowWFService.Role_UserType, ObservableCollection<Saas.Tools.FlowWFService.UserInfo>>(),
                Err = dr.Err,
                ErrNum = dr.ErrNum,
                FlowResult = (Saas.Tools.FlowWFService.FlowResult)((int)dr.FlowResult),
                IsCountersign = dr.IsCountersign,
                IsCountersignComplete = dr.IsCountersignComplete,
                ModelFlowRelationID = dr.ModelFlowRelationID,
                RunTime = dr.RunTime,
                SubmitFlag = (Saas.Tools.FlowWFService.SubmitFlag)((int)dr.SubmitFlag),
                SubModelCode = dr.SubModelCode,
                UserInfo = new ObservableCollection<Saas.Tools.FlowWFService.UserInfo>(),
            };


            if (dr.UserInfo != null)
            {
                dr.UserInfo.ToList().ForEach(item =>
                {
                    Saas.Tools.FlowWFService.UserInfo ui = new Saas.Tools.FlowWFService.UserInfo
                    {
                        UserID = item.UserID,
                        UserName = item.UserName,
                        CompanyID = item.CompanyID,
                        CompanyName = item.CompanyName,
                        DepartmentID = item.DepartmentID,
                        DepartmentName = item.DepartmentName,
                        PostID = item.PostID,
                        PostName = item.PostName
                    };
                    newDr.UserInfo.Add(ui);
                });
            }
            if (dr.DictCounterUser != null)
            {
                dr.DictCounterUser.ToList().ForEach(item =>
                {
                    var key = new SMT.Saas.Tools.FlowWFService.Role_UserType()
                    {
                        IsOtherCompany = item.Key.IsOtherCompany,
                        Name = item.Key.Name,
                        OtherCompanyID = item.Key.OtherCompanyID,
                        Remark = item.Key.Remark,
                        RoleName = item.Key.RoleName,
                        UserType = item.Key.UserType
                    };
                    var value = new ObservableCollection<Saas.Tools.FlowWFService.UserInfo>();
                    item.Value.ForEach(itemU =>
                        {
                            var ui = new Saas.Tools.FlowWFService.UserInfo
                            {
                                UserID = itemU.UserID,
                                UserName = itemU.UserName,
                                CompanyID = itemU.CompanyID,
                                CompanyName = itemU.CompanyName,
                                DepartmentID = itemU.DepartmentID,
                                DepartmentName = itemU.DepartmentName,
                                PostID = itemU.PostID,
                                PostName = itemU.PostName
                            };
                            value.Add(ui);
                        });

                    newDr.DictCounterUser.Add(key, value);
                });
            }

            Saas.Tools.FlowWFService.SubimtFlowCompletedEventArgs args = new Saas.Tools.FlowWFService.SubimtFlowCompletedEventArgs(new object[] { newDr },
                null, e.Cancelled, e.UserState);
            return args;
        }
示例#2
0
        private Saas.Tools.FlowWFService.SubimtFlowCompletedEventArgs GetFlowCompletedArgs(AuditFBEntityCompletedEventArgs e)
        {
            DataResult dr = e.Result.DataResult;

            //CloneEntity(dr, newDr);
            if (dr == null)
            {
                dr            = new DataResult();
                dr.FlowResult = FlowResult.FAIL;
            }
            Saas.Tools.FlowWFService.DataResult newDr = new Saas.Tools.FlowWFService.DataResult
            {
                //AgentUserInfo = dr.AgentUserInfo,
                AppState        = dr.AppState,
                CheckState      = dr.CheckState,
                CountersignType = dr.CountersignType,
                //DictAgentUserInfo = dr.DictAgentUserInfo,
                DictCounterUser       = new Dictionary <Saas.Tools.FlowWFService.Role_UserType, ObservableCollection <Saas.Tools.FlowWFService.UserInfo> >(),
                Err                   = dr.Err,
                ErrNum                = dr.ErrNum,
                FlowResult            = (Saas.Tools.FlowWFService.FlowResult)((int)dr.FlowResult),
                IsCountersign         = dr.IsCountersign,
                IsCountersignComplete = dr.IsCountersignComplete,
                ModelFlowRelationID   = dr.ModelFlowRelationID,
                RunTime               = dr.RunTime,
                SubmitFlag            = (Saas.Tools.FlowWFService.SubmitFlag)((int)dr.SubmitFlag),
                SubModelCode          = dr.SubModelCode,
                UserInfo              = new ObservableCollection <Saas.Tools.FlowWFService.UserInfo>(),
            };


            if (dr.UserInfo != null)
            {
                dr.UserInfo.ToList().ForEach(item =>
                {
                    Saas.Tools.FlowWFService.UserInfo ui = new Saas.Tools.FlowWFService.UserInfo
                    {
                        UserID         = item.UserID,
                        UserName       = item.UserName,
                        CompanyID      = item.CompanyID,
                        CompanyName    = item.CompanyName,
                        DepartmentID   = item.DepartmentID,
                        DepartmentName = item.DepartmentName,
                        PostID         = item.PostID,
                        PostName       = item.PostName
                    };
                    newDr.UserInfo.Add(ui);
                });
            }
            if (dr.DictCounterUser != null)
            {
                dr.DictCounterUser.ToList().ForEach(item =>
                {
                    var key = new SMT.Saas.Tools.FlowWFService.Role_UserType()
                    {
                        IsOtherCompany = item.Key.IsOtherCompany,
                        Name           = item.Key.Name,
                        OtherCompanyID = item.Key.OtherCompanyID,
                        Remark         = item.Key.Remark,
                        RoleName       = item.Key.RoleName,
                        UserType       = item.Key.UserType
                    };
                    var value = new ObservableCollection <Saas.Tools.FlowWFService.UserInfo>();
                    item.Value.ForEach(itemU =>
                    {
                        var ui = new Saas.Tools.FlowWFService.UserInfo
                        {
                            UserID         = itemU.UserID,
                            UserName       = itemU.UserName,
                            CompanyID      = itemU.CompanyID,
                            CompanyName    = itemU.CompanyName,
                            DepartmentID   = itemU.DepartmentID,
                            DepartmentName = itemU.DepartmentName,
                            PostID         = itemU.PostID,
                            PostName       = itemU.PostName
                        };
                        value.Add(ui);
                    });

                    newDr.DictCounterUser.Add(key, value);
                });
            }

            Saas.Tools.FlowWFService.SubimtFlowCompletedEventArgs args = new Saas.Tools.FlowWFService.SubimtFlowCompletedEventArgs(new object[] { newDr },
                                                                                                                                   null, e.Cancelled, e.UserState);
            return(args);
        }