Ejemplo n.º 1
0
        public ActionResult AddTicket(TicketCreateModel ticketModel)
        {
            var user = this.Data.Users.All().FirstOrDefault(u => u.UserName == this.User.Identity.Name);
            var category = this.Data.Categories.GetById(ticketModel.CategoryId);

            if (ModelState.IsValid)
            {
                var newTicket = new Ticket()
                {
                    Title = ticketModel.Title,
                    User = user,
                    Description = ticketModel.Description,
                    ImageUrl = ticketModel.ImageUrl,
                    Priority = ticketModel.Priority,
                    Category = category
                };

                user.Points += 1;

                this.Data.Tickets.Add(newTicket);
                this.Data.SaveChanges();

                return Redirect("~/Ticket/Details/" + newTicket.Id);
            }
            return View("CreateTicket",ticketModel);
        }
Ejemplo n.º 2
0
        public ActionResult Create(TicketCreateModel ticketToCreate)
        {
            if (ModelState.IsValid)
            {
                var userId = User.Identity.GetUserId(); ;
                Ticket ticket = new Ticket();
                ticket.Title = ticketToCreate.Title;
                ticket.Priority = ticketToCreate.Priority;
                ticket.ScreenshotUrl = ticketToCreate.ScreenshotUrl;
                ticket.CategoryId = ticketToCreate.CategoryId;
                ticket.UserId = userId;
                ticket.Description = ticketToCreate.Description;

                this.Data.Tickets.Add(ticket);
                var user = this.Data.Users.All().Where(u => u.Id == userId).FirstOrDefault();
                user.Points += 1;

                this.Data.SaveChanges();
                return RedirectToAction("Index");
            }

            ViewBag.CategoryId = new SelectList(this.Data.Categories.All(), "Id", "Name", ticketToCreate.CategoryId);
            List<PriorityModel> priorities = new List<PriorityModel>();
            priorities.Add(new PriorityModel() { Text = "High", Value = "High" });
            priorities.Add(new PriorityModel() { Text = "Medium", Value = "Medium" });
            priorities.Add(new PriorityModel() { Text = "Low", Value = "Low" });

            ViewBag.Priority = new SelectList(priorities, "Value", "Text");

            return View(ticketToCreate);
        }
        public ActionResult AddTicket(AddTicketViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var user = this.Data.AppUsers.All().FirstOrDefault(x => x.UserName == User.Identity.Name);
                user.Points++;

                var ticket = new Ticket()
                {
                    Author = user,
                    CategoryId = int.Parse(viewModel.CategoryId),
                    Description = viewModel.Description,
                    Priority = viewModel.Priority,
                    ScreenUrl = viewModel.ScreenUrl,
                    Title = viewModel.Title
                };

                this.Data.Tickets.Add(ticket);
                this.Data.SaveChanges();
                return RedirectToAction("List");
            }

            viewModel.PriorityTypeDropdown = GetPriorityItems();
            viewModel.CategoryDropdown = GetCategoriesItems();

            return View(viewModel);
        }
Ejemplo n.º 4
0
        public ActionResult Create(TicketCreateViewModel ticket)
        {
            ViewBag.PriorityId = new SelectList(EnumsController.EnumToDropDownList(typeof(Priority)), "Value", "Text");
            ViewBag.CategoryId = new SelectList(this.Data.Categories.All(), "Id", "Name");

            if (User.Identity.IsAuthenticated && ModelState.IsValid)
            {
                using (TransactionScope tsTransScope = new TransactionScope())
                {
                    var currentUserId = User.Identity.GetUserId();

                    var currentUser = this.Data.ApplicationUsers.All().FirstOrDefault(u => u.Id == currentUserId);
                    currentUser.Points = currentUser.Points + 1;

                    var newTicket = new Ticket()
                    {
                        AuthorId = currentUserId,
                        CategoryId = ticket.CategoryId,
                        Description = HttpUtility.HtmlEncode(ticket.Description),
                        Priority = (Priority)ticket.PriorityId,
                        ScreenshotUrl = ticket.ScreenshotUrl,
                        Title = ticket.Title
                    };

                    this.Data.Tickets.Add(newTicket);
                    this.Data.SaveChanges();
                    tsTransScope.Complete();
                }

                return RedirectToAction("TicketsList");
            }

            return View();
        }
        public ActionResult AddTicket(NewTicketViewModel ticketModel)
        {
            if (ticketModel == null)
            {
                return HttpNotFound();
            }

            if (!this.ModelState.IsValid)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }

            string userId = this.User.Identity.GetUserId();

            var newTicket = new Ticket
            {
                CategoryId = ticketModel.CategoryId,
                Title = ticketModel.Title,
                Priority = ticketModel.Priority,
                ScreenshotUrl = ticketModel.ScreenshotUrl,
                Description = ticketModel.Description,
                AuthorId = userId,
            };

            this.Data.Tickets.Add(newTicket);
            this.Data.SaveChanges();

            ViewData["CategoryList"] = this.Data.Categories.All().Select
                (CategoryShortViewModel.FromCategory);

            return RedirectToAction("Index", "Home");
        }
