Esempio n. 1
0
        protected virtual object SerializeAsTeamList(BPMConnection cn, FootmarkCollection footmarks)
        {
            List <object>  rv    = new List <object>();
            UserCollection users = footmarks.GetUsers(cn);

            foreach (User user in users)
            {
                FootmarkCollection userfootmarks = footmarks.SubSet(user.Account);

                rv.Add(new {
                    Account = user.Account,
                    Name    = user.ShortName,
                    Count   = userfootmarks.Count,
                    Items   = userfootmarks
                });
            }

            return(rv);
        }
Esempio n. 2
0
        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)
                        });
                    }
                }
            }
        }