public static object[] GetDirectXSs(BPMConnection cn, string memberFullName, bool includeDisabledUser) { List <object> rv = new List <object>(); DirectXSCollection directXSs = Member.GetDirectXSs(cn, memberFullName); foreach (DirectXS xs in directXSs) { Member xsMember = Member.FromFullName(cn, xs.MemberFullName); User user = xsMember.GetUser(cn); if (user.Disabled && !includeDisabledUser) { continue; } rv.Add( new { ou = xsMember.GetParentOU(cn).GetFriendlyFullName(cn), LeaderTitle = xsMember.LeaderTitle, Level = xsMember.Level, Account = xsMember.UserAccount, UserName = YZStringHelper.GetUserShortName(xs.UserAccount, xs.UserFullName) } ); } return(rv.ToArray()); }
public virtual object GetTeamReports(HttpContext context) { YZRequest request = new YZRequest(context); string myaccount = request.GetString("account", YZAuthHelper.LoginUserAccount); DateTime date = request.GetDateTime("date"); BPMObjectNameCollection accounts = new BPMObjectNameCollection(); accounts.Add(myaccount); using (BPMConnection bpmcn = new BPMConnection()) { bpmcn.WebOpen(); MemberCollection positions = OrgSvr.GetUserPositions(bpmcn, myaccount); foreach (Member position in positions) { DirectXSCollection xss = position.GetDirectXSs(bpmcn); foreach (DirectXS xs in xss) { if (!accounts.Contains(xs.UserAccount)) { accounts.Add(xs.UserAccount); } } } DailyReportCollection rv = new DailyReportCollection(); foreach (string account in accounts) { DailyReport dailyReport; using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { using (IDbConnection cn = provider.OpenConnection()) { dailyReport = DailyReportManager.TryGetReport(provider, cn, account, date); if (dailyReport == null) { dailyReport = new DailyReport(); dailyReport.Account = account; dailyReport.Date = date; } rv.Add(dailyReport); } } User user = User.TryGetUser(bpmcn, account); dailyReport["ShortName"] = user == null ? "" : user.ShortName; } return(rv); } }
public virtual object GetTeamList(HttpContext context) { YZRequest request = new YZRequest(context); DateTime date = request.GetDateTime("date"); string uid = YZAuthHelper.LoginUserAccount; BPMObjectNameCollection accounts = new BPMObjectNameCollection(); accounts.Add(uid); using (BPMConnection bpmcn = new BPMConnection()) { bpmcn.WebOpen(); MemberCollection positions = OrgSvr.GetUserPositions(bpmcn, uid); foreach (Member position in positions) { DirectXSCollection xss = position.GetDirectXSs(bpmcn); foreach (DirectXS xs in xss) { if (!accounts.Contains(xs.UserAccount)) { accounts.Add(xs.UserAccount); } } } using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { using (IDbConnection cn = provider.OpenConnection()) { FootmarkCollection footmarks = FootmarkManager.GetFootmarks(provider, cn, accounts, date); return(new { children = this.SerializeAsTeamList(bpmcn, footmarks), unsignedusers = footmarks.GetUnSignedUsers(bpmcn, accounts) }); } } } }