Ejemplo n.º 1
0
        /// <summary>
        /// Delete order by request.
        /// </summary>
        /// <param name="request">The request.</param>
        /// <returns></returns>
        public DeleteOrderResponse DeleteOrder(DeleteOrderRequest request)
        {
            DeleteOrderResponse response            = new DeleteOrderResponse();
            OrderService        service             = new OrderService();
            OrderDetailsService orderDetailsService = new OrderDetailsService();

            try
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    bool result = service.DeleteOrder(request.OrderId);
                    bool deleteOrderDetailsResult = orderDetailsService.CloseOrderDetailsByOrderID(request.OrderId);
                    if (result && deleteOrderDetailsResult)
                    {
                        scope.Complete();
                    }
                }
            }
            catch (TransactionAbortedException ex)
            {
                response.IsFailed = true;
                response.Message  = ex.Message;
            }
            catch (Exception ex)
            {
                response.IsFailed = true;
                response.Message  = ex.Message;
            }

            return(response);
        }