public JsonResult GetTickets(IncidentListRequestModel param) { //IncidentListRequestModel param = new IncidentListRequestModel(); SDWS.GetIncidentListRequest req = new SDWS.GetIncidentListRequest(); SDWS.IncidentListFilter filter = new SDWS.IncidentListFilter(); //param.searchText = searchText; //param.options = options.ToList(); //filter.IncidentCount = 30; filter.IncidentCountSpecified = false; //filter.SortField = x; //filter.SummarySearch = x; filter.Status = param.options.ToArray(); //filter.StartingIncident = x; //filter.Stage = x; filter.ServiceDeskName = db.Settings.FirstOrDefault(s => s.Key == "ServiceDeskName").Value; //filter.Priority=x; //filter.OrganizationStaff =x; if (User.Identity.Name != "admin") { filter.Organization = Helpers.UserTools.UserToFilter(User.Identity.Name); } //filter.MachineGroup = x; //filter.Machine = x; //filter.Assignee = x; req.IncidentListRequest = filter; SDWS.GetIncidentListResponse items = sDesk.ProcessRequest(req); GetTicketsModel result = new GetTicketsModel(); try { AutoMapper.Mapper.AssertConfigurationIsValid(); result.ErrorLocation = items.ErrorLocation; result.ErrorMessage = items.ErrorMessage; IncidentListModel incidentList = new IncidentListModel(); incidentList.nextStartingIncident = items.IncidentList.nextStartingIncident; incidentList.totalIncidents = items.IncidentList.totalIncidents; List<IncidentSummaryGridModel> list = new List<IncidentSummaryGridModel>(); SDWS.IncidentSummary[] incList = items.IncidentList.Incident; if (param.searchText != null) { List<SDWS.IncidentSummary> temp = new List<SDWS.IncidentSummary>(); foreach (var item in incList) { if (item.IncidentNumber.ToLower().Contains(param.searchText.ToLower()) || (item.Description ?? "").ToLower().Contains(param.searchText.ToLower()) || (item.OrganizationName ?? "").ToLower().Contains(param.searchText.ToLower()) || (item.SubmitterEmail ?? "").ToLower().Contains(param.searchText.ToLower()) || (item.Submitter ?? "").ToLower().Contains(param.searchText.ToLower()) || (item.Summary ?? "").ToLower().Contains(param.searchText.ToLower()) || (item.Resolution ?? "").ToLower().Contains(param.searchText.ToLower()) || (item.SubCategory ?? "").ToLower().Contains(param.searchText.ToLower()) ) { temp.Add(item); } } incList = temp.ToArray(); } foreach (var incidentSummary in incList) { IncidentSummaryGridModel model = new IncidentSummaryGridModel(); model = AutoMapper.Mapper.Map<IncidentSummaryGridModel>(incidentSummary); list.Add(model); } incidentList.Incident = list.ToArray(); result.IncidentList = incidentList; } catch (Exception ex) { result.ErrorLocation = ex.StackTrace; result.ErrorMessage = ex.Message; } //var status = result.IncidentList.Incident.AsQueryable().Select(i => i.Status).Distinct(); return Json(result, JsonRequestBehavior.AllowGet); }
public PartialViewResult _TicketSum(string id) { IncidentSummaryGridModel model = new IncidentSummaryGridModel(); SDWS.GetIncidentReq req = new SDWS.GetIncidentReq(); SDWS.GetIncidentRequest filter = new SDWS.GetIncidentRequest(); filter.IncidentNumber = id; filter.IncidentIdSpecified = false; filter.IncludeAttachments = false; filter.IncludeAttachmentsSpecified = false; filter.IncludeDefinition = false; filter.IncludeDefinitionSpecified = false; filter.IncludeNotes = false; filter.IncludeNotesSpecified = false; req.IncidentRequest = filter; SDWS.GetIncidentResponse responce = sDesk.ProcessRequest(req); model.IncidentNumber = responce.IncidentResponse.IncidentNumber; model.Description = responce.IncidentResponse.Description; model.Category = responce.IncidentResponse.Category; model.IsUnread = responce.IncidentResponse.IsUnread; model.OrganizationName = responce.IncidentResponse.OrganizationName; model.Resolution = responce.IncidentResponse.Resolution; model.Stage = responce.IncidentResponse.Stage; model.Status = responce.IncidentResponse.Status; model.Submitter = responce.IncidentResponse.Submitter; model.Summary = responce.IncidentResponse.Summary; return PartialView(model); }