Exemplo n.º 1
0
        public string RunDailyTask(bool noEmail)
        {
            string message = string.Empty;

            ProcessResult result;

            // Check client tool auths
            result   = ResourceClients.CheckExpiringClients(ResourceClients.SelectExpiringClients(), ResourceClients.SelectExpiringEveryone(), noEmail);
            message += result.LogText;

            result   = ResourceClients.CheckExpiredClients(ResourceClients.SelectExpiredClients(), ResourceClients.SelectExpiredEveryone(), noEmail);
            message += Environment.NewLine + Environment.NewLine + result.LogText;

            // update the DataClean and Data tables
            var fom = DateTime.Now.FirstOfMonth();
            var updateBillingResult = _provider.Billing.Process.UpdateBilling(new UpdateBillingArgs {
                BillingCategory = BillingCategory.Tool | BillingCategory.Room | BillingCategory.Store, ClientID = 0, Periods = new[] { fom }
            });

            message += Environment.NewLine + Environment.NewLine + string.Join(Environment.NewLine, updateBillingResult);

            var sendDailyTaskEmail = GlobalSettings.Current.GetGlobalSetting("SendDailyTaskEmail");

            if (!string.IsNullOrEmpty(sendDailyTaskEmail))
            {
                // send an email
                SendEmail.SendSystemEmail("OnlineServicesWorker.TaskManager.RunDailyTask", $"DailyTask result [{DateTime.Now:yyyy-MM-dd HH:mm:ss}]", message, sendDailyTaskEmail.Split(','), false);
            }

            return(message);
        }
Exemplo n.º 2
0
        private static void GetToolEngineers(IProvider provider, IResource res, GenericResult result)
        {
            object data = null;

            if (Validate(res, result))
            {
                IList <IResourceClient> toolEng          = ResourceClients.GetToolEngineers(res.ResourceID).ToList();
                int[]           existingToolEngClientIDs = toolEng.Select(x => AsAuthorized(x).ClientID).ToArray();
                IList <IClient> staff = provider.Data.Client.FindByPrivilege(ClientPrivilege.Staff, true).Where(x => !existingToolEngClientIDs.Contains(x.ClientID)).ToList();

                data = new
                {
                    ToolEngineers = toolEng.Select(x => new { AsAuthorized(x).ClientID, x.DisplayName }).OrderBy(x => x.DisplayName),
                    Staff         = staff.Select(x => new { x.ClientID, x.DisplayName }).OrderBy(x => x.DisplayName)
                };
                result.Data = data;
            }
        }
Exemplo n.º 3
0
 public virtual DateTime?WarningDate(double authExpWarning) => ResourceClients.GetWarningDate(this);
Exemplo n.º 4
0
 public virtual bool IsEveryone() => ResourceClients.IsEveryone(ClientID);
Exemplo n.º 5
0
 public virtual bool HasAuth(ClientAuthLevel auths) => ResourceClients.HasAuth(AuthLevel, auths);