Esempio n. 1
0
        public async Task <IActionResult> AddYouthRota(string dateTime, string name, List <string> roles)
        {
            if (!roles.Any())
            {
                throw new Exception("No roles added to youth role.");
            }
            var date = DateTime.Parse(dateTime);

            foreach (var role in roles)
            {
                try
                {
                    var rota = new RotaItemDto()
                    {
                        Type     = RotaType.YouthClub.ToString(),
                        DateTime = date,
                        Name     = name.TrimEnd(),
                        Role     = role,
                        Id       = Guid.NewGuid().ToString()
                    };
                    await _rotaService.AddRotaJobs(rota);
                }
                catch (Exception e)
                {
                    if (e.Message == "Already Added")
                    {
                        TempData["Message"] = $"{name} already on rota for {role} on {date.ToShortDateString()}";
                        return(await LoadYouthRotaView());
                    }
                    else
                    {
                        throw new Exception("In AddYouthRota", e);
                    }
                }
            }
            TempData["Message"] = $"{name} added to rota on {date.ToShortDateString()}";
            return(await LoadYouthRotaView());
        }