Beispiel #1
0
        public virtual object GetEmployeeInfo(HttpContext context)
        {
            YZRequest request             = new YZRequest(context);
            string    account             = request.GetString("account");
            bool      includeDisabledUser = request.GetBool("includeDisabledUser", false);

            User          user;
            List <object> rvPositions = new List <object>();
            List <object> supervisors = new List <object>();
            List <object> directXSs   = new List <object>();
            List <object> roles       = new List <object>();

            object[] groups;

            using (BPMConnection cn = new BPMConnection())
            {
                cn.WebOpen();

                user = User.FromAccount(cn, account);

                MemberCollection positions = OrgSvr.GetUserPositions(cn, account);
                foreach (Member member in positions)
                {
                    rvPositions.Add(
                        new
                    {
                        ou          = member.GetParentOU(cn).GetFriendlyFullName(cn),
                        LeaderTitle = member.LeaderTitle,
                        Level       = member.Level
                    }
                        );

                    supervisors.AddRange(OrgManager.GetSupervisors(cn, member.FullName, includeDisabledUser));
                    directXSs.AddRange(OrgManager.GetDirectXSs(cn, member.FullName, includeDisabledUser));
                    roles.AddRange(OrgManager.GetRoles(cn, member.FullName));
                }

                groups = OrgManager.GetGroups(cn, account);
            }

            return(new {
                user = user,
                positions = rvPositions,
                supervisors = supervisors,
                directxss = directXSs,
                roles = roles,
                groups = groups
            });
        }
Beispiel #2
0
        public virtual object GetLoginUserOrgRelationship(HttpContext context)
        {
            string account = YZAuthHelper.LoginUserAccount;

            List <object> rvPositions = new List <object>();
            List <object> supervisors = new List <object>();
            List <object> directXSs   = new List <object>();
            List <object> roles       = new List <object>();

            object[] groups;

            using (BPMConnection cn = new BPMConnection())
            {
                cn.WebOpen();

                MemberCollection positions = OrgSvr.GetUserPositions(cn, account);
                foreach (Member member in positions)
                {
                    rvPositions.Add(
                        new
                    {
                        ou          = member.GetParentOU(cn).GetFriendlyFullName(cn),
                        LeaderTitle = member.LeaderTitle,
                        Level       = member.Level
                    }
                        );

                    supervisors.AddRange(OrgManager.GetSupervisors(cn, member.FullName, false));
                    directXSs.AddRange(OrgManager.GetDirectXSs(cn, member.FullName, false));
                    roles.AddRange(OrgManager.GetRoles(cn, member.FullName));
                }

                groups = OrgManager.GetGroups(cn, account);
            }

            return(new {
                success = true,
                positions = rvPositions,
                supervisors = supervisors,
                directxss = directXSs,
                roles = roles,
                groups = groups
            });
        }