Esempio n. 1
0
 public void CompleteWorkItemAsync(int workItemId, List <IApproveUser> nextApproveUserList)
 {
     try
     {
         this.UpdateWorkItemAsCompleting(workItemId);
         int num = this._context.GetNextIdentity_Int(false);
         SysWorkflowMessage msg = new SysWorkflowMessage {
             MessageId   = num,
             MessageType = WorkflowMessageTypeEnum.CompletingWorkItem,
             WorkItemId  = workItemId,
             State       = SysWorkflowMessageStateEnum.Inited,
             CreateTime  = DateTime.Now
         };
         if ((nextApproveUserList != null) && (nextApproveUserList.Count > 0))
         {
             msg.NextApproveUserList.AddRange(nextApproveUserList);
         }
         this.SaveWorkflowMessage(msg);
     }
     catch (Exception exception)
     {
         AppLogHelper.Error(exception, "完成工作项失败,workitem_id={0}", new object[] { workItemId });
         throw;
     }
 }
 private static void ProcessError(SysWorkflowMessage msg, Exception ex, string connectionStringOrName)
 {
     if (string.IsNullOrWhiteSpace(connectionStringOrName))
     {
         connectionStringOrName = DataContext.BizConnectionStringDefault;
     }
     try
     {
         using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Suppress))
         {
             using (BizDataContext context = new BizDataContext(connectionStringOrName, true))
             {
                 if (msg.State != SysWorkflowMessageStateEnum.Running)
                 {
                     throw new Exception(string.Format("消息ID:{0}的状态不为Running", msg.MessageId));
                 }
                 msg.State            = SysWorkflowMessageStateEnum.Error;
                 msg.LastErrorMessage = ex.Message;
                 string sql = string.Format("UPDATE SysWorkflowMessage SET STATE = {0}, LastErrorMessage = {1} WHERE MessageId = {2} AND (STATE = {3} or STATE = {4}) ", new object[] { context.AddPrefixToParameterName("NewState"), context.AddPrefixToParameterName("LastErrorMessage"), context.AddPrefixToParameterName("MessageId"), context.AddPrefixToParameterName("OldState1"), context.AddPrefixToParameterName("OldState2") });
                 if (context.ExecuteNonQuery(sql, new DbParameter[] { context.CreateParameterWithPrefix("NewState", Convert.ToInt32(SysWorkflowMessageStateEnum.Error), typeof(int)), context.CreateParameterWithPrefix("LastErrorMessage", ex.Message, typeof(string)), context.CreateParameterWithPrefix("MessageId", msg.MessageId, typeof(int)), context.CreateParameterWithPrefix("OldState1", Convert.ToInt32(SysWorkflowMessageStateEnum.Running), typeof(int)), context.CreateParameterWithPrefix("OldState2", Convert.ToInt32(SysWorkflowMessageStateEnum.Inited), typeof(int)) }) <= 0)
                 {
                     AppLogHelper.Information("将工作流消息更改为错误状态时更新行数为0: MessageId={0}", new object[] { msg.MessageId });
                 }
             }
             scope.Complete();
         }
         Console.WriteLine(ex.Message);
     }
     catch (Exception exception)
     {
         AppLogHelper.Error(exception, "将工作流消息更改为错误状态时失败: MessageId={0}", new object[] { msg.MessageId });
         Console.WriteLine(exception.Message);
     }
 }
Esempio n. 3
0
        /// <summary>Сохраняет лоты пачками, чтобы работало быстрее.</summary>
        public static void SavePositionsAsPackages(List <Position> allPositions)
        {
            AucTraderDbContext context = new AucTraderDbContext();

            // Сохраняем по 300 штук.
            const int MX = 300;

            int mx = MX;

            for (int i = 0; i < allPositions.Count; i++)
            {
                Position aucPosition = allPositions[i];
                context.Positions.AddOrUpdate((Position)aucPosition);

                // Пришло ли время сохранять.
                if (i == mx)
                {
                    mx += MX;
                    context.SaveChanges();

                    // Пересоздаем контекст, вроде так еще быстрее работает.
                    context.Dispose();
                    context = new AucTraderDbContext();
                }
            }

            // Сохраняем то, что осталось.
            context.SaveChanges();
            context.Dispose();

            AppLogHelper.TraceInformation(String.Format("Сохранено {0} записей.", allPositions.Count));
        }
