Esempio n. 1
0
        public void Save(PositionInputModel positionInputModel)
        {
            var validator = new FormValidator();

            validator.AddRequired(() => positionInputModel.TickerText, "Please enter a ticker");
            validator.AddValidPositiveDecimal(() => positionInputModel.SharesText, "Please enter a valid, positive number of shares");
            validator.AddValidPositiveDecimal(() => positionInputModel.PriceText, "Please enter a valid, positive price per share");
            validator.AddValidation(() => ValidateTicker(positionInputModel.TickerText));

            var errorMessages = validator.Apply();

            if (!errorMessages.Any())
            {
                _portfolioRepository.SavePosition(GetPosition(positionInputModel));
                _currentView.GoBackToPortfolioActivity();
            }
            else
            {
                _currentView.ShowErrorMessages(errorMessages.ToList());
            }
        }