// Public Methods
        public bool Load(OrderAddressSearchControlState objOrderAddressSearchControlState)
        {
            try
            {
                // Set the local variables
                _lstOrderSystemOfRecords = objOrderAddressSearchControlState.OrderSystemOfRecords;
                _lstMigrationStatuses    = objOrderAddressSearchControlState.MigrationStatuses;
                _lstOrderAddressTypes    = objOrderAddressSearchControlState.OrderAddressTypes;

                _dteOrderDate_Start = objOrderAddressSearchControlState.OrderDate_Start;
                _dteOrderDate_End   = objOrderAddressSearchControlState.OrderDate_End;

                _dteCreatedDate_Start = objOrderAddressSearchControlState.DateCreated_Start;
                _dteCreatedDate_End   = objOrderAddressSearchControlState.DateCreated_End;

                _strCustomerOrderNumber = objOrderAddressSearchControlState.CustomerOrderNumber;
                _strAddressLine1        = objOrderAddressSearchControlState.AddressLine1;


                _objOrderAddressSearchControlState = objOrderAddressSearchControlState;

                // Validate the input params supplied
                ValidateSearchParams();

                // Build the WHERE Clause
                BuildWhereClause();
            }
            catch (Exception ex)
            {
                _lstErrorMessages.Add(String.Concat("There was an unexepected ERROR while trying to retrieve the SEARCH results.  Please adjust your search criteria and try again.  Error Message [ ", ex.Message, "]"));
            }

            return((_lstErrorMessages.Count == 0) && (_lstValidationErrors.Count == 0));
        }
示例#2
0
        private void SetSearchControlValues(string strJsonDecoded)
        {
            // Set the search controls
            OrderAddressSearchControlState objOrderAddressSearchControlStateUtil = OrderAddressSearchControlStateUtil.Deserialize(strJsonDecoded);

            // SORs
            for (int i = 0; i < objOrderAddressSearchControlStateUtil.OrderSystemOfRecords?.Count; i++)
            {
                if (ddlOrderSystemOfRecords.FindItemByValue(objOrderAddressSearchControlStateUtil.OrderSystemOfRecords[i].ToString()) != null)
                {
                    ddlOrderSystemOfRecords.FindItemByValue(objOrderAddressSearchControlStateUtil.OrderSystemOfRecords[i].ToString()).Checked  = true;
                    ddlOrderSystemOfRecords.FindItemByValue(objOrderAddressSearchControlStateUtil.OrderSystemOfRecords[i].ToString()).Selected = true;
                }
                else
                {
                    throw new Exception("Value not found in list.  Your saved query is no longer valid.");
                }
            }


            // Migration Statuses
            for (int i = 0; i < objOrderAddressSearchControlStateUtil.MigrationStatuses?.Count; i++)
            {
                if (ddlMigrationStatuses.FindItemByValue(objOrderAddressSearchControlStateUtil.MigrationStatuses[i].ToString()) != null)
                {
                    ddlMigrationStatuses.FindItemByValue(objOrderAddressSearchControlStateUtil.MigrationStatuses[i].ToString()).Checked  = true;
                    ddlMigrationStatuses.FindItemByValue(objOrderAddressSearchControlStateUtil.MigrationStatuses[i].ToString()).Selected = true;
                }
                else
                {
                    throw new Exception("Value not found in list.  Your saved query is no longer valid.");
                }
            }


            // Order Address Types
            for (int i = 0; i < objOrderAddressSearchControlStateUtil.OrderAddressTypes?.Count; i++)
            {
                if (ddlOrderAddressTypes.FindItemByValue(objOrderAddressSearchControlStateUtil.OrderAddressTypes[i].ToString()) != null)
                {
                    ddlOrderAddressTypes.FindItemByValue(objOrderAddressSearchControlStateUtil.OrderAddressTypes[i].ToString()).Checked  = true;
                    ddlOrderAddressTypes.FindItemByValue(objOrderAddressSearchControlStateUtil.OrderAddressTypes[i].ToString()).Selected = true;
                }
                else
                {
                    throw new Exception("Value not found in list.  Your saved query is no longer valid.");
                }
            }

            // OrderAddress Date
            dteOrderDateStart.SelectedDate = objOrderAddressSearchControlStateUtil.OrderDate_Start;
            dteOrderDateEnd.SelectedDate   = objOrderAddressSearchControlStateUtil.OrderDate_End;

            // Date Created
            dteDateCreatedStart.SelectedDate = objOrderAddressSearchControlStateUtil.DateCreated_Start;
            dteDateCreatedEnd.SelectedDate   = objOrderAddressSearchControlStateUtil.DateCreated_End;

            // Customer Order Number
            txtCustomerOrderNumber.Text = objOrderAddressSearchControlStateUtil.CustomerOrderNumber;

            // Address Line 1
            txtAddressLine1.Text = objOrderAddressSearchControlStateUtil.AddressLine1;
        }