Esempio n. 4
0
        public int StartProcess(string processName, int startUserId, int relativeObjectId)
        {
            int num2;

            try
            {
                int num;
                ProcessInstanceCacheFactory runtimeContext = new ProcessInstanceCacheFactory(this._context);
                SysProcess    processCache = runtimeContext.PCacheFactory.GetProcessCache(processName);
                ProcessEngine engine       = new ProcessEngine(runtimeContext, processCache);
                if (processCache.ProcessCategory == 2)
                {
                    num = engine.StartFormProcess(startUserId, relativeObjectId);
                }
                else
                {
                    num = engine.StartProcess(startUserId, relativeObjectId);
                }
                num2 = num;
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(string.Format("启动流程[{0}], obj={1}失败", processName, relativeObjectId), exception);
                throw exception;
            }
            return(num2);
        }
Esempio n. 5
0
        public List <SysActivity> GetNextActivityList(string processName)
        {
            List <SysActivity> list2;

            try
            {
                List <SysActivity> list         = new List <SysActivity>();
                SysProcess         processCache = this._processCache.GetProcessCache(processName);
                if (processCache == null)
                {
                    throw new ApplicationException(string.Format("流程名称[{0}]不正确", processName));
                }
                SysActivity activity = processCache.Activities.FirstOrDefault <SysActivity>(p => p.ActivityType == 1);
                if (activity != null)
                {
                    list = (from p in activity.FromTransitions select p.PostActivity).ToList <SysActivity>();
                }
                list2 = list;
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(string.Format("GetNextActivityList,processName=[{0}]失败", processName), exception);
                throw exception;
            }
            return(list2);
        }
Esempio n. 6
0
        private void UpdateData2()
        {
            try
            {
                Dictionary <long, Position> oldPositions = PositionsHelper.GetLastLoadPositions2()
                                                           .ToDictionary(el => el.Auc);

                IAucJsonFile    file         = GetAucJsonFile();
                List <Position> newPositions = file.AucPositions.ToList();

                Dictionary <long, Position> toUpdatePositions = new Dictionary <long, Position>();
                List <Position>             newHardPositions  = new List <Position>();
                List <Position>             oldHardPositions  = new List <Position>();

                DateTime withdrwanDateTime = newPositions.First().LoadDateTime;
                foreach (Position newPos in newPositions)
                {
                    Position oldPos = null;
                    // Если не получилось найти, значит лот новый (раньше такого лота не было, позможно перевыставили).
                    if (!oldPositions.TryGetValue(newPos.Auc, out oldPos))
                    {
                        // Не нашли старой позиции, значит новая, может быть перевыставили и пох, пока что.
                        newHardPositions.Add(newPos);
                        continue;
                    }

                    // Нашли старую идентичную позицию, обновим ее новыми даннымы.
                    if (oldPos != null)
                    {
                        newPos.Id = oldPos.Id;
                        toUpdatePositions.Add(newPos.Auc, newPos);
                    }
                }

                foreach (var oldPos in oldPositions.Values)
                {
                    Position pos;
                    if (!toUpdatePositions.TryGetValue(oldPos.Auc, out pos))
                    {
                        // Не смогли найти, значит лот выбыл.
                        oldPos.WithdrawnDateTime = withdrwanDateTime;
                        oldHardPositions.Add(oldPos);
                    }
                }

                // Закрываем старые лоты.
                AucTraderDbContextHelper.SavePositionsAsPackages(oldHardPositions);

                // Обновляем старые данные.
                AucTraderDbContextHelper.SavePositionsAsPackages(toUpdatePositions.Values.ToList());

                // Обновляем старые лоты.
                AucTraderDbContextHelper.SavePositionsAsPackages(newHardPositions);
            }
            catch (Exception e)
            {
                AppLogHelper.TraceError("", e);
            }
        }
Esempio n. 7
0
        public int StartProcessAsync(long processId, int startUserId, int relativeObjectId)
        {
            SysProcess processCache = this._processCache.GetProcessCache(processId);

            if (processCache == null)
            {
                string errorInfo = string.Format("未找到流程,id={0}", processId);
                AppLogHelper.Error(startUserId, errorInfo, relativeObjectId.ToString());
                throw new ApplicationException(errorInfo);
            }
            return(this.StartProcessAsync(processCache, startUserId, relativeObjectId, null));
        }
