Exemplo n.º 1
0
        private List <CanadianLocatorResult> GetInternalCanadaLocatorResults(CanadaLocatorSearchOptions searchOptions)
        {
            if (searchOptions.Latitude == (float)0.0 &&
                searchOptions.Longitude == (float)0.0 &&
                !string.IsNullOrEmpty(searchOptions.PostalCode))
            {
                LocatorDAO_Canada.Instance.PopulateLatLongFromZip(searchOptions);
            }

            if (searchOptions.ResultsPerPage < 1)
            {
                searchOptions.ResultsPerPage = 20;
            }

            if (searchOptions.PageNumber < 1)
            {
                searchOptions.PageNumber = 1;
            }

            if (searchOptions.Products.Count() == 0 || string.IsNullOrEmpty(searchOptions.Products[0]))
            {
                searchOptions.Products = new string[] { "CommBatts", "CommFoam", "Batts", "Foam" };
            }

            return(LocatorDAO_Canada.Instance.GetDealers(searchOptions).ToList());
        }
Exemplo n.º 2
0
        public IList <CanadianLocatorResult> GetDealers(CanadaLocatorSearchOptions searchOptions)
        {
            var param = new List <object>();

            param.Add(searchOptions.Latitude);
            param.Add(searchOptions.Longitude);
            param.AddRange(searchOptions.Products.ToArray());

            return(GetDealers(searchOptions.Latitude, searchOptions.Longitude, searchOptions.ResultsPerPage, searchOptions.PageNumber, param.ToArray()));
        }
Exemplo n.º 3
0
        public void PopulateLatLongFromZip(CanadaLocatorSearchOptions searchOptions)
        {
            var sql = new StringBuilder();

            sql.AppendLine("select Latitude, Longitude ");
            sql.AppendLine("FROM  ZipPostalCodes DZ (NOLOCK)  ");
            sql.AppendLine("where PostalCode = @0 ");

            SqlDataReaderHandler handler = delegate(SqlDataReader rdr)
            {
                Boolean isData = false;
                if (rdr.HasRows)
                {
                    if (rdr.Read())
                    {
                        searchOptions.Latitude  = (rdr.IsDBNull(rdr.GetOrdinal("Latitude")) ? 0.0 : double.Parse(rdr[rdr.GetOrdinal("Latitude")].ToString()));
                        searchOptions.Longitude = (rdr.IsDBNull(rdr.GetOrdinal("Longitude")) ? 0.0 : double.Parse(rdr[rdr.GetOrdinal("Longitude")].ToString()));
                    }
                }
                return(isData);
            };

            ExecuteQuery <Boolean>(LocatorDatabase.Common, handler, sql.ToString(), searchOptions.PostalCode);
        }
Exemplo n.º 4
0
 public CanadianLocatorResult[] GetCanadaLocatorResults(CanadaLocatorSearchOptions searchOptions)
 {
     return(GetInternalCanadaLocatorResults(searchOptions).ToArray());
 }