public ActionResult Search(WebOrderRequestSearchViewModel webOrderRequestSearchViewModel)
        {
            GRINGlobalService grinGlobalService = new GRINGlobalService(this.AuthenticatedUserSession.Environment);

            Models.Query query = new Models.Query();

            try
            {
                //if (webOrderRequestSearchViewModel.SelectedStatusCode != "ANY")
                //{
                //    QueryCriterion queryCriterion = new QueryCriterion { FieldName = "wor.status_code", FieldValue = webOrderRequestSearchViewModel.SelectedStatusCode, SearchOperatorCode = "=", DataType = "NVARCHAR" };
                //    query.QueryCriteria.Add(queryCriterion);
                //}

                //if (webOrderRequestSearchViewModel.SelectedTimeFrameCode > 0)
                //{
                //    QueryCriterion queryCriterion = new QueryCriterion { FieldName = "time_frame_code", FieldValue = webOrderRequestSearchViewModel.SelectedTimeFrameCode.ToString(), SearchOperatorCode = "=", DataType = "INT" };
                //    query.QueryCriteria.Add(queryCriterion);
                //}

                if (!String.IsNullOrEmpty(webOrderRequestSearchViewModel.RequestorEmailAddress))
                {
                    QueryCriterion queryCriterion = new QueryCriterion {
                        FieldName = "wc.email", FieldValue = webOrderRequestSearchViewModel.RequestorEmailAddress.ToString(), SearchOperatorCode = "LIKE", DataType = "NVARCHAR"
                    };
                    query.QueryCriteria.Add(queryCriterion);
                }

                if (!String.IsNullOrEmpty(webOrderRequestSearchViewModel.RequestorFirstName))
                {
                    QueryCriterion queryCriterion = new QueryCriterion {
                        FieldName = "wc.first_name", FieldValue = webOrderRequestSearchViewModel.RequestorFirstName.ToString(), SearchOperatorCode = "LIKE", DataType = "NVARCHAR"
                    };
                    query.QueryCriteria.Add(queryCriterion);
                }

                if (!String.IsNullOrEmpty(webOrderRequestSearchViewModel.RequestorLastName))
                {
                    QueryCriterion queryCriterion = new QueryCriterion {
                        FieldName = "wc.last_name", FieldValue = webOrderRequestSearchViewModel.RequestorLastName, SearchOperatorCode = "LIKE", DataType = "NVARCHAR"
                    };
                    query.QueryCriteria.Add(queryCriterion);
                }


                // Re-initialize main index view model, adding search results.
                webOrderRequestSearchViewModel.WebOrderRequests = grinGlobalService.SearchWebOrderRequests(query);
                webOrderRequestSearchViewModel.Statuses         = grinGlobalService.GetWebOrderRequestStatuses();
                webOrderRequestSearchViewModel.IntendedUseCodes = new SelectList(grinGlobalService.GetWebOrderRequestIntendedUseCodes(), "Name", "Description");
                return(View("~/Views/GRINGlobal/WebOrder/Index.cshtml", webOrderRequestSearchViewModel));
            }
            catch (Exception ex)
            {
                log.Error(ex.Message + ex.StackTrace);
                return(View("~/Views/Error/_Error.cshtml"));
            }
        }
        public PartialViewResult _Search(string statusCode, int timeFrameCode, string requestorEmail, string requestorFirstName, string requestorLastName, string intendedUseCode, string selectedDateRange)
        {
            WebOrderRequestListViewModel webOrderRequestListViewModel = new WebOrderRequestListViewModel();
            GRINGlobalService            grinGlobalService            = new GRINGlobalService(this.AuthenticatedUserSession.Environment);

            Models.Query query = new Models.Query();

            try
            {
                if (!String.IsNullOrEmpty(requestorEmail))
                {
                    QueryCriterion queryCriterion = new QueryCriterion {
                        FieldName = "wc.email", FieldValue = requestorEmail, SearchOperatorCode = "LIKE", DataType = "NVARCHAR"
                    };
                    query.QueryCriteria.Add(queryCriterion);
                }

                if (!String.IsNullOrEmpty(requestorFirstName))
                {
                    QueryCriterion queryCriterion = new QueryCriterion {
                        FieldName = "wc.first_name", FieldValue = requestorFirstName, SearchOperatorCode = "LIKE", DataType = "NVARCHAR"
                    };
                    query.QueryCriteria.Add(queryCriterion);
                }

                if (!String.IsNullOrEmpty(requestorLastName))
                {
                    QueryCriterion queryCriterion = new QueryCriterion {
                        FieldName = "wc.last_name", FieldValue = requestorLastName, SearchOperatorCode = "LIKE", DataType = "NVARCHAR"
                    };
                    query.QueryCriteria.Add(queryCriterion);
                }

                if (!String.IsNullOrEmpty(intendedUseCode))
                {
                    QueryCriterion queryCriterion = new QueryCriterion {
                        FieldName = "wor.intended_use_code", FieldValue = intendedUseCode, SearchOperatorCode = "LIKE", DataType = "NVARCHAR"
                    };
                    query.QueryCriteria.Add(queryCriterion);
                }

                webOrderRequestListViewModel.WebOrderRequests = grinGlobalService.SearchWebOrderRequests(query);

                return(PartialView("~/Views/GRINGlobal/WebOrder/_List.cshtml", webOrderRequestListViewModel));
            }
            catch (Exception ex)
            {
                log.Error(ex.Message + ex.StackTrace);
                return(PartialView("~/Views/Error/_Error.cshtml"));
            }
        }