Ejemplo n.º 6
0
        public ActionResult Add(TicketAddViewModel ticketVM)
        {
            if (ModelState.IsValid && ticketVM != null)
            {
                var userId = User.Identity.GetUserId();
                ApplicationUser user = this.Data.Users.All().FirstOrDefault(u => u.Id == userId);
                user.Points = user.Points + 1;
                Ticket ticket = new Ticket();
                ticket.Author = user;
                ticket.Category = this.Data.Categories.GetById(Convert.ToInt32(ticketVM.CategoryName));
                ticket.Priority = (Priority)Convert.ToInt32(ticketVM.PriorityName);
                ticket.ScreenshotURL = ticketVM.ScreenshotURL;
                ticket.Title = ticketVM.Title;
                ticket.Description = ticketVM.Description;

                this.Data.Tickets.Add(ticket);
                this.Data.SaveChanges();

                return RedirectToAction("TicketsList");
            }

            ticketVM.Categories = this.Data.Categories.All().ToList().Select(cat => new SelectListItem() { Text = cat.Name, Value = cat.Id.ToString() });
            ticketVM.Priorities = LoadPrioritiesFromEnumeration();

            return View(ticketVM);
        }
Ejemplo n.º 7
0
        public ActionResult Create(CreateTicketViewModel ticket)
        {
            var username = this.User.Identity.GetUserName();
            var userId = this.User.Identity.GetUserId();

            if (ModelState.IsValid)
            {
                Ticket newTicket = new Ticket()
                {
                    Title = ticket.Title,
                    AuthorId = userId,
                    CategoryId = ticket.CategoryId,
                    Priority = ticket.Priority,
                    ScreenshotUrl = ticket.ScreenshotUrl,
                    Description = ticket.Description
                };

                this.Data.Tickets.Add(newTicket);
                this.Data.SaveChanges();
                return RedirectToAction("List");
            }

            List<Priority> priorities = new List<Priority>{Priority.Low, Priority.Medium, Priority.High};
            ViewBag.CategoryId = new SelectList(this.Data.Categories.All(), "Id", "Name", ticket.CategoryId);
            ViewBag.Priority = new SelectList(priorities, "Key");

            return View(ticket);
        }
Ejemplo n.º 8
0
        public ActionResult Create(CreateTicketViewModel model)
        {
            if (ModelState.IsValid)
            {
                var userId = User.Identity.GetUserId();
                var ticket = new Ticket();
                ticket.AuthorId = userId;
                ticket.CategoryId = model.SelectedCategory;
                ticket.Title = model.Title;
                ticket.Priority = model.SelectedPriority;
                ticket.ScreenshotURL = model.ScreenshotUrl;
                ticket.Description = model.Description;
             
                Data.Tickets.Add(ticket);

                var user = Data.ApplicationUser.All().FirstOrDefault(x => x.Id == userId);
                if (user != null)
                {
                    user.Points++;
                }
                
                Data.SaveChanges();
            }

            //model = new TicketViewModel();

            //model.CategoryItems = Data.Categories.All().ToList().Select(x => new SelectListItem()
            //{
            //    Value = x.Id.ToString(),
            //    Text = x.Name
            //}).ToList();

            //model.PriorityItems = Enum.GetValues(typeof(PriorityType)).Cast<PriorityType>().Select(v => new SelectListItem
            //{
            //    Text = v.ToString(),
            //    Value = ((int)v).ToString()
            //}).ToList();

            return RedirectToAction("Create");
        }
        public ActionResult AddNewTicket(TicketAddModel ticket)
        {
            var userId = User.Identity.GetUserId();
            var user = Data.Users.All().FirstOrDefault(u => u.Id == userId);
            if (ModelState.IsValid && ticket != null)
            {
                Ticket ticketEntoty = new Ticket()
                {
                    Author = user,
                    AuthorId = user.Id,
                    Description = ticket.Description,
                    ScreenShotUrl = ticket.ScreenShotUrl,
                    Title = ticket.Title

                };

                switch (ticket.Priority)
                {

                    case "High": { ticketEntoty.Priority = Priority.High; } break;
                    case "Medium": { ticketEntoty.Priority = Priority.Medium; } break;
                    case "Low": { ticketEntoty.Priority = Priority.Low; } break;

                    default:
                        break;
                }

                var category = Data.Categories.All().FirstOrDefault(c => c.Name == ticket.Category);
                category.Tickets.Add(ticketEntoty);
                user.Points++;
                Data.SaveChanges();

                return RedirectToAction("Details/" + ticketEntoty.Id, "Tickets");
            }



            List<SelectListItem> lists = (from list in Data.Categories.All()
                                          select new SelectListItem()
                                          {
                                              Text = list.Name,
                                              Value = list.Name
                                          }).ToList();

            IList<Priority> priorities = new List<Priority>();
            priorities.Add(Priority.High);
            priorities.Add(Priority.Low);
            priorities.Add(Priority.Medium);

            List<SelectListItem> listsPriority = (from list in priorities
                                                  select new SelectListItem()
                                                  {
                                                      Text = list.ToString(),
                                                      Value = list.ToString()
                                                  }).ToList();

            ViewData["categories"] = lists;
            ViewData["priority"] = listsPriority;

            return View("AddTicketForm", ticket);
        }