Esempio n. 8
0
        private int StartProcessAsync(SysProcess process, int startUserId, int relativeObjectId, List <IApproveUser> nextApproveUserList)
        {
            int num3;

            try
            {
                int num = this._context.GetNextIdentity_Int(false);
                SysProcessInstance instance = new SysProcessInstance {
                    StartTime         = new DateTime?(DateTime.Now),
                    InstanceStatus    = 0,
                    ObjectId          = relativeObjectId,
                    ProcessId         = new long?(process.ProcessId),
                    ProcessInstanceId = num,
                    StartUserId       = new int?(startUserId)
                };
                if (process.ProcessCategory == 2)
                {
                    instance.FormInstanceId = new int?(relativeObjectId);
                    T_User user = this._context.FindById <T_User>(new object[] { startUserId });
                    if (user != null)
                    {
                        T_Department department = this._context.FindById <T_Department>(new object[] { user.Department_ID });
                        if (department != null)
                        {
                            instance.StartDeptId = new int?(department.Department_ID);
                        }
                    }
                }
                int num2 = this._context.GetNextIdentity_Int(false);
                SysWorkflowMessage msg = new SysWorkflowMessage {
                    ProcessId         = process.ProcessId,
                    ProcessInstanceId = num,
                    CreateTime        = DateTime.Now,
                    MessageId         = num2,
                    MessageType       = WorkflowMessageTypeEnum.StartingProcess,
                    OperationUserId   = startUserId,
                    State             = SysWorkflowMessageStateEnum.Inited
                };
                if ((nextApproveUserList != null) && (nextApproveUserList.Count > 0))
                {
                    msg.NextApproveUserList.AddRange(nextApproveUserList);
                }
                this.SaveWorkflowMessage(msg);
                this._context.Insert(instance);
                num3 = num;
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(startUserId, exception, "启动流程[{0}]失败, 流程id={1}, 对象id={2}", new object[] { process.ProcessId, process.ProcessName, relativeObjectId });
                throw;
            }
            return(num3);
        }
Esempio n. 9
0
        public int StartProcessAsync(string processName, int startUserId, int relativeObjectId, List <IApproveUser> nextApproveUserList)
        {
            SysProcess processCache = this._processCache.GetProcessCache(processName);

            if (processCache == null)
            {
                string errorInfo = string.Format("未找到流程name={0}", processName);
                AppLogHelper.Error(startUserId, errorInfo, relativeObjectId.ToString());
                throw new ApplicationException(errorInfo);
            }
            return(this.StartProcessAsync(processCache, startUserId, relativeObjectId, nextApproveUserList));
        }
Esempio n. 10
0
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="agreement">协议</param>
        public static ResultObj Init(IAgreementProvider agreement)
        {
            AnalyticAgreement.AgreementProvider = agreement;

            DeviceInfo.IsFirstLoad = true;
            DeviceInfo.RootFolder  = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal);
            string dataBasePath = Path.Combine(DeviceInfo.RootFolder, Config.DataBaseName);

            if (File.Exists(dataBasePath))
            {
                DeviceInfo.IsFirstLoad = false;
            }

            //初始化AppLog
            AppLogHelper.Init();

            if (DeviceInfo.IsFirstLoad)
            {
                //如果第一次启动则创建数据库表
                var db = DbConHelper.NewDbCon();
                db.CreateTable <UserCertificate>();
                db.CreateTable <UserConfigure>();
            }
            else
            {
                var db = DbConHelper.NewDbCon();
                var userCertificate = db.Table <UserCertificate>().FirstOrDefault();
                if (userCertificate != null)
                {
                    UserContext.UserId   = userCertificate.UserId;
                    UserContext.UserName = userCertificate.UserName;
                }
            }

            HtmlFileManage.Init();

            //var ss = CrossDeviceInfo.Current.Platform;
            //var sse = CrossConnectivity.Current;
            //var sese = CrossGeolocator.Current;
            //sese.AllowsBackgroundUpdates = true;
            //sese.StartListeningAsync(1, 90);
            //var a = sese.GetPositionAsync();
            //var sesea = a.Result;

            //sese.PositionChanged += (sender, args) =>
            //{
            //    var sse111 = args.Position;
            //    CrossLocalNotifications.Current.Show("坐标", sse111.Latitude + "," + sse111.Longitude, 0, DateTime.Now.AddSeconds(10));
            //};
            //var sesaae = CrossMedia.Current;
            return(ResultObj.Ok());
        }
