Beispiel #1
0
        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);
        }
Beispiel #2
0
        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);
        }