Exemplo n.º 1
0
        DateTime tLimitFrom; // = checkLast_At.AddHours(-checkRetrace_Hours);
        #endregion

        public ParseOutlookItemsHandler(AppointmentPnDbContext dbContext, eFormCore.Core sdkCore, IOutlookOnlineController outlookOnlineController, OutlookExchangeOnlineAPIClient outlookExchangeOnlineAPIClient, IBus bus)
        {
            this._dbContext = dbContext;
            this.sdkCore    = sdkCore;
            this.outlookOnlineController        = outlookOnlineController;
            this.outlookExchangeOnlineAPIClient = outlookExchangeOnlineAPIClient;
            this.bus = bus;
            //checkLast_At = DateTime.Parse(sqlController.SettingRead(Settings.checkLast_At));
//            checkPreSend_Hours = double.Parse(sqlController.SettingRead(Settings.checkPreSend_Hours));
//            checkRetrace_Hours = double.Parse(sqlController.SettingRead(Settings.checkRetrace_Hours));
//            checkEvery_Mins = int.Parse(sqlController.SettingRead(Settings.checkEvery_Mins));
//            includeBlankLocations = bool.Parse(sqlController.SettingRead(Settings.includeBlankLocations));
            double checkPreSend_Hours = double.Parse(_dbContext.PluginConfigurationValues
                                                     .SingleOrDefault(x => x.Name == "AppointmentBaseSettings:checkPreSend_Hours")?.Value);
            double checkRetrace_Hours = double.Parse(_dbContext.PluginConfigurationValues
                                                     .SingleOrDefault(x => x.Name == "AppointmentBaseSettings:checkRetrace_Hours")?.Value);
            int checkEvery_Mins = int.Parse(_dbContext.PluginConfigurationValues
                                            .SingleOrDefault(x => x.Name == "AppointmentBaseSettings:checkEvery_Mins")?.Value);
            bool includeBlankLocations = bool.Parse(_dbContext.PluginConfigurationValues
                                                    .SingleOrDefault(x => x.Name == "AppointmentBaseSettings:includeBlankLocations")?.Value);

            userEmailAddess = outlookOnlineController.GetUserEmailAddress();

            timeOfRun  = DateTime.Now;
            tLimitTo   = timeOfRun.AddHours(+checkPreSend_Hours);
            tLimitFrom = timeOfRun.AddHours(-checkRetrace_Hours);
        }