Esempio n. 11
0
        public HtmlDocument LoadDocument(string url)
        {
            var htmlDoc = new HtmlDocument();

            try {
                using (var responseStream = CreateRequest(url).GetResponse().GetResponseStream()) {
                    htmlDoc.Load(responseStream, Encoding.UTF8);
                }
            } catch (WebException webEx) {
                AppLogHelper.Log(AppLoggerBase.LogTarget.File, "Error connecting to specified URL: " + webEx.Message + ", retrying...");
            }

            return(htmlDoc);
        }
Esempio n. 12
0
 public void CancelProcess(int processInstanceId)
 {
     try
     {
         ProcessInstanceCacheFactory runtimeContext       = new ProcessInstanceCacheFactory(this._context);
         SysProcessInstance          processInstanceCache = runtimeContext.GetProcessInstanceCache(processInstanceId);
         new ProcessEngine(runtimeContext, processInstanceCache).CancelProcess(processInstanceId);
     }
     catch (Exception exception)
     {
         AppLogHelper.Error(string.Format("撤消流程实例[{0}]失败", processInstanceId), exception);
         throw;
     }
 }
Esempio n. 13
0
 public void RejectApproveWorkItem(int workItemId, string approveComment, long nextActivityId)
 {
     try
     {
         ProcessInstanceCacheFactory runtimeContext = new ProcessInstanceCacheFactory(this._context);
         SysProcessInstance          processInstanceCacheByWorkItem = runtimeContext.GetProcessInstanceCacheByWorkItem(workItemId);
         new ProcessEngine(runtimeContext, processInstanceCacheByWorkItem).RejectApproveWorkItem(workItemId, approveComment, nextActivityId);
     }
     catch (Exception exception)
     {
         AppLogHelper.Error(string.Format("完成【签核流程】的工作项[{0}]失败", workItemId), exception);
         throw exception;
     }
 }
Esempio n. 14
0
 public void CompleteApproveWorkItem(int workItemId, ApproveResultEnum approveResult, string approveComment, List <IApproveUser> nextApproveUserList, bool addUser = false, int?addUserId = new int?())
 {
     try
     {
         ProcessInstanceCacheFactory runtimeContext = new ProcessInstanceCacheFactory(this._context);
         SysProcessInstance          processInstanceCacheByWorkItem = runtimeContext.GetProcessInstanceCacheByWorkItem(workItemId);
         new ProcessEngine(runtimeContext, processInstanceCacheByWorkItem).CompleteApproveWorkItem(workItemId, approveResult, approveComment, nextApproveUserList, addUser, addUserId);
     }
     catch (Exception exception)
     {
         AppLogHelper.Error(string.Format("完成【签核流程】的工作项[{0}]失败", workItemId), exception);
         throw exception;
     }
 }
Esempio n. 15
0
 public void CompleteWorkItemSelf(int workItemId)
 {
     try
     {
         ProcessInstanceCacheFactory runtimeContext = new ProcessInstanceCacheFactory(this._context);
         SysProcessInstance          processInstanceCacheByWorkItem = runtimeContext.GetProcessInstanceCacheByWorkItem(workItemId);
         new ProcessEngine(runtimeContext, processInstanceCacheByWorkItem).CompleteWorkItemSelf(workItemId);
     }
     catch (Exception exception)
     {
         AppLogHelper.Error(string.Format("完成【普通流程】的工作项,仅完成自身[{0}]失败", workItemId), exception);
         throw exception;
     }
 }
Esempio n. 16
0
        public virtual IUser GetUserById(int userId)
        {
            IUser user;

            try
            {
                user = this.GetUser(userId);
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(exception);
                throw exception;
            }
            return(user);
        }
Esempio n. 17
0
        public virtual IDepartment GetDepartmentById(int departmentId)
        {
            IDepartment dept;

            try
            {
                dept = this.GetDept(departmentId);
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(exception);
                throw exception;
            }
            return(dept);
        }
Esempio n. 18
0
 private void secondTimer_Elapsed(object sender, ElapsedEventArgs e)
 {
     try
     {
         if (!this.mainTimer.Enabled)
         {
             this.mainTimer.Start();
         }
     }
     catch (Exception exception)
     {
         AppLogHelper.Error(exception);
         this.Init();
     }
 }
