Exemple #1
0
        protected virtual MonthlyReportCollection ConvertToYearMonthResult(int year, MonthlyReportCollection reports)
        {
            MonthlyReportCollection rv = new MonthlyReportCollection();
            DateTime today             = DateTime.Today;
            int      months;

            if (today.Year == year)
            {
                months = today.Month;
            }
            else
            {
                months = 12;
            }

            for (int i = months; i > 0; i--)
            {
                MonthlyReport report = reports.TryGetItem(year, i);
                if (report == null)
                {
                    report         = new MonthlyReport();
                    report.IsEmpty = true;
                    report.ItemID  = -i;
                    report.TaskID  = -1;
                    report.Date    = new DateTime(year, i, 1);
                }
                rv.Add(report);

                report["Month"] = i;
            }

            return(rv);
        }
Exemple #2
0
        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);
                        }
                    }
                }

                MonthlyReportCollection rv = new MonthlyReportCollection();
                foreach (string account in accounts)
                {
                    MonthlyReport monthlyReport;

                    using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider)
                    {
                        using (IDbConnection cn = provider.OpenConnection())
                        {
                            monthlyReport = MonthlyReportManager.TryGetReport(provider, cn, account, date);

                            if (monthlyReport == null)
                            {
                                monthlyReport         = new MonthlyReport();
                                monthlyReport.Account = account;
                                monthlyReport.Date    = date;
                            }

                            rv.Add(monthlyReport);
                        }
                    }

                    User user = User.TryGetUser(bpmcn, account);
                    monthlyReport["ShortName"] = user == null ? "" : user.ShortName;
                }

                return(rv);
            }
        }