Exemplo n.º 2
0
 public SiteAddedHandler(eFormCore.Core sdkCore, DbContextHelper dbContextHelper,
                         IWorkOrdersLocalizationService workOrdersLocalizationService)
 {
     _dbContext = dbContextHelper.GetDbContext();
     _sdkCore   = sdkCore;
     _workOrdersLocalizationService = workOrdersLocalizationService;
 }
 public OperationResult CreateEntityGroup(AdvEntitySelectableGroupEditModel editModel)
 {
     try
     {
         eFormCore.Core core        = _coreHelper.GetCore();
         EntityGroup    groupCreate = core.EntityGroupCreate(Constants.FieldTypes.EntitySelect, editModel.Name);
         if (editModel.AdvEntitySelectableItemModels.Any())
         {
             var entityGroup = core.EntityGroupRead(groupCreate.MicrotingUUID);
             var nextItemUid = entityGroup.EntityGroupItemLst.Count;
             foreach (var entityItem in editModel.AdvEntitySelectableItemModels)
             {
                 core.EntitySelectItemCreate(entityGroup.Id, entityItem.Name, entityItem.DisplayIndex, nextItemUid.ToString());
                 //entityGroup.EntityGroupItemLst.Add(new EntityItem(entityItem.Name,
                 //    entityItem.Description, nextItemUid.ToString(), Constants.WorkflowStates.Created));
                 nextItemUid++;
             }
             //core.EntityGroupUpdate(entityGroup);
         }
         return(new OperationResult(true, LocaleHelper.GetString("ParamCreatedSuccessfully", groupCreate.MicrotingUUID)));
     }
     catch (Exception)
     {
         return(new OperationResult(false, LocaleHelper.GetString("SelectableListCreationFailed")));
     }
 }
        public OperationDataResult <EntityGroup> GetEntityGroupExternally(string entityGroupUid, string token, string callerURL)
        {
            // Do some validation of the token. For now token is not valid
            //bool tokenIsValid = false;
            ExchangeIdToken         idToken = new ExchangeIdToken(token);
            IdTokenValidationResult result  = idToken.Validate(callerURL);

            if (result.IsValid)
            {
                try
                {
                    eFormCore.Core core = _coreHelper.GetCore();

                    EntityGroup entityGroup = core.EntityGroupRead(entityGroupUid);

                    return(new OperationDataResult <EntityGroup>(true, entityGroup));
                }
                catch (Exception)
                {
                    return(new OperationDataResult <EntityGroup>(false,
                                                                 LocaleHelper.GetString("ErrorWhileObtainSelectableList")));
                }
            }
            else
            {
                return(new OperationDataResult <EntityGroup>(false,
                                                             LocaleHelper.GetString("ErrorWhileObtainSelectableList")));
            }
        }
        public OperationDataResult <List <CommonDictionaryTextModel> > GetEntityGroupDictionary(string entityGroupUid)
        {
            try
            {
                eFormCore.Core core = _coreHelper.GetCore();

                EntityGroup entityGroup = core.EntityGroupRead(entityGroupUid);

                List <CommonDictionaryTextModel> mappedEntityGroupDict = new List <CommonDictionaryTextModel>();

                foreach (EntityItem entityGroupItem in entityGroup.EntityGroupItemLst)
                {
                    mappedEntityGroupDict.Add(new CommonDictionaryTextModel()
                    {
                        Id   = entityGroupItem.Id.ToString(),
                        Text = entityGroupItem.Name
                    });
                }

                return(new OperationDataResult <List <CommonDictionaryTextModel> >(true, mappedEntityGroupDict));
            }
            catch (Exception)
            {
                return(new OperationDataResult <List <CommonDictionaryTextModel> >(false,
                                                                                   LocaleHelper.GetString("ErrorWhileObtainSelectableList")));
            }
        }
Exemplo n.º 6
0
        //con
        public ServiceLogic()
        {
            try
            {
                LogEvent("Service called");
                {
                    serviceLocation = "";
                    sdkCore         = new eFormCore.Core();

                    //An aggregate catalog that combines multiple catalogs
                    var catalog = new AggregateCatalog();

                    //Adds all the parts found in the same assembly as the Program class
                    LogEvent("Start loading plugins...");
                    try
                    {
                        string path = Path.Combine(GetServiceLocation(), @"Plugins");
                        Directory.CreateDirectory(path);
                        LogEvent("Path for plugins is : " + path);
                        foreach (string dir in Directory.GetDirectories(path))
                        {
                            LogEvent("Loading Plugin : " + dir);
                            if (Directory.Exists(Path.Combine(dir, "netcoreapp2.2")))
                            {
                                LogEvent("Loading Plugin : " + Path.Combine(dir, "netcoreapp2.2"));
                                catalog.Catalogs.Add(new DirectoryCatalog(Path.Combine(dir, "netcoreapp2.2")));
                            }
                            else
                            {
                                LogEvent("Loading Plugin : " + dir);
                                catalog.Catalogs.Add(new DirectoryCatalog(dir));
                            }
                        }
                    } catch (Exception e) {
                        LogException("Something went wrong in loading plugins.");
                        LogException(e.Message);
                    }
                    //Create the CompositionContainer with the parts in the catalog
                    _container = new CompositionContainer(catalog);

                    //Fill the imports of this object
                    try
                    {
                        this._container.ComposeParts(this);
                    }
                    catch (CompositionException compositionException)
                    {
                        LogException(compositionException.ToString());
                    }
                }
                LogEvent("Service completed");
            }
            catch (Exception ex)
            {
                LogException(t.PrintException("Fatal Exception", ex));
            }
        }
