Пример #1
0
        public BusinessModels.Order GetById(long id)
        {
            _logger.LogInformation($"{typeof(InMemoryOrderRepositoryAdapter).FullName}.GetById({id})");

            try
            {
                EntityModels.InMemory.Order orderEntity = _orderRepository.GetById(id);
                BusinessModels.Order        result      = null;

                if (orderEntity != null)
                {
                    EntityModels.InMemory.Inventory inventoryEntity = _inventoryRepository.GetById(orderEntity.InventoryId);
                    EntityModels.InMemory.Article   articleEntity   = _articleRepository.GetById(inventoryEntity.ArticleId);
                    EntityModels.InMemory.Buyer     buyerEntity     = _buyerRepository.GetById(orderEntity.BuyerId);

                    result = CreateBusinessModel(orderEntity, articleEntity, inventoryEntity, buyerEntity);
                }

                return(result);
            }
            catch (LoggedException)
            {
                throw;
            }
            catch (Exception ex)
            {
                _logger.LogError(ex.Message);
                throw new LoggedException("Logged exception", ex);
            }
        }
Пример #2
0
        public IList <BusinessModels.Order> GetAll()
        {
            _logger.LogInformation($"{typeof(InMemoryOrderRepositoryAdapter).FullName}.GetAll()");

            try
            {
                var result = new List <BusinessModels.Order>();

                IList <EntityModels.InMemory.Order> orderEntities = _orderRepository.GetAll();


                foreach (var orderEntity in orderEntities)
                {
                    EntityModels.InMemory.Inventory inventoryEntity = _inventoryRepository.GetById(orderEntity.InventoryId);
                    EntityModels.InMemory.Article   articleEntity   = _articleRepository.GetById(inventoryEntity.ArticleId);
                    EntityModels.InMemory.Buyer     buyerEntity     = _buyerRepository.GetById(orderEntity.BuyerId);

                    BusinessModels.Order order = CreateBusinessModel(orderEntity, articleEntity, inventoryEntity, buyerEntity);

                    result.Add(order);
                }

                return(result);
            }
            catch (LoggedException)
            {
                throw;
            }
            catch (Exception ex)
            {
                _logger.LogError(ex.Message);
                throw new LoggedException("Logged exception", ex);
            }
        }
Пример #3
0
        BusinessModels.Database IRepository.GetOrder(int id)
        {
            var dbOrderHitory = _context.CustomerOrders.Include(c => c.ProductOrdereds)
                                .ThenInclude(c => c.Product)
                                .ThenInclude(c => c.Prices);

            var db = new BusinessModels.Database(new BusinessModels.Store(id));

            foreach (var orders in dbOrderHitory)
            {
                if (orders.TransactionNumber == id)
                {
                    var x = orders.TransactionTime.ToString();
                    BusinessModels.Order order = new BusinessModels.Order(id, orders.StoreId, orders.CustomerId, x);
                    foreach (var item in orders.ProductOrdereds)
                    {
                        var price  = item.Product.Prices.ToList();
                        var tPrice = price[0].Price1;
                        order.addItem(new BusinessModels.Product(item.ProductId, item.Product.Name, (int)item.Quantity, (double)tPrice));
                    }

                    db.Stores[0].Orders.Add(order);
                }
            }
            return(db);
        }
Пример #4
0
 private EntityModels.InMemory.Order CreateEntityModel(BusinessModels.Order order)
 {
     return(new EntityModels.InMemory.Order()
     {
         BuyerId = order.Buyer.Id,
         DateSold = DateTime.UtcNow,
         InventoryId = order.Article.InventoryId
     });
 }
Пример #5
0
        public void Update(BusinessModels.Order order)
        {
            _logger.LogInformation($"{typeof(InMemoryOrderRepositoryAdapter).FullName}.Update({order.Id})");

            try
            {
                EntityModels.InMemory.Order orderEntity = CreateEntityModel(order);

                _orderRepository.Update(orderEntity);
            }
            catch (LoggedException)
            {
                throw;
            }
            catch (Exception ex)
            {
                _logger.LogError(ex.Message);
                throw new LoggedException("Logged exception", ex);
            }
        }
Пример #6
0
        public BusinessModels.Order Insert(BusinessModels.Order order)
        {
            _logger.LogInformation($"{typeof(InMemoryOrderRepositoryAdapter).FullName}.Insert(ArticleId={order.Article.Id}, BuyerId={order.Buyer.Id})");

            try
            {
                EntityModels.InMemory.Order orderEntity = CreateEntityModel(order);

                orderEntity = _orderRepository.Insert(orderEntity);

                order.Id = orderEntity.Id;

                return(order);
            }
            catch (LoggedException)
            {
                throw;
            }
            catch (Exception ex)
            {
                _logger.LogError(ex.Message);
                throw new LoggedException("Logged exception", ex);
            }
        }