public InvestmentForecastOrchestrator(IBoundsFactory boundsFactory, IForecastCalculator forecastCalculator,
                                       IValidationService validationService)
 {
     _boundsFactory      = boundsFactory;
     _forecastCalculator = forecastCalculator;
     _validator          = validationService;
 }
        /// <summary>
        /// Executes job operation.
        /// </summary>
        /// <param name="userConnection">The user connection.</param>
        /// <param name="parameters">The parameters.</param>
        public void Execute(UserConnection userConnection, IDictionary <string, object> parameters)
        {
            var forecastId      = (Guid)parameters["ForecastId"];
            var periodIds       = parameters["PeriodIds"] as List <Guid>;
            var isUseSystemUser = (bool)parameters["IsUseSystemUser"];

            _log.Info($"Forecast calculation started. ForecastId:{forecastId}");
            var userConnectionForCalculation = userConnection;

            if (isUseSystemUser)
            {
                userConnectionForCalculation = userConnection.AppConnection.SystemUserConnection;
            }
            IForecastCalculator objectValueColumnsCalculator = GetForecastCalculator(userConnectionForCalculation,
                                                                                     ForecastConsts.ObjectValueColumnTypeName);
            var forecastParams = new ForecastCalcParams(forecastId, periodIds);

            objectValueColumnsCalculator.Calculate(forecastParams);
            IForecastCalculator formulaColumnsCalculator = GetForecastCalculator(userConnectionForCalculation,
                                                                                 ForecastConsts.FormulaColumnTypeName);

            formulaColumnsCalculator.Calculate(forecastParams);
            _log.Info($"Forecast calculation ended. ForecastId:{forecastId}");
            CreateReminding(userConnection, forecastId);
        }
        public HomeController(
            IApprenticeshipRepository apprenticeshipRepository,
            IForecastCalculator forecastCalculator,
            ICalculatorSettings calculatorSettings,
            IApprenticeshipModelMapper apprenticeshipModelMapper)
        {
            _apprenticeshipRepository  = apprenticeshipRepository;
            _forecastCalculator        = forecastCalculator;
            _calculatorSettings        = calculatorSettings;
            _apprenticeshipModelMapper = apprenticeshipModelMapper;

            _tc = new TelemetryClient();
        }
Exemple #4
0
 public InvestmentForecastOrchestrator(IBoundsFactory boundsFactory, IForecastCalculator forecastCalculator)
 {
     _boundsFactory      = boundsFactory;
     _forecastCalculator = forecastCalculator;
 }
Exemple #5
0
 public void Setup()
 {
     _forecastCalculator = new ForecastAnnualGrowthCalculator();
     _builder            = new ForecastRequestDtoBuilder();
     _lowRiskBound       = new LowRiskBounds();
 }