public AssignedToReportResult AssignedToReport(AssignedToReportParams Params) { var searchCriteria = new TicketSearchParams { Assignment = new Assignment { Employee = Params.AssignedTo }, ExcludeTicketStatusList = new List <string> { TicketStatus.Closed.ToString().PascalCaseToDescription(), TicketStatus.ClosedDuplicate.ToString().PascalCaseToDescription(), TicketStatus.ClosedTooLate.ToString().PascalCaseToDescription(), }, IsForwardOrder = true }; var items = searchCriteria.Search(requestState).ToAssignedToReport(); foreach (var item in items) { item.Reasons = CleanReasons(item.Reasons); } return(new AssignedToReportResult { OpenTicketCount = items.Count(), Report = new AssignedToReport { Items = items } }); }
public LostFoundReportResult LostFoundReport(LostFoundReportParams Params) { var codes = ticketRepository.GetComplaintCodes(); var lostAndFoundCode = codes.ComplaintCodes.First(c => c.Description.ToLower().Contains("lost property")); var searchCriteria = new TicketSearchParams { LostItem = new LostItem { Category = Params.LostItemCategory, Type = Params.LostItemType }, IncidentAtFrom = Params.RangeStart, IncidentAtTo = Params.RangeEnd, ReasonCode1 = lostAndFoundCode.ToString(), ExcludeTicketStatusList = new List <string> { TicketStatus.Closed.ToString().PascalCaseToDescription(), TicketStatus.ClosedDuplicate.ToString().PascalCaseToDescription(), TicketStatus.ClosedTooLate.ToString().PascalCaseToDescription(), } }; var items = searchCriteria.Search(requestState).ToLostFoundReport(); return(new LostFoundReportResult { Report = new LostFoundReport { Items = items } }); }
public RejectedReportResult RejectedReport(ReportParams Params) { var searchCriteria = new TicketSearchParams { Status = TicketStatus.Rejected, ReceivedAtFrom = Params.RangeStart, ReceivedAtTo = Params.RangeEnd, IncludeResearchHistory = true, }; var items = searchCriteria.Search(requestState).ToRejectedReport(); foreach (var item in items) { item.Reasons = CleanReasons(item.Reasons); item.GroupContact = CleanGroupContact(item.GroupContact); } return(new RejectedReportResult { Report = new RejectedReport { Items = items } }); }
public ReadyToCloseReportResult ReadyToCloseReport(ReportParams Params) { var searchCriteria = new TicketSearchParams { IncludeTicketStatusList = new List <string> { TicketStatus.ReadyToClose.ToString().PascalCaseToDescription(), TicketStatus.ReadyToCloseDuplicate.ToString().PascalCaseToDescription(), TicketStatus.ReadyToCloseTooLate.ToString().PascalCaseToDescription(), }, IncludeContactHistory = true }; var items = searchCriteria.Search(requestState).ToReadyToCloseReport(); foreach (var item in items) { item.Reasons = CleanReasons(item.Reasons); item.GroupContact = CleanGroupContact(item.GroupContact); } return(new ReadyToCloseReportResult { Report = new ReadyToCloseReport { Items = items } }); }
public ForActionReportResult ForActionReport(ForActionReportParams Params) { var searchCriteria = new TicketSearchParams { Assignment = new Assignment { GroupContact = new GroupContact(Params.GroupContact) }, ExcludeTicketStatusList = new List <string> { TicketStatus.Closed.ToString().PascalCaseToDescription(), TicketStatus.ClosedDuplicate.ToString().PascalCaseToDescription(), TicketStatus.ClosedTooLate.ToString().PascalCaseToDescription(), }, IsForwardOrder = true }; var items = searchCriteria.Search(requestState).ToForActionReport(); foreach (var item in items) { item.Reasons = CleanReasons(item.Reasons); item.GroupContact = CleanGroupContact(item.GroupContact); } return(new ForActionReportResult { OpenTicketCount = items.Count(), Report = new ForActionReport { Items = items } }); }
public void SearchTicketsResultTest() { var searchCriteria = new TicketSearchParams { ReceivedAtFrom = DateTime.Parse("2014-06-10"), }; var tickets = searchCriteria.Search(requestState); Assert.IsNotNull(tickets); Assert.AreNotEqual(tickets.Count, 0); }
public TicketsResult Search(TicketSearchParams Criteria, RequestState RequestState) { InitCusRelContext(); var result = new TicketsResult { Tickets = Criteria.Search(RequestState) }; if (result.Tickets == null) { result.SetFail("No tickets found"); } return(result); }
public void Title6SearchTicketsTest() { var maxSearchCount = requestState.MaxSearchCount; requestState.MaxSearchCount = 500; var searchCriteria = new TicketSearchParams { SearchAsUnion = true, ReasonCode1 = "Title VI", IsTitle6 = true, ReceivedAtFrom = DateTime.Now.AddMonths(-2), }; var tickets = searchCriteria.Search(requestState); Assert.IsNotNull(tickets); Assert.AreNotEqual(tickets.Count, 0); Assert.AreNotEqual(tickets.Count, 500); requestState.MaxSearchCount = maxSearchCount; }
public void SearchTicketResultTest() { var searchCriteria = new TicketSearchParams { Id = 362526, Status = TicketStatus.New, Priority = TicketPriority.Normal, Source = new TicketSource { ReceivedAt = DateTime.Parse("2014-06-11 18:46:10.663"), ReceivedBy = new User(Id: "WEB", Username: "******"), Via = TicketSourceVia.WEB, FeedbackId = 26887 }, Contact = new Contact { Name = new Name { First = "Marlena", Last = "Hanlon" }, Address = new Address { Addr1 = null, Addr2 = null, City = "Oakland", State = "CA", ZipCode = null }, Email = "*****@*****.**", Phone = new Phone { Number = null, Kind = PhoneKind.Home }, Status = null }, IsAdaComplaint = false, IsTitle6 = false, Incident = new Incident { IncidentAt = DateTime.Parse("2014-06-11 18:15:00.000"), VehicleNumber = "1601", Route = "1", Location = "Telegraph at 34th", // partial text Destination = "none", City = null, Division = "GO" }, Operator = new Operator { Badge = null, Description = "Picture available" // partial text }, LostItem = new LostItem { Category = "None", Type = "None", }, Reasons = new List <string> { "11. HAZARDOUS OPERATION", "16. CONDUCT/DISCOURTESY" }, Comments = "since the LAW is that when passing bicyclists", // partial text ResponseCriteria = new ResponseCriteria { HasRequestedResponse = true, Via = ResponseCriteriaVia.Email }, Resolution = new Resolution { Action = null, Comment = null, ResolvedAt = null }, Assignment = new Assignment { GroupContact = new GroupContact("K. Hayward Supt Div 6"), Employee = new User(Id: null), }, UpdatedAt = DateTime.Parse("2014-06-11 19:32:26.000"), UpdatedBy = new User(Id: "ACCBTONA"), ReceivedAtFrom = DateTime.Parse("2014-06-10"), ReceivedAtTo = DateTime.Parse("2014-06-13"), IncidentAtFrom = DateTime.Parse("2014-06-11 18:14:00.000"), IncidentAtTo = DateTime.Parse("2014-06-11 18:16:00.000") }; var tickets = searchCriteria.Search(requestState); Assert.IsNotNull(tickets); Assert.AreNotEqual(tickets.Count, 0); }