public override void ExecuteOption(OptionReport report)
        {
            string urlLoginName = _databaseImportDanskeBank.urlLoginName;
            string importFolder = _databaseImportDanskeBank.importFolder;

            SetDynamicsCrmConnectionIfEmpty(urlLoginName);

            string folder = Config.GetOrCreateResourcePath(importFolder);

            string[] files = Directory.GetFiles(folder, "*.xml");

            List <XDocument> bankXmlFiles = GetBankXml(files);

            if (bankXmlFiles.Any() == false)
            {
                report.Success = true;
                return;
            }

            bankXmlFiles.ForEach(ImportXml);

            files.ToList().ForEach(file => MoveFileToImported(file, folder));

            DataLayer.MongoData.Option.Schedule recalculateSchedule = new DataLayer.MongoData.Option.Schedule()
            {
                NextAllowedExecution         = DateTime.Now,
                Recurring                    = false,
                TimeBetweenAllowedExecutions = TimeSpan.FromSeconds(60),
                Enabled      = true,
                ActionOnFail = DataLayer.MongoData.Option.Schedule.ActionOnFailEnum.TryAgain,
            };
            DataLayer.MongoData.Option.Options.Logic.SumIndbetaling.Create(Connection, urlLoginName, "Auto Generated indbetaling calculation", recalculateSchedule);

            report.Success = true;
        }
Exemple #2
0
        public override void ExecuteOption(OptionReport report)
        {
            string           urlLoginName           = _databaseCreateImportFromStub.urlLoginName;
            DatabaseSchedule ImportFromStubSchedule = _databaseCreateImportFromStub.ImportFromStubSchedule;

            DatabaseUrlLogin      login = DatabaseUrlLogin.GetUrlLogin(Connection, urlLoginName);
            DynamicsCrmConnection dynamicsCrmConnection = DynamicsCrmConnection.GetConnection(login.Url, login.Username, login.Password);

            List <Campaign> campaigns = Campaign.ReadCampaignsToImportStubDataTo(dynamicsCrmConnection);

            foreach (Campaign campaign in campaigns)
            {
                DatabaseWebCampaign webCampaign = ReadOrCreateWebCampaign(campaign);

                bool importExists = DatabaseImportFromStub.ReadByWebCampaign(Connection, webCampaign).Any();
                if (importExists == false)
                {
                    DatabaseImportFromStub.Create(Connection, webCampaign._id, urlLoginName, campaign.name, ImportFromStubSchedule);
                }
            }

            report.Success = true;

            return;
        }