public async void Start()
        {
            _logger.LogInformation($"BaseComponent Worker started!");


            _logger.LogInformation($"Load BaseComponent({DateTime.Now})");
            try
            {
                Thread.Sleep(TimeSpan.FromMinutes(1));

                var res = await _componentRepository.GetBaseComponents();

                GlobalObjects.BaseComponents.Clear();

                var aircraftIds = GlobalObjects.Flights.Select(i => i.Key);
                foreach (var bc in res)
                {
                    var tr = bc.TransferRecords.FirstOrDefault(i =>
                                                               i.DestinationObjectType == (int)SmartCoreType.Aircraft);
                    if (tr != null && aircraftIds.Contains(tr.DestinationObjectId.Value))
                    {
                        GlobalObjects.BaseComponents.Add(bc);
                    }
                }

                while (true)
                {
                    foreach (var baseComponent in GlobalObjects.BaseComponents)
                    {
                        baseComponent.LifelengthCalculated.Clear();

                        await _calculator.GetFlightLifelengthOnEndOfDayBaseComponentAsync(baseComponent.Id,
                                                                                          DateTime.Today);
                    }

                    Thread.Sleep(TimeSpan.FromMinutes(30));
                }
            }
            catch (Exception e)
            {
                _logger.LogError(e.Message);
            }

            #endregion
        }