protected override void ExecuteMethod()
        {
            var structureCost = new StructureCost {
                Comment = "No title"
            };
            var structureCostWrapper = new StructureCostWrapper(structureCost);

            ((PriceCalculationItem2Wrapper)_viewModel.SelectedItem).StructureCosts.Add(structureCostWrapper);
        }
Ejemplo n.º 2
0
        protected override void ExecuteMethod()
        {
            var dialogResult = MessageService.ShowYesNoMessageDialog("Разбиение", "Действительно хотите разбить выбранную строку?", defaultNo: true);

            if (dialogResult != MessageDialogResult.Yes)
            {
                return;
            }

            var selectedItem = (PriceCalculationItem2Wrapper)ViewModel.SelectedItem;
            var salesUnit    = selectedItem.SalesUnits.First();

            var salesUnitsToDivide = selectedItem.SalesUnits.ToList();

            salesUnitsToDivide.Remove(salesUnit);

            foreach (var unit in salesUnitsToDivide)
            {
                selectedItem.SalesUnits.Remove(unit);

                var priceCalculationItem = new PriceCalculationItem
                {
                    OrderInTakeDate     = selectedItem.OrderInTakeDate,
                    RealizationDate     = selectedItem.RealizationDate,
                    PaymentConditionSet = selectedItem.PaymentConditionSet
                };
                var priceCalculationItemWrapper = new PriceCalculationItem2Wrapper(priceCalculationItem);
                priceCalculationItemWrapper.SalesUnits.Add(unit);
                foreach (var structureCost in selectedItem.StructureCosts)
                {
                    var sc = new StructureCost
                    {
                        Comment           = structureCost.Comment,
                        AmountNumerator   = structureCost.AmountNumerator,
                        AmountDenomerator = structureCost.AmountDenomerator,
                        Number            = structureCost.Number,
                        UnitPrice         = structureCost.UnitPrice
                    };
                    priceCalculationItemWrapper.StructureCosts.Add(new StructureCostWrapper(sc));
                }

                ViewModel.PriceCalculationWrapper.PriceCalculationItems.Add(priceCalculationItemWrapper);
            }
        }