Exemple #1
0
        public async Task <string> Order(string input)
        {
            string[] inputSplited = input.Split(',');

            if (!ValidateInput(inputSplited))
            {
                throw new InvalidInputException("Invalid parameters!");
            }

            var dayTime = Enum.Parse <DayTime>(inputSplited[0]);

            inputSplited = inputSplited.Where((source, index) => index != 0).ToArray();

            var output = _dayTimeStrategy.CalculateOrder(inputSplited, dayTime);

            var order = BuildOrder(input, output);
            await _orderWriteRepository.Add(order);

            return(output);
        }