コード例 #1
0
 void OnEditOrderDetailCommand(OrderDetail orderItem)
 {
     if (orderItem != null)
     {
         CurrentOrderDetailViewModel = new EditOrderDetailViewModel(_serviceFactory, orderItem);
         CurrentOrderDetailViewModel.OrderDetailUpdated    += CurrentOrderDetailViewModel_OrderDetailUpdated;
         CurrentOrderDetailViewModel.CancelEditOrderDetail += CurrentOrderDetailViewModel_CancelEvent;
     }
 }
コード例 #2
0
        void OnAddOrderDetailCommand(object arg)
        {
            OrderDetail orderDetail = new OrderDetail
            {
                OrderId = _order.Id
            };

            CurrentOrderDetailViewModel = new EditOrderDetailViewModel(_serviceFactory, orderDetail);
            CurrentOrderDetailViewModel.OrderDetailUpdated    += CurrentOrderDetailViewModel_OrderDetailUpdated;
            CurrentOrderDetailViewModel.CancelEditOrderDetail += CurrentOrderDetailViewModel_CancelEvent;
        }
コード例 #3
0
 void CurrentOrderDetailViewModel_OrderDetailUpdated(object sender, Support.OrderDetailEventArgs e)
 {
     if (!e.IsNew)
     {
         OrderDetail orderDetail = _order.Items.Single(item => item.Id == e.OrderDetail.Id);
         if (orderDetail != null)
         {
             orderDetail.Count           = e.OrderDetail.Count;
             orderDetail.OrderId         = e.OrderDetail.OrderId;
             orderDetail.Price           = e.OrderDetail.Price;
             orderDetail.PartId          = e.OrderDetail.PartId;
             orderDetail.PartDescription = e.OrderDetail.PartDescription;
             orderDetail.Notes           = e.OrderDetail.Notes;
         }
     }
     else
     {
         // TODO: check that we have saved new order recently
         if (_order.Id != 0)
         {
             _order.Items = _order.Items.Concat(new[]
             {
                 new OrderDetail
                 {
                     Id              = e.OrderDetail.Id,
                     Count           = e.OrderDetail.Count,
                     OrderId         = e.OrderDetail.OrderId,
                     Price           = e.OrderDetail.Price,
                     PartId          = e.OrderDetail.PartId,
                     PartDescription = e.OrderDetail.PartDescription,
                     Notes           = e.OrderDetail.Notes
                 }
             });
         }
     }
     CurrentOrderDetailViewModel = null;
 }
コード例 #4
0
 void CurrentOrderDetailViewModel_CancelEvent(object sender, EventArgs e)
 {
     CurrentOrderDetailViewModel = null;
 }
コード例 #5
0
 void CurrentOrderDetailViewModel_OrderDetailUpdated(object sender, Support.OrderDetailEventArgs e)
 {
     if (!e.IsNew)
     {
         OrderDetail orderDetail = _order.Items.Single(item => item.Id == e.OrderDetail.Id);
         if (orderDetail != null)
         {
             orderDetail.Count = e.OrderDetail.Count;
             orderDetail.OrderId = e.OrderDetail.OrderId;
             orderDetail.Price = e.OrderDetail.Price;
             orderDetail.PartId = e.OrderDetail.PartId;
             orderDetail.PartDescription = e.OrderDetail.PartDescription;
             orderDetail.Notes = e.OrderDetail.Notes;
         }
     }
     else
     {
         // TODO: check that we have saved new order recently
         if (_order.Id != 0)
         { 
             _order.Items = _order.Items.Concat(new[]
             {
             new OrderDetail
             {
                 Id = e.OrderDetail.Id,
                 Count = e.OrderDetail.Count,
                 OrderId = e.OrderDetail.OrderId,
                 Price = e.OrderDetail.Price,
                 PartId = e.OrderDetail.PartId,
                 PartDescription = e.OrderDetail.PartDescription,
                 Notes = e.OrderDetail.Notes
             }
             });
         }
     }
     CurrentOrderDetailViewModel = null;
 }
コード例 #6
0
 void OnAddOrderDetailCommand(object arg)
 {
     OrderDetail orderDetail = new OrderDetail
     {
         OrderId = _order.Id
     };
     CurrentOrderDetailViewModel = new EditOrderDetailViewModel(_serviceFactory, orderDetail);
     CurrentOrderDetailViewModel.OrderDetailUpdated += CurrentOrderDetailViewModel_OrderDetailUpdated;
     CurrentOrderDetailViewModel.CancelEditOrderDetail += CurrentOrderDetailViewModel_CancelEvent;
 }
コード例 #7
0
 void OnEditOrderDetailCommand(OrderDetail orderItem)
 {
     if (orderItem != null)
     {
         CurrentOrderDetailViewModel = new EditOrderDetailViewModel(_serviceFactory, orderItem);
         CurrentOrderDetailViewModel.OrderDetailUpdated += CurrentOrderDetailViewModel_OrderDetailUpdated;
         CurrentOrderDetailViewModel.CancelEditOrderDetail += CurrentOrderDetailViewModel_CancelEvent;
     }
 }
コード例 #8
0
 void CurrentOrderDetailViewModel_CancelEvent(object sender, EventArgs e)
 {
     CurrentOrderDetailViewModel = null;
 }