Esempio n. 19
0
        public int StartProcess(string processName, int startUserId, int relativeObjectId, List <IApproveUser> nextApproveUserList)
        {
            int num2;

            try
            {
                ProcessInstanceCacheFactory runtimeContext = new ProcessInstanceCacheFactory(this._context);
                SysProcess processCache = runtimeContext.PCacheFactory.GetProcessCache(processName);
                num2 = new ProcessEngine(runtimeContext, processCache).StartProcess(startUserId, relativeObjectId, nextApproveUserList);
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(string.Format("启动流程[{0}], obj={1}失败", processName, relativeObjectId), exception);
                throw exception;
            }
            return(num2);
        }
        private void BuildSsoAuthenticate(IOwinContext context)
        {
            string ssoToken = GetSsoToken(context);

            this.LogSsoToken(context, ssoToken);
            if (!string.IsNullOrWhiteSpace(ssoToken))
            {
                SysUser userFromToken;
                UserManager <SysUser> userManager = new UserManager <SysUser>(new UserStore());
                this.TimeExpand(context, userManager);
                try
                {
                    userFromToken = LoginUserHelper.GetUserFromToken(ssoToken);
                }
                catch (Exception exception)
                {
                    AppLogHelper.Information(exception.ToString());
                    userFromToken = null;
                }
                if (userFromToken != null)
                {
                    IAuthenticationManager manager2 = context.Authentication;
                    manager2.SignOut("ExternalCookie");
                    ClaimsIdentity identity = userManager.CreateIdentity(userFromToken, "ApplicationCookie");
                    identity.AddUserData(userFromToken);
                    AuthenticationProperties properties = new AuthenticationProperties {
                        IsPersistent = true
                    };
                    manager2.SignIn(properties, identity);
                    try
                    {
                        Trace.WriteLine(new StringBuilder().Append(" find user: url = ").Append(context.Request.Uri.AbsolutePath).Append("; user_id = ").Append(identity.GetUserId()).Append("; user_name = ").Append(identity.GetUserName()));
                    }
                    catch
                    {
                        // ignored
                    }
                    ClaimsPrincipal principal = new ClaimsPrincipal(identity);
                    context.Request.Set("User", principal);
                }
            }
        }
 private void TimeExpand(IOwinContext context, UserManager <SysUser, string> userManager)
 {
     try
     {
         if (context.Authentication.User != null)
         {
             ClaimsIdentity identity = context.Authentication.User.Identity as ClaimsIdentity;
             if (identity != null)
             {
                 SysUser userData = identity.GetUserData();
                 if ((userData != null) && !string.IsNullOrWhiteSpace(userData.SsoToken))
                 {
                     DateTime now = DateTime.Now;
                     DateTime?lastTokenBeatTime = userData.LastTokenBeatTime;
                     DateTime time2             = lastTokenBeatTime.HasValue ? lastTokenBeatTime.GetValueOrDefault() : DateTime.Now.AddHours(-1.0);
                     TimeSpan span = now - time2;
                     if (span.TotalMinutes > max_ticks)
                     {
                         string accentUrl = LoginUserHelper.AppendTokenToUrl(LoginUserHelper.TokenValidateUrl, userData);
                         string errMsg    = string.Empty;
                         if (!LoginUserHelper.ExtSsoTime(accentUrl, userData.SsoToken, out errMsg))
                         {
                             AppLogHelper.Information(errMsg);
                         }
                         IAuthenticationManager manager = context.Authentication;
                         manager.SignOut("ExternalCookie");
                         ClaimsIdentity identity2 = userManager.CreateIdentity(userData, "ApplicationCookie");
                         identity2.AddUserData(userData);
                         AuthenticationProperties properties = new AuthenticationProperties {
                             IsPersistent = true
                         };
                         manager.SignIn(properties, identity2);
                     }
                 }
             }
         }
     }
     catch (Exception exception)
     {
         AppLogHelper.Information(exception.ToString());
     }
 }
Esempio n. 22
0
        public virtual IUser GetDepartmentManager(int departmentId)
        {
            IUser user2;

            try
            {
                T_Department dept = this.GetDept(departmentId);
                if ((dept != null) && dept.Manager_ID.HasValue)
                {
                    return(this.GetUser(dept.Manager_ID.Value));
                }
                user2 = null;
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(exception);
                throw exception;
            }
            return(user2);
        }
