public async Task <Result <Order> > AddNewOrder(OrderProcessContext context)
        {
            var entity = CreateOrderEntity(context);

            await _dbContext.Orders.AddAsync(entity);

            int changes = await _dbContext.SaveChangesAsync();

            if (changes <= 0)
            {
                _logger.LogInformation($"Order {context.OrderId} could not be saved.");

                return(new Result <Order> {
                    Reason = ReasonType.DatabaseError, ChangeCount = changes, IsSuccessful = false
                });
            }

            _logger.LogInformation($"Order {context.OrderId} was saved.");

            return(new Result <Order> {
                Value = MapOrderEntity(entity), ChangeCount = changes, IsSuccessful = true
            });
        }
 OrderEntity CreateOrderEntity(OrderProcessContext context) =>