Ejemplo n.º 1
0
 public List<FlowUserInfo> GetFlowUserByUserID(string userID)
 {
     using (SysUserBLL bll = new SysUserBLL())
     {
         Tracer.Debug("流程调用了GetFlowUserByUserID:" + "用户ID:" + userID );
         return bll.GetFlowUserByUserID(userID);
     }
 }
Ejemplo n.º 2
0
        public FlowUser(string companyid, string userid,  string modelCode)
        {
            string names = "";
            try
            {
                ModelInfo modelinfo = new ModelInfo();
                List<SMT.HRM.CustomModel.Permission.FlowUserInfo> Users = new List<HRM.CustomModel.Permission.FlowUserInfo>();
                #region ModelInfo加入缓存
                object modelinfoObj= CacheProvider.GetCache(modelCode);
                if (modelinfoObj != null)
                {
                    modelinfo = (ModelInfo)modelinfoObj;
                    Tracer.Debug("从缓存中获取 ModelInfo");
                }
                else
                {
                    Tracer.Debug("从数据库获取 通过模块代码查询系统代码 开始 modelCode=" + modelCode);

                    modelinfo = FlowBLL.GetSysCodeByModelCode( modelCode);//对数据库操作
                    if (modelinfo != null)
                    {
                        CacheProvider.RemoveCache(modelCode);
                        CacheProvider.Add(modelCode, modelinfo);
                    }
                    else
                    {
                        Tracer.Debug("从数据库获取 通过模块代码查询系统代码 结果为空");
                    }
                    Tracer.Debug("从数据库获取 通过模块代码查询系统代码 结束 modelCode=" + modelCode);
                }
                #endregion
                this.ModelCode = modelCode;
                if (modelinfo != null)
                {
                    this.ModelName = modelinfo.ModelName;
                    this.SysCode = modelinfo.SysCode;
                }
                #region FlowUserInfo加入缓存
                object FlowUserInfoObj = CacheProvider.GetCache(userid);
                if (FlowUserInfoObj != null)
                {
                    Users = (List<SMT.HRM.CustomModel.Permission.FlowUserInfo>)FlowUserInfoObj;
                    Tracer.Debug("从缓存中获取 FlowUserInfo");
                }
                else
                {
                    Tracer.Debug("从数据库获取 FlowUserInfo 开始 userid=" + userid);
                    using (SysUserBLL bll = new SysUserBLL())
                    {
                        Tracer.Debug("流程调用了GetFlowUserByUserID:" + "用户ID:" + userid);
                        Users = bll.GetFlowUserByUserID(userid);
                    }
                    if (Users != null)
                    {
                        CacheProvider.RemoveCache(userid);
                        CacheProvider.Add(userid, Users);
                    }
                    Tracer.Debug("从数据库获取 FlowUserInfo  结束 userid=" + userid);
                }
                #endregion

                foreach (var user in Users)
                {
                    if (user.CompayID == companyid)
                    {
                        names += "公司ID=" + user.CompayID+"\r\n";
                        names += "部门ID="  + user.DepartmentID+"\r\n";
                        names += "岗位ID="  + user.PostID+"\r\n";
                        names += "用户ID="  + user.UserID+"\r\n";

                        names += "公司名称="  + user.CompayName+"\r\n";
                        names += "部门名称="  +  user.DepartmentName+"\r\n";
                        names += "岗位名称=" +  user.PostName+"\r\n";
                        names += "用户名称=" + user.EmployeeName+"\r\n";

                        #region 用户基本信息
                        this.CompayID = user.CompayID;
                        this.DepartmentID = user.DepartmentID;
                        this.PostID = user.PostID;
                        this.UserID = user.UserID;

                        this.CompayName = user.CompayName;
                        this.DepartmentName = user.DepartmentName;
                        this.PostName = user.PostName;
                        this.UserName = user.EmployeeName;
                        this.Roles = new List<TM_SaaS_OA_EFModel.T_SYS_ROLE>();
                        foreach (var role in user.Roles)
                        {
                            if (role != null)
                            {
                                names += "角色ID=" + role.ROLEID + "\r\n";
                                names += "角色名称=" + role.ROLENAME + "\r\n\r\n";
                            }

                            this.Roles.Add(role);
                        }
                        #endregion
                    }
                }
                Tracer.Debug("流程单据所属人身份:\r\n" + names);
            }
            catch (Exception e)
            {
                ErrorMsg += "获取当前提交,审核单据时的用户信息出错:names=" + names + "异常信息:\r\n" + e.ToString()+"\r\n";
                Tracer.Debug("获取当前提交,审核单据时的用户信息出错:names=" + names + "异常信息:\r\n" + e.ToString());
            }
        }