Exemplo n.º 7
0
 public ScheduledItemExecutedHandler(
     DbContextHelper dbContextHelper,
     IBus bus,
     eFormCore.Core sdkCore)
 {
     _dbContext = dbContextHelper.GetDbContext();
     _bus       = bus;
     _sdkCore   = sdkCore;
 }
 public SearchListJob(
     DbContextHelper dbContextHelper,
     IBus bus,
     eFormCore.Core sdkCore)
 {
     _dbContext = dbContextHelper.GetDbContext();
     _bus       = bus;
     _sdkCore   = sdkCore;
 }
        public OperationResult SendSearchableGroup(string entityGroupUid)
        {
            try
            {
                eFormCore.Core core = _coreHelper.GetCore();

                return(new OperationResult(true, LocaleHelper.GetString("ParamDeletedSuccessfully", entityGroupUid)));
            }
            catch (Exception)
            {
                return(new OperationResult(false, LocaleHelper.GetString("ErrorWhileDeletingSelectableList")));
            }
        }
        private void FindFieldPreFillValues(eFormCore.Core sdkCore)
        {
            List <Field_Dto> fieldDtos = sdkCore.Advanced_TemplateFieldReadAll(TemplateId);

            foreach (Field_Dto fieldDto in fieldDtos)
            {
                string value = FindValue($"F{fieldDto.Id}#");

                if (!string.IsNullOrEmpty(value))
                {
                    AppointmentPrefillFieldValue appointmentPrefillFieldValue = new AppointmentPrefillFieldValue(fieldDto.Id, value);
                    AppointmentPrefillFieldValues.Add(appointmentPrefillFieldValue);
                }
            }
        }
        public OperationDataResult <EntityGroup> GetEntityGroup(string entityGroupUid)
        {
            try
            {
                eFormCore.Core core = _coreHelper.GetCore();

                EntityGroup entityGroup = core.EntityGroupRead(entityGroupUid);

                return(new OperationDataResult <EntityGroup>(true, entityGroup));
            }
            catch (Exception)
            {
                return(new OperationDataResult <EntityGroup>(false, LocaleHelper.GetString("ErrorWhileObtainSelectableList")));
            }
        }
 public OperationDataResult <EntityGroupList> GetEntityGroupList(
     AdvEntitySelectableGroupListRequestModel requestModel)
 {
     try
     {
         eFormCore.Core  core  = _coreHelper.GetCore();
         EntityGroupList model = core.Advanced_EntityGroupAll(requestModel.Sort, requestModel.NameFilter,
                                                              requestModel.PageIndex, requestModel.PageSize, Constants.FieldTypes.EntitySelect,
                                                              requestModel.IsSortDsc,
                                                              Constants.WorkflowStates.NotRemoved);
         return(new OperationDataResult <EntityGroupList>(true, model));
     }
     catch (Exception)
     {
         return(new OperationDataResult <EntityGroupList>(false, LocaleHelper.GetString("SelectableGroupLoadingFailed")));
     }
 }
Exemplo n.º 13
0
        // DEPRECATED REMOVED IN A NEW VERSION
        #endregion

        //con
        public ServiceLogic()
        {
            sSource = "MicrotingService";
            sLog    = "Application";
            bool sourceExists;

            try
            {
                EventLog.CreateEventSource(sSource, "Application");
            }
            catch (SecurityException)
            {
                sSource = "Application";
            }
            catch (Exception e)
            {
                if (!e.HResult.Equals(-2147024809))
                {
                    sSource = "Application";
                }

                LogEvent(e.Message);
                try
                {
                    LogEvent(e.InnerException.Message);
                }
                catch
                {
                }
            }
            try
            {
                LogEvent("Service called");
                {
                    serviceLocation = "";
                    sdkCore         = new eFormCore.Core();
                    outLook         = new OutlookCore.Core();
                }
                LogEvent("Service completed");
            }
            catch (Exception ex)
            {
                LogException(t.PrintException("Fatal Exception", ex));
            }
        }
        public OperationResult UpdateEntityGroup(AdvEntitySearchableGroupEditModel editModel)
        {
            try
            {
                eFormCore.Core core        = _coreHelper.GetCore();
                EntityGroup    entityGroup = core.EntityGroupRead(editModel.GroupUid);

                int        nextItemUid = entityGroup.EntityGroupItemLst.Count;
                List <int> currentIds  = new List <int>();

                foreach (var entityItem in editModel.AdvEntitySearchableItemModels)
                {
                    if (string.IsNullOrEmpty(entityItem.MicrotingUUID))
                    {
                        EntityItem et = core.EntitySearchItemCreate(entityGroup.Id, entityItem.Name,
                                                                    entityItem.Description, nextItemUid.ToString());
                        currentIds.Add(et.Id);
                    }
                    else
                    {
                        core.EntityItemUpdate(entityItem.Id, entityItem.Name, entityItem.Description,
                                              entityItem.EntityItemUId, entityItem.DisplayIndex);
                        currentIds.Add(entityItem.Id);
                    }

                    nextItemUid++;
                }

                foreach (EntityItem entityItem in entityGroup.EntityGroupItemLst)
                {
                    if (!currentIds.Contains(entityItem.Id))
                    {
                        core.EntityItemDelete(entityItem.Id);
                    }
                }

                return(new OperationResult(true,
                                           LocaleHelper.GetString("ParamUpdatedSuccessfully", editModel.GroupUid)));
            }
            catch (Exception)
            {
                return(new OperationResult(false, LocaleHelper.GetString("SearchableListCreationFailed")));
            }
        }
