Exemplo n.º 1
0
        /// <summary>
        /// Calls Der_Select_ById or Der_S_AllInModelById to create a derivative
        /// </summary>
        /// <param name="id">The derivative id</param>
        /// <param name="hintModel">If true, precache all derivatives for this model if this derivative is not already cached</param>
        /// <returns>A car derivative</returns>
        private ICarDerivative GetDerivativeFromId(int id, bool hintModel)
        {
            if (id <= 0)
            {
                return(null);
            }

            CarDerivative result = null;

            Sproc procedure = new Sproc("Der_Select_ById", DatabaseName);

            procedure.Parameters.Add("@Id", SqlDbType.Int).Value = id;

            using (SqlDataReader dataReader = procedure.ExecuteReader())
            {
                if (dataReader != null && dataReader.HasRows)
                {
                    while (dataReader.Read())
                    {
                        CarDerivative derivative = this.GetDerivativeFromDataReader(dataReader);
                        if (derivative.Id == id)
                        {
                            result = derivative;
                        }
                    }
                }
            }

            return(result);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Populates a valuation from a data reader
        /// </summary>
        /// <param name="reader">The datareader to use</param>
        /// <param name="valuation">The valuation to populate</param>
        private static void PopulateValuationFromDataReader(SqlDataReader reader, Valuation valuation)
        {
            valuation.Derivative = CarDerivative.FromId((int)reader["CARDerId"]);
            valuation.YearPlate  = yearPlateProvider.FromId((short)reader["YearPlateId"]);
            valuation.Mileage    = (int)reader["Mileage"];

            valuation.OriginalPrice     = (int)reader["New"];
            valuation.FranchiseDealer   = (int)reader["Franchise"];
            valuation.IndependentDealer = (int)reader["Independent"];
            valuation.PrivateGood       = (int)reader["PrivateGood"];
            valuation.PrivatePoor       = (int)reader["PrivatePoor"];
            valuation.PartExchange      = (int)reader["PartExchange"];
        }
Exemplo n.º 3
0
        /// <summary>
        /// Gets the derivatives by model and plate id.
        /// </summary>
        /// <param name="modelId">The model id.</param>
        /// <param name="plateId">The plate id.</param>
        /// <returns>List of car derivatives</returns>
        public List <ICarDerivative> GetDerivativesByModelAndPlateId(int modelId, int plateId)
        {
            Sproc sp = new Sproc("Used_Select_DerivsByModelAndPlate", DatabaseName);

            sp.Parameters.Add("@CARModId", SqlDbType.Int).Value    = modelId;
            sp.Parameters.Add("@YearPlateId", SqlDbType.Int).Value = plateId;

            using (SqlDataReader reader = sp.ExecuteReader())
            {
                if (reader != null && reader.HasRows)
                {
                    List <ICarDerivative> result = new List <ICarDerivative>();
                    while (reader.Read())
                    {
                        result.Add(CarDerivative.FromId((int)reader["CARDerId"]));
                    }

                    return(result);
                }
            }

            return(null);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Creates a car derivative from a data reader
        /// </summary>
        /// <param name="dataReader">The data reader</param>
        /// <returns>CarDerivative representation of the data</returns>
        private CarDerivative GetDerivativeFromDataReader(SqlDataReader dataReader)
        {
            CarDerivative deriv = new CarDerivative();

            deriv.Id       = (int)dataReader["CARDerId"];
            deriv._imageId = DataUtil.GetInt32(dataReader, "CapImageId");
            deriv._modelId = (int)dataReader["CARModId"];

            deriv.HasMPG        = DataUtil.GetNullableInt(dataReader, "MPG").HasValue;
            deriv.HasSeats      = DataUtil.GetNullableInt(dataReader, "Seats").HasValue;
            deriv.HasEngineSize = DataUtil.GetNullableInt(dataReader, "CC").HasValue;

            deriv.Name   = (string)dataReader["Derivative"];
            deriv.Trim   = DataUtil.GetString(dataReader, "TrimName", String.Empty).Trim();
            deriv.Engine = DataUtil.GetString(dataReader, "NameEngine", String.Empty).Trim();

            deriv.FuelType = (string)dataReader["FuelType"];

            deriv.HasTechData   = DataUtil.GetBoolean(dataReader, "Tech");
            deriv.HasOptionData = DataUtil.GetBoolean(dataReader, "Option");

            deriv.OriginalBodystyle = DataUtil.GetString(dataReader, "BodyOriginal");

            deriv.P11DPrice      = DataUtil.GetInt32(dataReader, "P11DPrice");
            deriv.ListPrice      = DataUtil.GetInt32(dataReader, "ListPrice");
            deriv.TargetPrice    = DataUtil.GetInt32(dataReader, "TargetPrice");
            deriv.ThreeYearValue = DataUtil.GetInt32(dataReader, "FRV36");
            deriv.InsuranceGroup = DataUtil.GetInt32(dataReader, "IG");

            deriv.Doors          = DataUtil.GetInt32(dataReader, "Doors");
            deriv.Seats          = DataUtil.GetInt32(dataReader, "Seats");
            deriv.CC             = DataUtil.GetInt32(dataReader, "CC");
            deriv.Cylinders      = DataUtil.GetInt32(dataReader, "Cylinders");
            deriv.Bhp            = DataUtil.GetInt32(dataReader, "BHP");
            deriv.TopSpeed       = DataUtil.GetInt32(dataReader, "TopSpeed");
            deriv.ZeroToSixty    = DataUtil.GetDecimal(dataReader, "ZeroToSixty");
            deriv.MilesPerGallon = DataUtil.GetInt32(dataReader, "MPG");
            deriv.EuroEmissions  = DataUtil.GetInt32(dataReader, "EuroEmissions");

            deriv.Length = DataUtil.GetInt32(dataReader, "Length");
            deriv.Width  = DataUtil.GetInt32(dataReader, "Width");
            deriv.Height = DataUtil.GetInt32(dataReader, "Height");
            deriv.Weight = DataUtil.GetInt32(dataReader, "Weight");

            deriv.FuelDelivery = DataUtil.GetString(dataReader, "FuelDelivery", "-");
            deriv.Transmission = DataUtil.GetString(dataReader, "Transmission", "-");
            deriv.Gears        = DataUtil.GetString(dataReader, "Gears", "-");

            deriv.Valves          = DataUtil.GetInt32(dataReader, "Valves");
            deriv.TorqueLbFt      = DataUtil.GetInt32(dataReader, "TorqueLbFt");
            deriv.TorqueNm        = DataUtil.GetInt32(dataReader, "TorqueNm");
            deriv.Wheelbase       = DataUtil.GetInt32(dataReader, "Wheelbase");
            deriv.LuggageCapacity = DataUtil.GetInt32(dataReader, "LuggageCapacity");
            deriv.FuelCapacity    = DataUtil.GetInt32(dataReader, "FuelCapacity");

            deriv.TurningCircle  = DataUtil.GetInt32(dataReader, "TurningCircle");
            deriv.UnbrakedTowing = DataUtil.GetInt32(dataReader, "UnbrakedTowing");
            deriv.BrakedTowing   = DataUtil.GetInt32(dataReader, "BrakedTowing");

            deriv.CO2Emissions = DataUtil.GetInt32(dataReader, "CO2");
            deriv.VedBand      = DataUtil.GetString(dataReader, "VEDBand", "-");
            deriv.VedFull      = DataUtil.GetDecimal(dataReader, "VEDFull");

            deriv.Introduced   = DataUtil.GetDateTime(dataReader, "Introduced", DateTime.MaxValue);
            deriv.Discontinued = DataUtil.GetDateTime(dataReader, "Discontinued", DateTime.MaxValue);

            IYearPlateProvider yearPlateProvider = ObjectFactory.GetInstance <IYearPlateProvider>();

            deriv.FromYearPlate = yearPlateProvider.FromId(DataUtil.GetInt32(dataReader, "FromYearPlateId"));
            deriv.ToYearPlate   = yearPlateProvider.FromId(DataUtil.GetInt32(dataReader, "ToYearPlateId"));

            deriv.CapCode = DataUtil.GetString(dataReader, "CAPCode");

            deriv.ThisYearBasicRate       = DataUtil.GetInt32(dataReader, "CompanyCarTaxThisYearBasicRate");
            deriv.ThisYearHigherRate      = DataUtil.GetInt32(dataReader, "CompanyCarTaxThisYearHigherRate");
            deriv.NextYearBasicRate       = DataUtil.GetInt32(dataReader, "CompanyCarTaxNextYearBasicRate");
            deriv.NextYearHigherRate      = DataUtil.GetInt32(dataReader, "CompanyCarTaxNextYearHigherRate");
            deriv.CompanyCarTaxPercentage = DataUtil.GetInt32(dataReader, "CompanyCarTaxPercentage");

            return(deriv);
        }