Beispiel #1
0
        public async Task <bool> RunDailyTask(bool noEmail = false)
        {
            bool result = true;

            // Check client tool auths
            ResourceClientUtility.CheckExpiringClients(ResourceClientUtility.SelectExpiringClients(), ResourceClientUtility.SelectExpiringEveryone(), noEmail);
            ResourceClientUtility.CheckExpiredClients(ResourceClientUtility.SelectExpiredClients(), ResourceClientUtility.SelectExpiredEveryone(), noEmail);

            using (var bc = new BillingClient())
            {
                BillingProcessResult bpr;

                // Update Data and DataClean tables
                bpr = await bc.BillingProcessDataUpdate(BillingCategory.Tool, true);

                result = result && bpr.Success;

                bpr = await bc.BillingProcessDataUpdate(BillingCategory.Room, true);

                result = result && bpr.Success;

                bpr = await bc.BillingProcessDataUpdate(BillingCategory.Store, true);

                result = result && bpr.Success;

                //2009-08-01 Populate the Billing temp tables
                DateTime ed     = DateTime.Now.Date.AddDays(-1); //must be yesterday
                DateTime period = ed.FirstOfMonth();

                bpr = await bc.BillingProcessStep1(BillingCategory.Tool, period, period.AddMonths(1), 0, 0, true, true);

                result = result && bpr.Success;

                bpr = await bc.BillingProcessStep1(BillingCategory.Room, period, period.AddMonths(1), 0, 0, true, true);

                result = result && bpr.Success;

                bpr = await bc.BillingProcessStep1(BillingCategory.Store, period, period.AddMonths(1), 0, 0, true, true);

                result = result && bpr.Success;
            }

            return(result);
        }