Exemplo n.º 15
0
        private async Task FindFieldPreFillValues(eFormCore.Core sdkCore)
        {
            await using MicrotingDbContext microtingDbContext = sdkCore.DbContextHelper.GetDbContext();
            Language language = await microtingDbContext.Languages.SingleAsync(x => x.LanguageCode == "da");

            List <FieldDto> fieldDtos = await sdkCore.Advanced_TemplateFieldReadAll(TemplateId, language);

            foreach (FieldDto fieldDto in fieldDtos)
            {
                string value = FindValue($"F{fieldDto.Id}#");

                if (!string.IsNullOrEmpty(value))
                {
                    AppointmentPrefillFieldValue appointmentPrefillFieldValue = new AppointmentPrefillFieldValue()
                    {
                        FieldId    = fieldDto.Id,
                        FieldValue = value
                    };
                    AppointmentPrefillFieldValues.Add(appointmentPrefillFieldValue);
                }
            }
        }
Exemplo n.º 16
0
 public ItemCaseCreateHandler(eFormCore.Core sdkCore, DbContextHelper dbContextHelper)
 {
     _sdkCore   = sdkCore;
     _dbContext = dbContextHelper.GetDbContext();
 }
 public eFormCaseUpdatedHandler(eFormCore.Core sdkCore, ItemsGroupPlanningPnDbContext dbContext)
 {
     _dbContext = dbContext;
     _sdkCore   = sdkCore;
 }
 public EFormCompletedHandler(eFormCore.Core sdkCore, EformMonitoringPnDbContext dbContext)
 {
     _dbContext = dbContext;
     _sdkCore   = sdkCore;
 }
Exemplo n.º 19
0
 public EFormCompletedHandler(eFormCore.Core sdkCore, DbContextHelper dbContextHelper)
 {
     _dbContext = dbContextHelper.GetDbContext();
     _sdkCore   = sdkCore;
 }
Exemplo n.º 20
0
 public EformParsedByServerHandler(eFormCore.Core sdkCore, DbContextHelper dbContextHelper)
 {
     _dbContext = dbContextHelper.GetDbContext();
     _sdkCore   = sdkCore;
 }
Exemplo n.º 21
0
        public void startSdkCoreSqlOnly(string sdkConnectionString)
        {
            this.sdkCore = new eFormCore.Core();

            sdkCore.StartSqlOnly(sdkConnectionString);
        }
Exemplo n.º 22
0
 public UpdateAppointmentsJob(AppointmentPnDbContext dbContext, IBus bus, eFormCore.Core core)
 {
     _dbContext = dbContext;
     _bus       = bus;
     _core      = core;
 }
