public void Insert(PurchaseVehicle purchase)
        {
            using (var cn = new SqlConnection(Settings.GetConnectionString()))
            {
                SqlCommand cmd = new SqlCommand("PurchaseVehicleInsert", cn);
                cmd.CommandType = CommandType.StoredProcedure;

                SqlParameter param = new SqlParameter("@PurchaseId", SqlDbType.Int);
                param.Direction = ParameterDirection.Output;

                cmd.Parameters.Add(param);

                cmd.Parameters.AddWithValue("@CarId", purchase.CarId);
                cmd.Parameters.AddWithValue("@UserId", purchase.UserId);
                cmd.Parameters.AddWithValue("@SpecialId", purchase.SpecialId);
                cmd.Parameters.AddWithValue("@PurchaseTypeId", purchase.PurchaseTypeId);
                cmd.Parameters.AddWithValue("@StateId", purchase.StateId);
                cmd.Parameters.AddWithValue("@CustomerName", purchase.CustomerName);
                cmd.Parameters.AddWithValue("@Phone", purchase.Phone);
                cmd.Parameters.AddWithValue("@Email", purchase.Email);
                cmd.Parameters.AddWithValue("@Street1", purchase.Street1);
                cmd.Parameters.AddWithValue("@Street2", purchase.Street2);
                cmd.Parameters.AddWithValue("@City", purchase.City);
                cmd.Parameters.AddWithValue("@Zipcode", purchase.ZipCode);
                cmd.Parameters.AddWithValue("@PurchasePrice", purchase.PurchasePrice);
                cmd.Parameters.AddWithValue("@PurchaseDate", purchase.PurchaseDate);

                cn.Open();
                cmd.ExecuteNonQuery();

                purchase.PurchaseVehicleId = (int)param.Value;
            }
        }
        public ActionResult Purchase(PurchaseViewModel model)
        {
            var errors = ModelState
                         .Where(x => x.Value.Errors.Count > 0)
                         .Select(x => new { x.Key, x.Value.Errors })
                         .ToArray();

            if (ModelState.IsValid)
            {
                var salesRepo = SalesFactory.GetRepo();

                try
                {
                    model.Car.IsPurchased = true;
                    int purchaseId = 0;
                    int customerId = 0;

                    PurchaseVehicle purchaseDetails = new PurchaseVehicle();

                    purchaseDetails.PurchaseId     = purchaseId;
                    purchaseDetails.CustomerId     = customerId;
                    purchaseDetails.CarId          = model.Car.CarId;
                    purchaseDetails.Name           = model.Customer.Name;
                    purchaseDetails.Address1       = model.Customer.Address1;
                    purchaseDetails.Address2       = model.Customer.Address2;
                    purchaseDetails.City           = model.Customer.City;
                    purchaseDetails.StateId        = model.Customer.StateId;
                    purchaseDetails.Zipcode        = model.Customer.Zipcode;
                    purchaseDetails.Phone          = model.Customer.Phone;
                    purchaseDetails.Email          = model.Customer.Email;
                    purchaseDetails.IsPurchased    = model.Car.IsPurchased;
                    purchaseDetails.PurchasePrice  = model.Purchase.PurchasePrice;
                    purchaseDetails.PurchaseTypeId = model.Purchase.PurchaseTypeID;
                    purchaseDetails.SalesPerson    = User.Identity.Name;

                    salesRepo.SubmitPurchase(purchaseDetails);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            else
            {
                var statesRepo        = SalesFactory.GetRepo();
                var purchaseTypesRepo = SalesFactory.GetRepo();

                model.States       = new SelectList(statesRepo.GetStates(), "StateId", "StateId");
                model.PurchaseType = new SelectList(purchaseTypesRepo.GetPurchaseType(), "PurchaseTypeId", "PurchaseTypeName");

                return(View(model));
            }

            ViewBag.message = "Thank you for your purchase!";
            return(View());
        }
示例#3
0
 public ActionResult PurchaseVehicle(PurchaseVehicle purchase)
 {
     if (ModelState.IsValid)
     {
         PurchaseVehicleFactory.GetRepository().Insert(purchase);
     }
     else
     {
         return(View(purchase));
     }
     return(RedirectToAction("Index", "Sales"));
 }
示例#4
0
 public void SubmitPurchase(PurchaseVehicle p)
 {
     using (_ctx)
     {
         try
         {
             var newPurchase = _ctx.PurchaseVehicle(p.CarId, p.Name, p.Address1, p.Address2, p.City, p.StateId, p.Zipcode, p.Phone, p.Email, p.IsPurchased, p.PurchasePrice, p.PurchaseTypeId, p.SalesPerson, p.DatePurchasaed);
         }
         catch (Exception ex)
         {
             throw ex;
         }
     }
 }
        public List <PurchaseVehicle> GetAll()
        {
            List <PurchaseVehicle> list = new List <PurchaseVehicle>();

            using (var cn = new SqlConnection(Settings.GetConnectionString()))
            {
                SqlCommand cmd = new SqlCommand("PurchaseVehicleSelectAll", cn);
                cmd.CommandType = CommandType.StoredProcedure;

                cn.Open();
                using (SqlDataReader dr = cmd.ExecuteReader())
                {
                    while (dr.Read())
                    {
                        PurchaseVehicle currentRow = new PurchaseVehicle();

                        currentRow.PurchaseVehicleId = (int)dr["PurchaseId"];
                        currentRow.CarId             = (int)dr["CarId"];
                        currentRow.UserId            = dr["UserId"].ToString();
                        currentRow.SpecialId         = (int)dr["SpecialId"];
                        currentRow.PurchaseTypeId    = (int)dr["PurchaseTypeId"];
                        currentRow.StateId           = dr["StateId"].ToString();
                        currentRow.CustomerName      = dr["CustomerName"].ToString();
                        currentRow.Phone             = dr["Phone"].ToString();
                        currentRow.Email             = dr["Email"].ToString();
                        currentRow.Street1           = dr["Street1"].ToString();

                        if (dr["Street2"] != DBNull.Value)
                        {
                            currentRow.Street2 = dr["Street2"].ToString();
                        }

                        currentRow.City          = dr["City"].ToString();
                        currentRow.ZipCode       = (int)dr["Zipcode"];
                        currentRow.PurchasePrice = (decimal)dr["PurchasePrice"];
                        currentRow.PurchaseDate  = DateTime.Parse(dr["PurchaseDate"].ToString());

                        list.Add(currentRow);
                    }
                }
            }


            return(list);
        }
示例#6
0
        public void CanAddPurchaseVehicle()
        {
            PurchaseVehicle purchaseToAdd = new PurchaseVehicle();
            var             repo          = new PurchaseVehicleRepositoryADO();

            purchaseToAdd.CarId          = 1;
            purchaseToAdd.UserId         = "00000000-0000-0000-000000000000";
            purchaseToAdd.SpecialId      = 2;
            purchaseToAdd.PurchaseTypeId = 2;
            purchaseToAdd.StateId        = "IN";
            purchaseToAdd.CustomerName   = "Kevin";
            purchaseToAdd.Phone          = "111-111-1111";
            purchaseToAdd.Email          = "*****@*****.**";
            purchaseToAdd.Street1        = "2 Two St";
            purchaseToAdd.Street2        = "Apt 2";
            purchaseToAdd.City           = "New York";
            purchaseToAdd.ZipCode        = 11211;
            purchaseToAdd.PurchasePrice  = 10000M;
            purchaseToAdd.PurchaseDate   = DateTime.Parse("2/2/22");

            repo.Insert(purchaseToAdd);

            Assert.AreEqual(2, purchaseToAdd.PurchaseVehicleId);
        }
 public void SubmitPurchase(PurchaseVehicle purchase)
 {
     _testPurchaseList.Add(purchase);
 }