public void Order_DetailsRepositoryTests_GetByOrdersID() { Order_DetailsRepository repository = new Order_DetailsRepository(); var result = repository.GetByOrderID(6); Assert.IsTrue(result.Count() == 3); }
public void Order_DetailsRepositoryTests_GetByOrderDetailsID() { Order_DetailsRepository repository = new Order_DetailsRepository(); var result = repository.GetByOrder_Details_ID(2); Assert.IsTrue(result.Order_Details_ID == 2); }
public void Order_DetailsRepositoryTests_GetAll() { Order_DetailsRepository repository = new Order_DetailsRepository(); var result = repository.GetAll(); Assert.IsTrue(result.Count() == 10); }
public void Order_DetailsRepositoryTests_Delete() { Order_DetailsRepository repository = new Order_DetailsRepository(); var model = new Order_Details() { Order_Details_ID = 14 }; repository.Delete(14); var result = repository.GetByOrder_Details_ID(14); Assert.IsTrue(result == null); }
public void Order_DetailsRepositoryTests_Create() { SqlConnection connection = new SqlConnection(); Order_DetailsRepository repository = new Order_DetailsRepository(); var model = new Order_Details { Order_ID = 28, Product_ID = 2, Quantity = 1, Price = 150, size = "M" }; repository.Create(model); }
public OrderAndDetail GetNewOrders(string Account) { OrdersRepository ordersRepository = new OrdersRepository(); Order_DetailsRepository order_DetailsRepository = new Order_DetailsRepository(); var order = ordersRepository.GetLatestByAccount(Account); var result = new OrderAndDetail { Account = order.Account, OrderID = order.Order_ID, Order_Check = ((OrderStatus)order.Order_Check).ToString(), Order_Date = order.Order_Date, Pay = order.Pay, Transport = order.Transport, TotalMoney = (decimal)order.Total + (decimal)order.TranMoney }; result.product = ordersRepository.GetAccountNewOrder(Account).ToList(); return(result); }
public void Order_DetailsRepositoryTests_Update() { Order_DetailsRepository repository = new Order_DetailsRepository(); var model = new Order_Details { Order_Details_ID = 13, Order_ID = 6, Product_ID = 2, Quantity = 2, Price = 150, Discount = 0, size = "X" }; repository.Update(model); var result = repository.GetByOrder_Details_ID(13); Assert.IsTrue(result.Quantity == 2); }
public string CreateOrder(string Account, string Pay, string Transport, decimal TranMoney) { var cart_R = RepositoryContainer.GetInstance <ShoppingCartRepository>(); var orders_R = new OrdersRepository(); var order_Details_R = new Order_DetailsRepository(); var stock_R = new StockRepository(); var products_R = new ProductsRepository(); var now_time = DateTime.Now; SqlConnection connection = new SqlConnection(SqlConnect.str); connection.Open(); var transaction = connection.BeginTransaction(); try { orders_R.Create(connection, new Orders { Account = Account, Order_Check = 0, Order_Date = now_time, Pay = Pay, TranMoney = TranMoney, Transport = Transport, }, transaction); string errorMessage = ""; var order = orders_R.GetLatestByAccount(connection, Account, transaction); var items = cart_R.GetByAccount(connection, Account, transaction); decimal totalmoney = 0; foreach (var item in items) { if (stock_R.CheckInventory(item.Product_ID, item.size, item.Color, item.Quantity) == false) { errorMessage += "產品 :" + products_R.GetByProduct_ID(item.Product_ID).Product_Name + " 庫存不足\n"; } else { totalmoney += item.Quantity * products_R.GetByProduct_ID(item.Product_ID).UnitPrice; order_Details_R.Create(connection, new Order_Details() { Order_ID = order.Order_ID, Product_ID = item.Product_ID, Quantity = (short)item.Quantity, size = item.size, Price = item.Quantity * products_R.GetByProduct_ID(item.Product_ID).UnitPrice, Color = item.Color }, transaction); stock_R.Update(connection, new Stock() { Product_ID = item.Product_ID, Size = item.size, Quantity = stock_R.GetByPK(item.Product_ID, item.size, item.Color).Quantity - item.Quantity, Color = item.Color }, transaction); } } if (errorMessage.Length <= 1) { cart_R.DeleteByAccount(Account); orders_R.Update(order.Order_ID, totalmoney + TranMoney, connection, transaction); transaction.Commit(); connection.Close(); return("新訂單"); } else { throw new Exception(errorMessage); } } catch (Exception ex) { Console.WriteLine(ex.Message); transaction.Rollback(); return(ex.Message); } }
public static Order_DetailsRepository GetOrder_DetailsRepository(IUnitOfWork unitOfWork) { var repository = new Order_DetailsRepository(); repository.UnitOfWork = unitOfWork; return repository; }
public static Order_DetailsRepository GetOrder_DetailsRepository() { var repository = new Order_DetailsRepository(); repository.UnitOfWork = GetUnitOfWork(); return repository; }