Exemplo n.º 23
0
        static void Main(string[] args)
        {
            Core outCore = new Core();

            eFormCore.Core sdkCore = new eFormCore.Core();

            string outConStr = "Data Source=DESKTOP-7V1APE5\\SQLEXPRESS;Initial Catalog=" + "MicrotingOutlook" + ";Integrated Security=True";
            string sdkConStr = "Data Source=DESKTOP-7V1APE5\\SQLEXPRESS;Initial Catalog=" + "MicrotingOdense" + ";Integrated Security=True";

            while (true)
            {
                #region text + read input
                Console.WriteLine("");
                Console.WriteLine("Input    : 'C'lose,'R'eset & 'Q'uit.");
                Console.WriteLine("Outlook  : 'O' start.  Running:" + outCore.Running());
                Console.WriteLine("SDK Core : 'S' start.  Running:" + sdkCore.Running());
                Console.WriteLine("-        : 'T'emplate");
                string tempLower = Console.ReadLine().ToLower();
                #endregion

                if (tempLower == "o")
                #region outlook core start
                {
                    outCore.Start(outConStr);
                }
                #endregion

                if (tempLower == "s")
                #region SDK core start
                {
                    sdkCore.Start(sdkConStr);
                }
                #endregion

                if (tempLower == "r")
                #region reset
                {
                    sdkCore.Close();
                    outCore.Close();
                    outCore.Test_Reset(outConStr);
                }
                #endregion

                if (tempLower == "c")
                #region close
                {
                    sdkCore.Close();
                    outCore.Close();
                }
                #endregion

                if (tempLower == "q")
                #region quit
                {
                    sdkCore.Close();
                    outCore.Close();
                    break;
                }
                #endregion

                if (tempLower == "t")
                #region template
                {
                    if (sdkCore.Running())
                    {
                        Console.WriteLine("Creating eForm template from the xmlTemplate.txt");

                        string xmlStr = File.ReadAllText("xmlTemplate.txt");
                        var    main   = sdkCore.TemplateFromXml(xmlStr);
                        main = sdkCore.TemplateUploadData(main);

                        // Best practice is to validate the parsed xml before trying to save and handle the error(s) gracefully.
                        List <string> validationErrors = sdkCore.TemplateValidation(main);
                        if (validationErrors.Count < 1)
                        {
                            main.Repeated  = 1;
                            main.CaseType  = "Test";
                            main.StartDate = DateTime.Now;
                            main.EndDate   = DateTime.Now.AddDays(2);

                            try
                            {
                                Console.WriteLine("- TemplateId = " + sdkCore.TemplateCreate(main));
                            }
                            catch (Exception ex)
                            {
                                throw new Exception("PANIC !!!", ex);
                            }
                        }
                        else
                        {
                            foreach (string error in validationErrors)
                            {
                                Console.WriteLine("The following error is stopping us from creating the template: " + error);
                            }
                            Console.WriteLine("Correct the errors in xmlTemplate.txt and try again");
                        }
                    }
                    else
                    {
                        Console.WriteLine("SDK Core not running");
                    }
                }
                #endregion
            }

            Console.WriteLine("Closing app in 0,5 sec");
            Thread.Sleep(0500);
        }
 public void ParseBodyContent(eFormCore.Core sdkCore)
 {
     FindCheckListId();
     FindSites();
     FindFieldPreFillValues(sdkCore);
 }
 public eFormProcessedHandler(eFormCore.Core sdkCore, DbContextHelper dbContextHelper)
 {
     _dbContext = dbContextHelper.GetDbContext();
     _sdkCore   = sdkCore;
 }
Exemplo n.º 26
0
        public void StartSdkCoreSqlOnly(string sdkConnectionString)
        {
            _sdkCore = new eFormCore.Core();

            _sdkCore.StartSqlOnly(sdkConnectionString);
        }
 public eFormCaseUpdatedHandler(eFormCore.Core sdkCore)
 {
     _sdkCore = sdkCore;
 }
 public CheckAllCasesHandler(eFormCore.Core sdkCore, DbContextHelper dbContextHelper, IBus bus)
 {
     _dbContext = dbContextHelper.GetDbContext();
     _sdkCore   = sdkCore;
     _bus       = bus;
 }
Exemplo n.º 29
0
 public PushMessageHandler(eFormCore.Core sdkCore, DbContextHelper dbContextHelper)
 {
     _dbContext = dbContextHelper.GetDbContext();
     _sdkCore   = sdkCore;
 }
 public EFormCompletedHandler(eFormCore.Core sdkCore, InstallationCheckingPnDbContext dbContext)
 {
     _dbContext = dbContext;
     _sdkCore   = sdkCore;
 }