コード例 #1
0
        private static void SetTicketAgent(TicketDto actualTicket, TicketDto duplicateTicket)
        {
            var duplicateUser = _userColl.GetUserById(duplicateTicket.AuthorId);

            if (duplicateUser.Role != UserRole.SupportUser && duplicateTicket.AuthorId == 0 || duplicateUser.Role != UserRole.SupportUser && duplicateTicket.AuthorId == 1)
            {
                actualTicket.AgentId = 1; //Set Agent of actualTicket as unassigned.
            }

            else if (duplicateUser.Role != UserRole.SupportUser)
            {
                actualTicket.AgentId = duplicateTicket.AuthorId;
            }
        }
コード例 #2
0
        public IActionResult Details(int id)
        {
            var ticket = _ticketColl.GetTicketById(id);

            ViewData["TicketID"] = id;
            ticket.Content       = HtmlMarkupManager.DecodeHtml(ticket.Content);
            TicketViewModel ticketViewModel = ViewModelConverter.ConvertTicketToViewModel(ticket);

            ticketViewModel.Author = _userColl.GetUserById(ticketViewModel.AuthorId).FullName;
            ticketViewModel.Agent  = _userColl.GetUserById(ticketViewModel.AgentId).FullName;
            var comments = _commentColl.GetCommentsByTicketId(ticketViewModel.Id);

            ticketViewModel.Comments = new List <CommentViewModel>();
            if (comments.Count != 0)
            {
                foreach (var comment in comments)
                {
                    CommentViewModel cvm = new CommentViewModel()
                    {
                        Id         = comment.Id,
                        TicketId   = comment.TicketId,
                        Author     = _userColl.GetUserById(comment.CreatorId).FullName,
                        Text       = HtmlMarkupManager.DecodeHtml(comment.Text),
                        CreatedAt  = comment.CreatedAt,
                        LastEdited = comment.LastEdited
                    };

                    ticketViewModel.Comments.Add(cvm);
                }
            }
            else
            {
                TempData["NoComments"] = "No comments have been found for this ticket!";
            }

            return(View(ticketViewModel));
        }
コード例 #3
0
        public IActionResult AgentDashboard()
        {
            List <ITicket>         unassignedTickets = _ticketCollection.GetUnassignedTickets();
            List <TicketViewModel> viewModels        = new List <TicketViewModel>();

            if (unassignedTickets.Count > 0)
            {
                foreach (var ticket in unassignedTickets)
                {
                    var viewModel = ViewModelConverter.ConvertTicketToViewModel(ticket);
                    viewModel.Author = _userCollection.GetUserById(viewModel.AuthorId).FullName;
                    viewModels.Add(viewModel);
                }
            }
            else
            {
                TempData["NoUnassignedTicketsFound"] = "There are no unassigned tickets.";
            }

            return(View(viewModels));
        }