Exemple #3
0
        public ActionResult Search(FormCollection formCollection)
        {
            GRINGlobalService            grinGlobalService            = new GRINGlobalService(this.AuthenticatedUserSession.Environment);
            WebOrderRequestListViewModel webOrderRequestListViewModel = new WebOrderRequestListViewModel();

            Models.Query query = new Models.Query();

            try
            {
                if (!String.IsNullOrEmpty(formCollection["ID"].Trim()))
                {
                    if (Int32.Parse(formCollection["ID"]) > 0)
                    {
                        query.QueryCriteria.Add(new QueryCriterion {
                            FieldName = "web_order_request_id", SearchOperatorCode = "=", FieldValue = formCollection["ID"], DataType = "INT"
                        });
                    }
                }

                if (!String.IsNullOrEmpty(formCollection["RequestorEmailAddress"]))
                {
                    query.QueryCriteria.Add(new QueryCriterion {
                        FieldName = "web_cooperator_email", SearchOperatorCode = "LIKE", FieldValue = formCollection["RequestorEmailAddress"], DataType = "NVARCHAR"
                    });
                }

                if (!String.IsNullOrEmpty(formCollection["RequestorFirstName"]))
                {
                    query.QueryCriteria.Add(new QueryCriterion {
                        FieldName = "web_cooperator_first_name", SearchOperatorCode = "LIKE", FieldValue = formCollection["RequestorFirstName"], DataType = "NVARCHAR"
                    });
                }

                if (!String.IsNullOrEmpty(formCollection["RequestorLastName"]))
                {
                    query.QueryCriteria.Add(new QueryCriterion {
                        FieldName = "web_cooperator_last_name", SearchOperatorCode = "LIKE", FieldValue = formCollection["RequestorLastName"], DataType = "NVARCHAR"
                    });
                }

                if (!String.IsNullOrEmpty(formCollection["RequestorOrganization"]))
                {
                    query.QueryCriteria.Add(new QueryCriterion {
                        FieldName = "web_cooperator_organization", SearchOperatorCode = "LIKE", FieldValue = formCollection["RequestorOrganization"], DataType = "NVARCHAR"
                    });
                }

                if (!String.IsNullOrEmpty(formCollection["IntendedUseCode"]))
                {
                    query.QueryCriteria.Add(new QueryCriterion {
                        FieldName = "intended_use_code", SearchOperatorCode = "=", FieldValue = formCollection["IntendedUseCode"], DataType = "NVARCHAR"
                    });
                }

                if (!String.IsNullOrEmpty(formCollection["SelectedStatusCode"]))
                {
                    query.QueryCriteria.Add(new QueryCriterion {
                        FieldName = "status_code", SearchOperatorCode = "=", FieldValue = formCollection["SelectedStatusCode"], DataType = "NVARCHAR"
                    });
                }

                if ((!String.IsNullOrEmpty(formCollection["SelectedStartDate"])) && (formCollection["SelectedStartDate"].Trim().Length > 0))
                {
                    var DEBUG = formCollection["SelectedStartDate"].Trim().Length;

                    query.QueryCriteria.Add(new QueryCriterion {
                        FieldName = "ordered_date", SearchOperatorCode = ">=", FieldValue = formCollection["SelectedStartDate"], DataType = "DATETIME"
                    });
                }

                if ((!String.IsNullOrEmpty(formCollection["SelectedEndDate"])) && (formCollection["SelectedEndDate"].Trim().Length > 0))
                {
                    query.QueryCriteria.Add(new QueryCriterion {
                        FieldName = "ordered_date", SearchOperatorCode = "<=", FieldValue = formCollection["SelectedEndDate"], DataType = "DATETIME"
                    });
                }

                webOrderRequestListViewModel.WebOrderRequests = grinGlobalService.SearchWebOrderRequests(query);
                return(PartialView(BASE_PATH + "/_SearchResults.cshtml", webOrderRequestListViewModel));
            }
            catch (Exception ex)
            {
                Log.Error(ex, ex.Message);
                return(RedirectToAction("InternalServerError", "Error"));
            }
        }