public override int SetDeleted(object id, bool enabled = false, bool modifiedUser = false)
        {
            List <KeyValuePair <string, object> > parameters = new List <KeyValuePair <string, object> >();

            parameters.Add(new KeyValuePair <string, object>(BaseWorkFlowCurrentEntity.FieldCategoryCode, id));
            parameters.Add(new KeyValuePair <string, object>(BaseWorkFlowCurrentEntity.FieldDeletionStateCode, 0));
            parameters.Add(new KeyValuePair <string, object>(BaseWorkFlowCurrentEntity.FieldEnabled, 0));
            BaseWorkFlowCurrentManager workFlowCurrentManager = new BaseWorkFlowCurrentManager(this.UserInfo);

            // 若现在还有流程在用这个模板,就不可以被删除
            if (!workFlowCurrentManager.Exists(parameters))
            {
                return(base.SetDeleted(id, enabled, modifiedUser));
            }
            return(0);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 删除用户的审核步骤
        /// </summary>
        /// <param name="userId">用户主键</param>
        /// <returns>影响行数</returns>
        public int DeleteAuditStepByUser(string userId)
        {
            int result = 0;
            // 1: 若还有当前审核中的记录,不能被删除掉
            BaseWorkFlowCurrentManager            manager    = new BaseWorkFlowCurrentManager(this.DbHelper, this.UserInfo);
            List <KeyValuePair <string, object> > parameters = new List <KeyValuePair <string, object> >(3);

            parameters.Add(new KeyValuePair <string, object>(BaseWorkFlowCurrentEntity.FieldAuditUserId, userId));
            parameters.Add(new KeyValuePair <string, object>(BaseWorkFlowCurrentEntity.FieldEnabled, 1));
            parameters.Add(new KeyValuePair <string, object>(BaseWorkFlowCurrentEntity.FieldDeletionStateCode, 0));
            if (!manager.Exists(parameters))
            {
                // 2: 删除用户的审核步骤。
                result = this.SetProperty(new KeyValuePair <string, object>(BaseWorkFlowStepEntity.FieldAuditUserId, userId), new KeyValuePair <string, object>(BaseWorkFlowStepEntity.FieldDeletionStateCode, 1));
                // 3: 同时把用户设置为无效。
                if (result > 0)
                {
                    BaseUserManager userManager = new BaseUserManager(this.UserInfo);
                    userManager.SetProperty(new KeyValuePair <string, object>(BaseUserEntity.FieldId, userId), new KeyValuePair <string, object>(BaseUserEntity.FieldEnabled, 0));
                }
            }
            return(result);
        }