示例#3
0
        // Button/Link Click Methods
        protected void btnSearch_Click(object sender, EventArgs e)
        {
            lblError.InnerText = String.Empty;

            // Order System of Records
            List <string> lstOrderSystemsOfRecord;

            if (ddlOrderSystemOfRecords.CheckedItems.Count() > 0)
            {
                lstOrderSystemsOfRecord = new List <string>();
                lstOrderSystemsOfRecord.AddRange(ddlOrderSystemOfRecords.CheckedItems.ToList().Select(ddl => ddl.Value.ToString()).ToList());
            }
            else
            {
                // Set to null, so that the search manager will return records for all SORs (ie - records are ONLY filtered OUT if one or more values are checked)
                lstOrderSystemsOfRecord = null;
            }


            // Migration Statuses
            List <string> lstMigrationStatuses;

            if (ddlMigrationStatuses.CheckedItems.Count() > 0)
            {
                lstMigrationStatuses = new List <string>();
                lstMigrationStatuses.AddRange(ddlMigrationStatuses.CheckedItems.ToList().Select(ddl => ddl.Value.ToString()).ToList());
            }
            else
            {
                // Set to null, so that the search manager will return records for all statuses (ie - records are ONLY filtered OUT if one or more values are checked)
                lstMigrationStatuses = null;
            }


            // Order Address Types
            List <string> lstOrderAddressTypes;

            if (ddlOrderAddressTypes.CheckedItems.Count() > 0)
            {
                lstOrderAddressTypes = new List <string>();
                lstOrderAddressTypes.AddRange(ddlOrderAddressTypes.CheckedItems.ToList().Select(ddl => ddl.Value.ToString()).ToList());
            }
            else
            {
                // Set to null, so that the search manager will return records for all trans types (ie - records are ONLY filtered OUT if one or more values are checked)
                lstOrderAddressTypes = null;
            }

            // Order Date
            DateTime?dteOrderAddressDate_Start = dteOrderDateStart.SelectedDate;
            DateTime?dteOrderAddressDate_End   = dteOrderDateEnd.SelectedDate;


            // Date Created
            DateTime?dteDateCreated_Start = dteDateCreatedStart.SelectedDate;
            DateTime?dteDateCreated_End   = dteDateCreatedEnd.SelectedDate;


            // Customer Order Number
            string strCustomerOrderNumber = txtCustomerOrderNumber.Text.Trim().ToUpper();

            // Address Line 1
            string strAddressLine1 = txtAddressLine1.Text.Trim().ToUpper();


            OrderAddressSearchControlState objOrderAddressSearchControlState = new OrderAddressSearchControlState();

            objOrderAddressSearchControlState.OrderSystemOfRecords = lstOrderSystemsOfRecord;
            objOrderAddressSearchControlState.MigrationStatuses    = lstMigrationStatuses;
            objOrderAddressSearchControlState.OrderAddressTypes    = lstOrderAddressTypes;
            objOrderAddressSearchControlState.OrderDate_Start      = dteOrderAddressDate_Start;
            objOrderAddressSearchControlState.OrderDate_End        = dteOrderAddressDate_End;
            objOrderAddressSearchControlState.DateCreated_Start    = dteDateCreated_Start;
            objOrderAddressSearchControlState.DateCreated_End      = dteDateCreated_End;
            objOrderAddressSearchControlState.CustomerOrderNumber  = strCustomerOrderNumber;
            objOrderAddressSearchControlState.AddressLine1         = strAddressLine1;

            OrderAddressSearchManager objOrderAddressSearchManager = new OrderAddressSearchManager();

            if (objOrderAddressSearchManager.Load(objOrderAddressSearchControlState))
            {
                // Response Redirect or load the datagrid
                lblWhereClause.InnerText = objOrderAddressSearchManager.GetWhereClause() + " # Records = [" + objOrderAddressSearchManager.SearchResults.Count() + "]";
                string strWhereClauseAsBase64           = objOrderAddressSearchManager.GetWhereClauseBase64Encoded();
                string strJsonOrderAddressStateAsBase64 = objOrderAddressSearchManager.GetOrderAddressStateAsBase64EncodedJsonString();
                string strQSParam     = Server.UrlEncode(strWhereClauseAsBase64);
                string strQSParamJson = Server.UrlEncode(strJsonOrderAddressStateAsBase64);
                string strURL         = HttpContext.Current.Request.Url.AbsoluteUri;

                if (strURL.Contains('?'))
                {
                    string[]            arrURLSplitFromQS = strURL.Split('?');
                    NameValueCollection nvcQueryString    = System.Web.HttpUtility.ParseQueryString(arrURLSplitFromQS[1]);
                    nvcQueryString[_strQSParamName]          = strQSParam;
                    nvcQueryString[_strQSParamNameJsonState] = strQSParamJson;
                    strURL = arrURLSplitFromQS[0] + "?" + nvcQueryString.ToString();
                }
                else
                {
                    string strBaseUrl = strURL;
                    NameValueCollection nvcQueryString = System.Web.HttpUtility.ParseQueryString(strBaseUrl);
                    strURL = strURL + "?" + _strQSParamName + "=" + strQSParam + "&" + _strQSParamNameJsonState + "=" + strQSParamJson;
                }

                Response.Redirect(strURL);
            }
            else
            {
                lblError.InnerText = String.Concat("There was an error while trying to search the payments.  ", String.Join(",", objOrderAddressSearchManager.ErrorMessages.ToArray()), String.Join(",", objOrderAddressSearchManager.ValidationErrors.ToArray()));
            }
        }