private void DeleteBookedProductCommandExecuted(EventBookedProductModel obj) { obj.PropertyChanged -= OnEventBookedProductModelPropertyChanged; _eventInvoice.EventBookedProducts.Remove(obj); _event.EventCharges.Remove(obj.EventCharge); _eventDataUnit.EventChargesRepository.Delete(obj.EventCharge.EventCharge); _event.EventBookedProducts.Remove(obj); _eventDataUnit.EventBookedProductsRepository.Delete(obj.EventBookedProduct); }
private void AddInvoiceProduct(EventInvoiceModel model) { var charge = new EventCharge() { ID = Guid.NewGuid(), EventID = _event.Event.ID, ShowInInvoice = model.EventInvoice.ShowInInvoice }; var item = new EventBookedProductModel(new EventBookedProduct() { ID = Guid.NewGuid(), EventBookingItemID = model.EventInvoice.ID, EventID = _event.Event.ID, EventCharge = charge }); item.Quantity = _event.Event.Places; item.PropertyChanged += OnEventBookedProductModelPropertyChanged; model.EventBookedProducts.Add(item); }
/// <summary> /// Update the product and charges quantities when number of people changes /// for a particular product if the quantity is same as number of people before changing the number of peope. /// </summary> /// <param name="product"></param> private void SetProductCountAndCharges(EventBookedProductModel product) { if (product.Quantity == _originalEvent.Places) { product.Quantity = Event.Places; _event.EventCharges.Where(p => p.EventCharge.ID == product.EventCharge.EventCharge.ID).ForEach(eCharge => { eCharge.Quantity = Event.Places; }); } }
private void RemoveEventBookedProductAndCharges(EventBookedProductModel product) { _eventsDataUnit.EventChargesRepository.Delete(product.EventCharge.EventCharge); _eventsDataUnit.EventBookedProductsRepository.Delete(product.EventBookedProduct); var eventCharges = new System.Collections.Generic.List<EventChargeModel>(); _event.EventCharges.ForEach(eventCharge => { if (eventCharge.EventCharge.ID == product.EventCharge.EventCharge.ID) { eventCharges.Add(eventCharge); } }); eventCharges.ForEach(echarge => _event.EventCharges.Remove(echarge)); _event.EventBookedProducts.Remove(product); }
private void DeleteBookedProductCommandExecuted(EventBookedProductModel obj) { obj.PropertyChanged -= OnEventBookedProductModelPropertyChanged; _eventCatering.EventBookedProducts.Remove(obj); _event.EventCharges.Remove(obj.EventCharge); _eventDataUnit.EventChargesRepository.Delete(obj.EventCharge.EventCharge); _event.EventBookedProducts.Remove(obj); _eventDataUnit.EventBookedProductsRepository.Delete(obj.EventBookedProduct); SubmitCommand.RaiseCanExecuteChanged(); }
private void AddCateringProduct(EventCateringModel model) { var charge = new EventCharge { ID = Guid.NewGuid(), EventID = _event.Event.ID, ShowInInvoice = model.EventCatering.ShowInInvoice }; var productModel = new EventBookedProductModel(new EventBookedProduct { ID = Guid.NewGuid(), EventBookingItemID = model.EventCatering.ID, EventID = _event.Event.ID, EventCharge = charge }); productModel.Quantity = _event.Event.Places; productModel.PropertyChanged += OnEventBookedProductModelPropertyChanged; model.EventBookedProducts.Add(productModel); }