Ejemplo n.º 1
0
        public RawOrderHistory GetCustomerOrderHistory(Guid id)
        {
            List <Order> dbOrderHistory = orderRepo.GetCustomerOrders(id);

            RawOrderHistory OrderHistory = mapper.BaseToRawOrderMapper(dbOrderHistory);

            foreach (Order stID in dbOrderHistory)
            {
                OrderHistory.StoreName.Add(storeRepo.GetName(stID.Store));
            }

            return(OrderHistory);
        }
        public void Test_GetCustomerOrderHistory()
        {
            var options = new DbContextOptionsBuilder <OrderContext>()
                          .UseInMemoryDatabase(databaseName: "TestDb15")
                          .Options;
            var options1 = new DbContextOptionsBuilder <StoreContext>()
                           .UseInMemoryDatabase(databaseName: "TestDb15")
                           .Options;
            var options2 = new DbContextOptionsBuilder <CustomerContext>()
                           .UseInMemoryDatabase(databaseName: "TestDb15")
                           .Options;

            using (var context = new OrderContext(options))
            {
                using (var context1 = new StoreContext(options1))
                {
                    using (var context2 = new CustomerContext(options2))
                    {
                        context.Database.EnsureDeleted();
                        context.Database.EnsureCreated();
                        context1.Database.EnsureDeleted();
                        context1.Database.EnsureCreated();
                        context2.Database.EnsureDeleted();
                        context2.Database.EnsureCreated();

                        OrderRepository    orderRepo = new OrderRepository(context);
                        StoreRepository    storeRepo = new StoreRepository(context1);
                        CustomerRepository custRepo  = new CustomerRepository(context2);
                        OrderLogic         ol        = new OrderLogic(orderRepo, storeRepo, custRepo);

                        AStore   store   = new AStore();
                        Customer newCust = new Customer();

                        Order testOrder = new Order();
                        testOrder.Store          = store.StoreID;
                        testOrder.Cust           = newCust.CustomerID;
                        testOrder.JSONPizzaOrder = "this is a test order for customers";

                        context.Add <Order>(testOrder);
                        context1.Add <AStore>(store);
                        context2.Add <Customer>(newCust);
                        context.SaveChanges();
                        context1.SaveChanges();
                        context2.SaveChanges();

                        RawOrderHistory createOrder = ol.GetCustomerOrderHistory(newCust.CustomerID);
                        Assert.Equal(testOrder.JSONPizzaOrder, createOrder.jsonPizzaOrders[0]);
                    }
                }
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Map from Order to RawOrder(database -> javascript)
        /// DOES NOT map the name. Need to do separately, depending on if customer or store history
        /// </summary>
        /// <param name="obj">List of Orders</param>
        /// <returns></returns>
        public RawOrderHistory BaseToRawOrderMapper(List <Order> obj)
        {
            RawOrderHistory newHistory = new RawOrderHistory();

            newHistory.jsonPizzaOrders = new List <string>();
            newHistory.StoreName       = new List <string>();
            newHistory.Totals          = new List <decimal>();
            newHistory.OrderTimes      = new List <DateTime>();
            foreach (Order stID in obj)
            {
                newHistory.Totals.Add(stID.CurTotal);
                newHistory.OrderTimes.Add(stID.OrderTime);
                newHistory.jsonPizzaOrders.Add(stID.JSONPizzaOrder);
            }
            return(newHistory);
        }
Ejemplo n.º 4
0
        public RawOrderHistory GetStoreOrderHistory(Guid id)
        {
            List <Order> dbOrderHistory = orderRepo.GetStoreOrders(id);

            RawOrderHistory OrderHistory = mapper.BaseToRawOrderMapper(dbOrderHistory);

            foreach (Order stID in dbOrderHistory)
            {
                var curCust = custRepo.GetCustomerByID(stID.Cust);
                if (curCust is null)
                {
                    return(null);
                }
                OrderHistory.StoreName.Add(curCust.Fname + " " + curCust.Lname);
            }

            return(OrderHistory);
        }