Esempio n. 23
0
        public virtual List <IRole> GetRoles()
        {
            List <IRole> list2;
            DataContext  ctx = this.GetContext();

            try
            {
                list2 = ctx.Set <T_Role>().Cast <IRole>().ToList <IRole>();
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(exception);
                throw exception;
            }
            finally
            {
                this.ReleaseContext(ctx);
            }
            return(list2);
        }
Esempio n. 24
0
        public virtual List <IUser> GetUsers()
        {
            List <IUser> list2;
            DataContext  ctx = this.GetContext();

            try
            {
                list2 = ctx.FetchAll <T_User>().Cast <IUser>().ToList <IUser>();
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(exception);
                throw exception;
            }
            finally
            {
                this.ReleaseContext(ctx);
            }
            return(list2);
        }
Esempio n. 25
0
        public virtual List <IUser> GetDepartmentRoleUsers(int departmentId, int roleId)
        {
            List <IUser> list;
            DataContext  ctx = this.GetContext();

            try
            {
                string sql = string.Format("select a.* from T_User a left join T_User_Role b on a.User_ID = b.User_ID where b.Role_ID = {0} and a.Department_ID = {1}", roleId, departmentId);
                list = ctx.ExecuteObjectSet <T_User>(sql, new DbParameter[0]).Cast <IUser>().ToList <IUser>();
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(exception);
                throw exception;
            }
            finally
            {
                this.ReleaseContext(ctx);
            }
            return(list);
        }
Esempio n. 26
0
        public virtual List <IRole> GetUserRoles(int userId)
        {
            List <IRole> list;
            DataContext  ctx = this.GetContext();

            try
            {
                string sql = string.Format("select a.* from T_Role a left join T_User_Role b on a.Role_ID = b.Role_ID where b.User_ID = {0}", userId);
                list = ctx.ExecuteObjectSet <T_Role>(sql, new DbParameter[0]).Cast <IRole>().ToList <IRole>();
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(exception);
                throw exception;
            }
            finally
            {
                this.ReleaseContext(ctx);
            }
            return(list);
        }
Esempio n. 27
0
        public virtual bool IsRootDepartment(int departmentId)
        {
            bool flag2;

            try
            {
                bool         flag = false;
                T_Department dept = this.GetDept(departmentId);
                if (!(dept.Parent_ID.HasValue && (dept.Parent_ID.Value != 0)))
                {
                    flag = true;
                }
                flag2 = flag;
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(exception);
                throw exception;
            }
            return(flag2);
        }
Esempio n. 28
0
        public virtual List <IDepartment> GetChildDepartments(int departmentId)
        {
            List <IDepartment> list2;
            DataContext        ctx = this.GetContext();

            try
            {
                string condition = string.Format("Parent_ID = {0}", departmentId);
                list2 = ctx.Where <T_Department>(condition, new DbParameter[0]).Cast <IDepartment>().ToList <IDepartment>();
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(exception);
                throw exception;
            }
            finally
            {
                this.ReleaseContext(ctx);
            }
            return(list2);
        }
Esempio n. 29
0
 public bool DeleteRoleFunction(int roleId)
 {
     try
     {
         using (BizDataContext context = new BizDataContext(true))
         {
             List <T_Role_Function> list = context.Where <T_Role_Function>(r => r.Role_ID == roleId);
             if ((list != null) && (list.Count > 0))
             {
                 foreach (T_Role_Function function in list)
                 {
                     context.Delete(function);
                 }
             }
         }
         return(true);
     }
     catch (Exception exception)
     {
         AppLogHelper.Error(exception);
         return(false);
     }
 }
Esempio n. 30
0
        public List <SysActivity> GetNextActivityList(int workItemId)
        {
            List <SysActivity> list2;

            try
            {
                SysWorkItem        item;
                List <SysActivity> list = new List <SysActivity>();
                new ProcessInstanceCacheFactory(this._context).GetProcessInstanceCacheByWorkItem(workItemId, out item);
                SysActivity activity = item.ActivityInstance.Activity;
                if (activity != null)
                {
                    list = (from p in activity.FromTransitions select p.PostActivity).ToList <SysActivity>();
                }
                list2 = list;
            }
            catch (Exception exception)
            {
                AppLogHelper.Error(string.Format("GetNextActivityList,workItemId=[{0}]失败", workItemId), exception);
                throw exception;
            }
            return(list2);
        }