Esempio n. 1
0
        private void ConfigureDlg()
        {
            entryName.Binding.AddBinding(Entity, e => e.Name, w => w.Text).InitializeFromSource();
            entryFrom.Binding.AddBinding(Entity, e => e.StartTime, w => w.Time).InitializeFromSource();
            entryTo.Binding.AddBinding(Entity, e => e.EndTime, w => w.Time).InitializeFromSource();

            var parallel = new ParallelEditing(entryName);

            parallel.SubscribeOnChanges(entryFrom);
            parallel.SubscribeOnChanges(entryTo);
            parallel.GetParallelTextFunc = NameCreateFunc;
        }
Esempio n. 2
0
        private void ConfigureDlg()
        {
            notebook1.ShowTabs          = false;
            spinWeight.Sensitive        = false;
            spinVolume.Sensitive        = false;
            lblPercentForMaster.Visible = spinPercentForMaster.Visible = false;
            entryName.IsEditable        = true;
            radioInfo.Active            = true;

            ylabelCreationDate.Binding.AddFuncBinding(Entity, s => s.CreateDate.HasValue ? s.CreateDate.Value.ToString("dd.MM.yyyy HH:mm") : "", w => w.LabelProp).InitializeFromSource();
            ylabelCreatedBy.Binding.AddFuncBinding <Nomenclature>(Entity, s => GetUserEmployeeName(s.CreatedBy), w => w.LabelProp).InitializeFromSource();

            enumVAT.ItemsEnum = typeof(VAT);
            enumVAT.Binding.AddBinding(Entity, e => e.VAT, w => w.SelectedItem).InitializeFromSource();

            enumType.ItemsEnum = typeof(NomenclatureCategory);
            enumType.Binding.AddBinding(Entity, e => e.Category, w => w.SelectedItem).InitializeFromSource();

            enumTareVolume.ItemsEnum = typeof(TareVolume);
            enumTareVolume.Binding.AddBinding(Entity, e => e.TareVolume, w => w.SelectedItemOrNull).InitializeFromSource();
            ycheckDisposableTare.Binding.AddBinding(Entity, e => e.IsDisposableTare, w => w.Active).InitializeFromSource();

            yСolorBtnBottleCapColor.Binding.AddBinding(Entity, e => e.BottleCapColor, w => w.Color, new ColorTextToGdkColorConverter()).InitializeFromSource();
            yСolorBtnBottleCapColor.ColorSet += YСolorBtnBottleCapColorOnColorSet;

            enumSaleCategory.Visible   = Entity.Category == NomenclatureCategory.equipment;
            enumSaleCategory.ItemsEnum = typeof(SaleCategory);
            enumSaleCategory.Binding.AddBinding(Entity, e => e.SaleCategory, w => w.SelectedItemOrNull).InitializeFromSource();

            enumDepositType.Visible   = Entity.Category == NomenclatureCategory.deposit;
            enumDepositType.ItemsEnum = typeof(TypeOfDepositCategory);
            enumDepositType.Binding.AddBinding(Entity, e => e.TypeOfDepositCategory, w => w.SelectedItemOrNull).InitializeFromSource();

            comboMobileCatalog.ItemsEnum = typeof(MobileCatalog);
            comboMobileCatalog.Binding.AddBinding(Entity, e => e.MobileCatalog, w => w.SelectedItem).InitializeFromSource();

            lblSaleCategory.Visible = Nomenclature.GetCategoriesWithSaleCategory().Contains(Entity.Category);
            lblSubType.Visible      = Entity.Category == NomenclatureCategory.deposit;

            entryName.Binding.AddBinding(Entity, e => e.Name, w => w.Text).InitializeFromSource();
            yentryOfficialName.Binding.AddBinding(Entity, e => e.OfficialName, w => w.Text).InitializeFromSource();
            var parallel = new ParallelEditing(yentryOfficialName);

            parallel.SubscribeOnChanges(entryName);
            parallel.GetParallelTextFunc = GenerateOfficialName;

            ycheckRentPriority.Binding.AddBinding(Entity, e => e.RentPriority, w => w.Active).InitializeFromSource();
            checkNotReserve.Binding.AddBinding(Entity, e => e.DoNotReserve, w => w.Active).InitializeFromSource();
            checkcanPrintPrice.Binding.AddBinding(Entity, e => e.CanPrintPrice, w => w.Active).InitializeFromSource();
            labelCanPrintPrice.Visible = checkcanPrintPrice.Visible = Entity.Category == NomenclatureCategory.water && !Entity.IsDisposableTare;
            checkHide.Binding.AddBinding(Entity, e => e.Hide, w => w.Active).InitializeFromSource();
            entryCode1c.Binding.AddBinding(Entity, e => e.Code1c, w => w.Text).InitializeFromSource();
            yspinSumOfDamage.Binding.AddBinding(Entity, e => e.SumOfDamage, w => w.ValueAsDecimal).InitializeFromSource();
            spinWeight.Binding.AddBinding(Entity, e => e.Weight, w => w.Value).InitializeFromSource();
            spinVolume.Binding.AddBinding(Entity, e => e.Volume, w => w.Value).InitializeFromSource();
            spinPercentForMaster.Binding.AddBinding(Entity, e => e.PercentForMaster, w => w.Value).InitializeFromSource();
            checkSerial.Binding.AddBinding(Entity, e => e.IsSerial, w => w.Active).InitializeFromSource();

            ycheckNewBottle.Binding.AddBinding(Entity, e => e.IsNewBottle, w => w.Active).InitializeFromSource();
            ycheckDefectiveBottle.Binding.AddBinding(Entity, e => e.IsDefectiveBottle, w => w.Active).InitializeFromSource();
            ycheckShabbyBottle.Binding.AddBinding(Entity, e => e.IsShabbyBottle, w => w.Active).InitializeFromSource();

            chkIsDiler.Binding.AddBinding(Entity, e => e.IsDiler, w => w.Active).InitializeFromSource();
            spinMinStockCount.Binding.AddBinding(Entity, e => e.MinStockCount, w => w.ValueAsDecimal).InitializeFromSource();

            ycomboFuelTypes.SetRenderTextFunc <FuelType>(x => x.Name);
            ycomboFuelTypes.ItemsList = UoW.GetAll <FuelType>();
            ycomboFuelTypes.Binding.AddBinding(Entity, e => e.FuelType, w => w.SelectedItem).InitializeFromSource();
            ycomboFuelTypes.Visible = Entity.Category == NomenclatureCategory.fuel;

            ylblOnlineStore.Text = Entity.OnlineStore?.Name;

            yentryFolder1c.SubjectType = typeof(Folder1c);
            yentryFolder1c.Binding.AddBinding(Entity, e => e.Folder1C, w => w.Subject).InitializeFromSource();

            yentryProductGroup.JournalButtons      = Buttons.Add | Buttons.Edit;
            yentryProductGroup.RepresentationModel = new ProductGroupVM(UoW, new ProductGroupFilterViewModel());
            yentryProductGroup.Binding.AddBinding(Entity, e => e.ProductGroup, w => w.Subject).InitializeFromSource();

            referenceUnit.SubjectType = typeof(MeasurementUnits);
            referenceUnit.Binding.AddBinding(Entity, n => n.Unit, w => w.Subject).InitializeFromSource();
            yentryrefEqupmentType.SubjectType = typeof(EquipmentType);
            yentryrefEqupmentType.Binding.AddBinding(Entity, e => e.Type, w => w.Subject).InitializeFromSource();
            referenceColor.SubjectType = typeof(EquipmentColors);
            referenceColor.Binding.AddBinding(Entity, e => e.EquipmentColor, w => w.Subject).InitializeFromSource();
            referenceRouteColumn.SubjectType = typeof(Domain.Logistic.RouteColumn);
            referenceRouteColumn.Binding.AddBinding(Entity, n => n.RouteListColumn, w => w.Subject).InitializeFromSource();
            referenceManufacturer.SubjectType = typeof(Manufacturer);
            referenceManufacturer.Binding.AddBinding(Entity, e => e.Manufacturer, w => w.Subject).InitializeFromSource();
            checkNoDeliver.Binding.AddBinding(Entity, e => e.NoDelivey, w => w.Active).InitializeFromSource();

            yentryShortName.Binding.AddBinding(Entity, e => e.ShortName, w => w.Text, new NullToEmptyStringConverter()).InitializeFromSource();
            yentryShortName.MaxLength = 220;
            checkIsArchive.Binding.AddBinding(Entity, e => e.IsArchive, w => w.Active).InitializeFromSource();
            checkIsArchive.Sensitive = ServicesConfig.CommonServices.CurrentPermissionService.ValidatePresetPermission("can_create_and_arc_nomenclatures");

            entityviewmodelentryShipperCounterparty.SetEntityAutocompleteSelectorFactory(
                new DefaultEntityAutocompleteSelectorFactory <Counterparty, CounterpartyJournalViewModel, CounterpartyJournalFilterViewModel>(QS.Project.Services.ServicesConfig.CommonServices)
                );
            entityviewmodelentryShipperCounterparty.Binding.AddBinding(Entity, s => s.ShipperCounterparty, w => w.Subject).InitializeFromSource();
            entityviewmodelentryShipperCounterparty.CanEditReference = true;
            yentryStorageCell.Binding.AddBinding(Entity, s => s.StorageCell, w => w.Text).InitializeFromSource();
            yspinbuttonPurchasePrice.Binding.AddBinding(Entity, s => s.PurchasePrice, w => w.ValueAsDecimal).InitializeFromSource();
            UpdateVisibilityForEshopParam();

            #region Вкладка характиристики

            ytextDescription.Binding.AddBinding(Entity, e => e.Description, w => w.Buffer.Text).InitializeFromSource();
            nomenclaturecharacteristicsview1.Uow = UoWGeneric;

            #endregion

            int currNomenclatureOfDependence = (Entity.DependsOnNomenclature == null ? 0 : Entity.DependsOnNomenclature.Id);

            dependsOnNomenclature.RepresentationModel = new NomenclatureDependsFromVM(Entity);
            dependsOnNomenclature.Binding.AddBinding(Entity, e => e.DependsOnNomenclature, w => w.Subject).InitializeFromSource();

            ConfigureInputs(Entity.Category, Entity.TareVolume);

            pricesView.UoWGeneric = UoWGeneric;
            pricesView.Sensitive  = ServicesConfig.CommonServices.CurrentPermissionService.ValidatePresetPermission("can_create_and_arc_nomenclatures");

            Imageslist.ImageButtonPressEvent += Imageslist_ImageButtonPressEvent;

            Entity.PropertyChanged += Entity_PropertyChanged;

            //make actions menu
            var menu     = new Gtk.Menu();
            var menuItem = new Gtk.MenuItem("Заменить все ссылки на номенклатуру...");
            menuItem.Activated += MenuItem_ReplaceLinks_Activated;;
            menu.Add(menuItem);
            menuActions.Menu = menu;
            menu.ShowAll();
            menuActions.Sensitive = !UoWGeneric.IsNew;
        }
Esempio n. 3
0
        private void Configure()
        {
            notebook1.ShowTabs = false;

            #region RadioButtons

            radioInfo.Active = true;
            radioEquipment.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();
            radioEquipment.Toggled += OnRadioEquipmentToggled;

            radioPrice.Binding.AddBinding(ViewModel, vm => vm.SensitivityRadioPriceButton, w => w.Sensitive).InitializeFromSource();
            radioPrice.Toggled += OnRadioPriceToggled;

            #endregion

            buttonSave.Clicked   += (sender, args) => ViewModel.SaveCommand.Execute();
            buttonCancel.Clicked += (sender, args) => ViewModel.Close(true, CloseSource.Cancel);
            ylabelCreationDate.Binding.AddFuncBinding(ViewModel.Entity, s => s.CreateDate.HasValue ? s.CreateDate.Value.ToString("dd.MM.yyyy HH:mm") : "", w => w.LabelProp).InitializeFromSource();
            ylabelCreatedBy.Binding.AddFuncBinding(ViewModel.Entity, e => ViewModel.GetUserEmployeeName(), w => w.LabelProp).InitializeFromSource();

            enumVAT.ItemsEnum = typeof(VAT);
            enumVAT.Binding.AddBinding(ViewModel.Entity, e => e.VAT, w => w.SelectedItem).InitializeFromSource();

            enumCategory.Changed       += ViewModel.OnEnumKindChanged;
            enumCategory.ChangedByUser += ViewModel.OnEnumKindChangedByUser;
            enumCategory.ItemsEnum      = typeof(NomenclatureCategory);
            enumCategory.Binding.AddBinding(ViewModel.Entity, e => e.Category, w => w.SelectedItem).InitializeFromSource();

            enumTareVolume.ItemsEnum = typeof(TareVolume);
            enumTareVolume.Binding.AddBinding(ViewModel.Entity, e => e.TareVolume, w => w.SelectedItemOrNull).InitializeFromSource();
            enumTareVolume.Binding.AddBinding(ViewModel, vm => vm.VisibilityWaterCategoryItems, w => w.Visible).InitializeFromSource();
            ycheckDisposableTare.Binding.AddBinding(ViewModel.Entity, e => e.IsDisposableTare, w => w.Active).InitializeFromSource();
            ycheckDisposableTare.Binding.AddBinding(ViewModel, vm => vm.VisibilityWaterOrBottleCategoryItems, w => w.Visible).InitializeFromSource();
            labelTypeTare.Binding.AddBinding(ViewModel, vm => vm.VisibilityWaterOrBottleCategoryItems, w => w.Visible).InitializeFromSource();
            labelTareVolume.Binding.AddBinding(ViewModel, vm => vm.VisibilityWaterCategoryItems, w => w.Visible).InitializeFromSource();

            yСolorBtnBottleCapColor.Binding.AddBinding(ViewModel.Entity, e => e.BottleCapColor, w => w.Color, new ColorTextToGdkColorConverter()).InitializeFromSource();
            yСolorBtnBottleCapColor.Binding.AddBinding(ViewModel, vm => vm.VisibilityBottleCapColorItems, w => w.Visible).InitializeFromSource();
            yСolorBtnBottleCapColor.ColorSet += YСolorBtnBottleCapColorOnColorSet;
            ylblBottleCapColor.Binding.AddBinding(ViewModel, vm => vm.VisibilityBottleCapColorItems, w => w.Visible).InitializeFromSource();

            enumSaleCategory.ItemsEnum = typeof(SaleCategory);
            enumSaleCategory.Binding.AddBinding(ViewModel.Entity, e => e.SaleCategory, w => w.SelectedItemOrNull).InitializeFromSource();
            enumSaleCategory.Binding.AddBinding(ViewModel, vm => vm.VisibilitySalesCategoriesItems, w => w.Visible).InitializeFromSource();
            lblSaleCategory.Binding.AddBinding(ViewModel, vm => vm.VisibilitySalesCategoriesItems, w => w.Visible).InitializeFromSource();

            enumDepositType.ItemsEnum = typeof(TypeOfDepositCategory);
            enumDepositType.Binding.AddBinding(ViewModel.Entity, e => e.TypeOfDepositCategory, w => w.SelectedItemOrNull).InitializeFromSource();
            enumDepositType.Binding.AddBinding(ViewModel, vm => vm.VisibilityDepositCategoryItems, w => w.Visible).InitializeFromSource();
            lblSubType.Binding.AddBinding(ViewModel, vm => vm.VisibilityDepositCategoryItems, w => w.Visible).InitializeFromSource();

            comboMobileCatalog.ItemsEnum = typeof(MobileCatalog);
            comboMobileCatalog.Binding.AddBinding(ViewModel.Entity, e => e.MobileCatalog, w => w.SelectedItem).InitializeFromSource();

            entryName.Binding.AddBinding(ViewModel.Entity, e => e.Name, w => w.Text).InitializeFromSource();
            yentryOfficialName.Binding.AddBinding(ViewModel.Entity, e => e.OfficialName, w => w.Text).InitializeFromSource();
            var parallel = new ParallelEditing(yentryOfficialName);
            parallel.SubscribeOnChanges(entryName);
            parallel.GetParallelTextFunc = GenerateOfficialName;

            checkNotReserve.Binding.AddBinding(ViewModel.Entity, e => e.DoNotReserve, w => w.Active).InitializeFromSource();
            checkNotReserve.Binding.AddBinding(ViewModel, vm => vm.SensitivityNotServiceOrDepositCategoryItems, w => w.Sensitive).InitializeFromSource();
            labelReserve.Binding.AddBinding(ViewModel, vm => vm.SensitivityNotServiceOrDepositCategoryItems, w => w.Sensitive).InitializeFromSource();
            checkcanPrintPrice.Binding.AddBinding(ViewModel.Entity, e => e.CanPrintPrice, w => w.Active).InitializeFromSource();
            checkcanPrintPrice.Binding.AddFuncBinding(ViewModel, vm => vm.VisibilityWaterInNotDisposableTareCategoryItems, w => w.Visible).InitializeFromSource();
            labelCanPrintPrice.Binding.AddBinding(ViewModel, vm => vm.VisibilityWaterInNotDisposableTareCategoryItems, w => w.Visible).InitializeFromSource();

            checkHide.Binding.AddBinding(ViewModel.Entity, e => e.Hide, w => w.Active).InitializeFromSource();
            entryCode1c.Binding.AddBinding(ViewModel.Entity, e => e.Code1c, w => w.Text).InitializeFromSource();
            yspinSumOfDamage.Binding.AddBinding(ViewModel.Entity, e => e.SumOfDamage, w => w.ValueAsDecimal).InitializeFromSource();
            spinWeight.Binding.AddBinding(ViewModel.Entity, e => e.Weight, w => w.Value).InitializeFromSource();
            spinWeight.Binding.AddBinding(ViewModel, vm => vm.SensitivityNotServiceOrDepositCategoryItems, w => w.Sensitive).InitializeFromSource();
            spinVolume.Binding.AddBinding(ViewModel.Entity, e => e.Volume, w => w.Value).InitializeFromSource();
            spinVolume.Binding.AddBinding(ViewModel, vm => vm.SensitivityNotServiceOrDepositCategoryItems, w => w.Sensitive).InitializeFromSource();
            spinPercentForMaster.Binding.AddBinding(ViewModel.Entity, e => e.PercentForMaster, w => w.Value).InitializeFromSource();
            spinPercentForMaster.Binding.AddBinding(ViewModel, vm => vm.VisibilityMasterCategoryItems, w => w.Visible).InitializeFromSource();
            lblPercentForMaster.Binding.AddBinding(ViewModel, vm => vm.VisibilityMasterCategoryItems, w => w.Visible).InitializeFromSource();

            labelBottle.Binding.AddBinding(ViewModel, vm => vm.VisibilityBottleCategoryItems, w => w.Visible).InitializeFromSource();
            ycheckNewBottle.Binding.AddBinding(ViewModel.Entity, e => e.IsNewBottle, w => w.Active).InitializeFromSource();
            ycheckNewBottle.Binding.AddBinding(ViewModel, vm => vm.VisibilityBottleCategoryItems, w => w.Visible).InitializeFromSource();
            ycheckDefectiveBottle.Binding.AddBinding(ViewModel.Entity, e => e.IsDefectiveBottle, w => w.Active).InitializeFromSource();
            ycheckDefectiveBottle.Binding.AddBinding(ViewModel, vm => vm.VisibilityBottleCategoryItems, w => w.Visible).InitializeFromSource();
            ycheckShabbyBottle.Binding.AddBinding(ViewModel.Entity, e => e.IsShabbyBottle, w => w.Active).InitializeFromSource();
            ycheckShabbyBottle.Binding.AddBinding(ViewModel, vm => vm.VisibilityBottleCategoryItems, w => w.Visible).InitializeFromSource();

            chkIsDiler.Binding.AddBinding(ViewModel.Entity, e => e.IsDiler, w => w.Active).InitializeFromSource();
            spinMinStockCount.Binding.AddBinding(ViewModel.Entity, e => e.MinStockCount, w => w.ValueAsDecimal).InitializeFromSource();

            ycomboFuelTypes.SetRenderTextFunc <FuelType>(x => x.Name);
            ycomboFuelTypes.ItemsList = ViewModel.UoW.GetAll <FuelType>();
            ycomboFuelTypes.Binding.AddBinding(ViewModel.Entity, e => e.FuelType, w => w.SelectedItem).InitializeFromSource();
            ycomboFuelTypes.Binding.AddBinding(ViewModel, vm => vm.VisibilityFuelCategoryItems, w => w.Visible).InitializeFromSource();
            lblFuelType.Binding.AddBinding(ViewModel, vm => vm.VisibilityFuelCategoryItems, w => w.Visible).InitializeFromSource();

            ylblOnlineStore.Text = ViewModel.Entity.OnlineStore?.Name;
            ylblOnlineStore.Binding.AddBinding(ViewModel, vm => vm.IsOnlineStoreNomenclature, w => w.Visible).InitializeFromSource();
            ylblOnlineStoreStr.Binding.AddBinding(ViewModel, vm => vm.IsOnlineStoreNomenclature, w => w.Visible).InitializeFromSource();

            yentryFolder1c.SubjectType = typeof(Folder1c);
            yentryFolder1c.Binding.AddBinding(ViewModel.Entity, e => e.Folder1C, w => w.Subject).InitializeFromSource();

            yentryProductGroup.JournalButtons      = Buttons.Add | Buttons.Edit;
            yentryProductGroup.RepresentationModel = new ProductGroupVM(ViewModel.UoW, new ProductGroupFilterViewModel());
            yentryProductGroup.Binding.AddBinding(ViewModel.Entity, e => e.ProductGroup, w => w.Subject).InitializeFromSource();

            referenceUnit.SubjectType = typeof(MeasurementUnits);
            referenceUnit.Binding.AddBinding(ViewModel.Entity, n => n.Unit, w => w.Subject).InitializeFromSource();

            referenceRouteColumn.SubjectType = typeof(RouteColumn);
            referenceRouteColumn.Binding.AddBinding(ViewModel.Entity, n => n.RouteListColumn, w => w.Subject).InitializeFromSource();

            checkNoDeliver.Binding.AddBinding(ViewModel.Entity, e => e.NoDelivey, w => w.Active).InitializeFromSource();

            yentryShortName.Binding.AddBinding(ViewModel.Entity, e => e.ShortName, w => w.Text, new NullToEmptyStringConverter()).InitializeFromSource();
            yentryShortName.MaxLength = 220;
            checkIsArchive.Binding.AddBinding(ViewModel.Entity, e => e.IsArchive, w => w.Active).InitializeFromSource();
            checkIsArchive.Binding.AddBinding(ViewModel, vm => vm.SensitivityCheckIsArchive, w => w.Sensitive).InitializeFromSource();

            entityviewmodelentryShipperCounterparty.SetEntityAutocompleteSelectorFactory(ViewModel.CounterpartySelectorFactory);
            entityviewmodelentryShipperCounterparty.Binding.AddBinding(ViewModel.Entity, s => s.ShipperCounterparty, w => w.Subject).InitializeFromSource();
            entityviewmodelentryShipperCounterparty.Binding.AddBinding(ViewModel, vm => vm.IsEshopNomenclature, w => w.Visible).InitializeFromSource();
            entityviewmodelentryShipperCounterparty.CanEditReference = true;
            labelShipperCounterparty.Binding.AddBinding(ViewModel, vm => vm.IsEshopNomenclature, w => w.Visible).InitializeFromSource();
            yentryStorageCell.Binding.AddBinding(ViewModel.Entity, s => s.StorageCell, w => w.Text).InitializeFromSource();
            yentryStorageCell.Binding.AddBinding(ViewModel, vm => vm.IsEshopNomenclature, w => w.Visible).InitializeFromSource();
            labelStorageCell.Binding.AddBinding(ViewModel, vm => vm.IsEshopNomenclature, w => w.Visible).InitializeFromSource();

            #region Вкладка Оборудование

            labelManufacturer.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();
            referenceManufacturer.SubjectType = typeof(Manufacturer);
            referenceManufacturer.Binding.AddBinding(ViewModel.Entity, e => e.Manufacturer, w => w.Subject).InitializeFromSource();
            referenceManufacturer.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();

            labelColor.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();
            referenceColor.SubjectType = typeof(EquipmentColors);
            referenceColor.Binding.AddBinding(ViewModel.Entity, e => e.EquipmentColor, w => w.Subject).InitializeFromSource();
            referenceColor.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();

            labelKind.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();
            yentryrefEqupmentKind.SubjectType = typeof(EquipmentKind);
            yentryrefEqupmentKind.Binding.AddBinding(ViewModel.Entity, e => e.Kind, w => w.Subject).InitializeFromSource();
            yentryrefEqupmentKind.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();

            labelModel.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();
            entryModel.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();

            labelSerial.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();
            checkSerial.Binding.AddBinding(ViewModel.Entity, e => e.IsSerial, w => w.Active).InitializeFromSource();
            checkSerial.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();

            labelRentPriority.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();
            ycheckRentPriority.Binding.AddBinding(ViewModel.Entity, e => e.RentPriority, w => w.Active).InitializeFromSource();
            ycheckRentPriority.Binding.AddBinding(ViewModel, vm => vm.SensitivityEquipmentCategoryItems, w => w.Sensitive).InitializeFromSource();

            #endregion

            #region Вкладка характиристики

            ytextDescription.Binding.AddBinding(ViewModel.Entity, e => e.Description, w => w.Buffer.Text).InitializeFromSource();
            nomenclaturecharacteristicsview1.Uow = ViewModel.UoWGeneric;

            #endregion

            #region Вкладка Цена закупки

            nomenclaturePurchasePricesView.ViewModel = ViewModel.NomenclaturePurchasePricesViewModel;

            #endregion

            entityViewModelEntryNomenclature.SetEntityAutocompleteSelectorFactory(ViewModel.NomenclatureSelectorFactory);
            entityViewModelEntryNomenclature.Binding.AddBinding(ViewModel.Entity, s => s.DependsOnNomenclature, w => w.Subject).InitializeFromSource();
            entityViewModelEntryNomenclature.CanEditReference = true;

            pricesView.UoWGeneric            = ViewModel.UoWGeneric;
            pricesView.Sensitive             = ServicesConfig.CommonServices.CurrentPermissionService.ValidatePresetPermission("can_create_and_arc_nomenclatures");
            ViewModel.PricesViewSaveChanges += () => pricesView.SaveChanges();

            Imageslist.ImageButtonPressEvent += Imageslist_ImageButtonPressEvent;

            ViewModel.Entity.PropertyChanged += Entity_PropertyChanged;

            //make actions menu
            var menu     = new Menu();
            var menuItem = new MenuItem("Заменить все ссылки на номенклатуру...");
            menuItem.Activated += MenuItem_ReplaceLinks_Activated;;
            menu.Add(menuItem);
            menuActions.Menu = menu;
            menu.ShowAll();
            menuActions.Sensitive = !ViewModel.UoWGeneric.IsNew;
        }
Esempio n. 4
0
        private void ConfigureDlg()
        {
            notebook1.CurrentPage = 0;
            notebook1.ShowTabs    = false;
            //Initializing null fields
            emailsView.UoW = UoWGeneric;
            phonesView.UoW = UoWGeneric;
            if (UoWGeneric.Root.Emails == null)
            {
                UoWGeneric.Root.Emails = new List <Email> ();
            }
            emailsView.Emails = UoWGeneric.Root.Emails;
            if (UoWGeneric.Root.Phones == null)
            {
                UoWGeneric.Root.Phones = new List <Phone> ();
            }
            phonesView.Phones = UoWGeneric.Root.Phones;
            if (UoWGeneric.Root.CounterpartyContracts == null)
            {
                UoWGeneric.Root.CounterpartyContracts = new List <Contract> ();
            }
            //Other fields properties
            validatedINN.ValidationMode = validatedKPP.ValidationMode = validatedentryOGRN.ValidationMode = QSWidgetLib.ValidationType.numeric;
            validatedINN.Binding.AddBinding(Entity, e => e.INN, w => w.Text).InitializeFromSource();
            validatedKPP.Binding.AddBinding(Entity, e => e.KPP, w => w.Text).InitializeFromSource();
            validatedentryOGRN.Binding.AddBinding(Entity, e => e.OGRN, w => w.Text).InitializeFromSource();

            yentrySignFIO.Binding.AddBinding(Entity, e => e.SignatoryFIO, w => w.Text).InitializeFromSource();
            yentrySignFIOGenetivus.Binding.AddBinding(Entity, e => e.SignatoryFIOGenetivus, w => w.Text).InitializeFromSource();
            yentrySignPost.Binding.AddBinding(Entity, e => e.SignatoryPost, w => w.Text).InitializeFromSource();
            yentrySignBaseOf.Binding.AddBinding(Entity, e => e.SignatoryBaseOf, w => w.Text).InitializeFromSource();

            //Нужно что бы подстраховаться, если в базе будет NULL адрес не добавится вообще.
            if (Entity.ActualAddress == null)
            {
                Entity.ActualAddress = new QSOsm.Data.JsonAddress();
            }
            if (Entity.LegalAddress == null)
            {
                Entity.LegalAddress = new QSOsm.Data.JsonAddress();
            }
            if (Entity.DocDeliveryAddress == null)
            {
                Entity.DocDeliveryAddress = new QSOsm.Data.JsonAddress();
            }

            jsonaddressLegal.Binding.AddBinding(Entity, e => e.LegalAddress, w => w.Address).InitializeFromSource();
            jsonaddressActual.Binding.AddBinding(Entity, e => e.ActualAddress, w => w.Address).InitializeFromSource();
            jsonaddressDocDelivery.Binding.AddBinding(Entity, e => e.DocDeliveryAddress, w => w.Address).InitializeFromSource();

            yentryName.Binding.AddBinding(Entity, e => e.Name, w => w.Text).InitializeFromSource();
            entryFullName.Binding.AddBinding(Entity, e => e.FullName, w => w.Text).InitializeFromSource();
            var parallel = new ParallelEditing(entryFullName);

            parallel.SubscribeOnChanges(yentryName);
            parallel.GetParallelTextFunc = GenerateOfficialName;
            yentryInternalName.Binding.AddBinding(Entity, e => e.InternalName, w => w.Text).InitializeFromSource();

            comboDocumentsDelivery.ItemsEnum = typeof(DocumentsDelivery);
            comboDocumentsDelivery.Binding.AddBinding(Entity, e => e.DocumentsDelivery, w => w.SelectedItem).InitializeFromSource();

            referencePaymentManager.ItemsQuery = Repository.Company.EmployeeRepository.OfficeWorkersQuery();
            referencePaymentManager.Binding.AddBinding(Entity, e => e.PaymentManager, w => w.Subject).InitializeFromSource();

            dataComment.Binding.AddBinding(Entity, e => e.Comment, w => w.Buffer.Text).InitializeFromSource();

            ycheckIsArchived.Binding.AddBinding(Entity, e => e.IsArchive, w => w.Active).InitializeFromSource();
            checkHaveArbitration.Binding.AddBinding(Entity, e => e.HaveArbitration, w => w.Active).InitializeFromSource();
            checkRequirePrepayment.Binding.AddBinding(Entity, e => e.RequirePrepayment, w => w.Active).InitializeFromSource();
            ycheckContourFocus.Binding.AddBinding(Entity, e => e.ContourFocus, w => w.Active).InitializeFromSource();
            ycheckMassRegistration.Binding.AddBinding(Entity, e => e.MassRegistration, w => w.Active).InitializeFromSource();
            ydateCannotFind.Binding.AddBinding(Entity, e => e.CannotFindSince, w => w.DateOrNull).InitializeFromSource();

            checkCustomer.Binding.AddBinding(Entity, e => e.CooperationCustomer, w => w.Active).InitializeFromSource();
            checkSupplier.Binding.AddBinding(Entity, e => e.CooperationSupplier, w => w.Active).InitializeFromSource();
            checkPartner.Binding.AddBinding(Entity, e => e.CooperationPartner, w => w.Active).InitializeFromSource();

            //Setting subjects
            accountsView.ParentReference              = new ParentReferenceGeneric <Counterparty, Account> (UoWGeneric, c => c.Accounts);
            deliveryPointView.DeliveryPointUoW        = UoWGeneric;
            counterpartyContractsView.CounterpartyUoW = UoWGeneric;
            //Setting Contacts
            contactsview1.CounterpartyUoW = UoWGeneric;
        }
Esempio n. 5
0
        private void ConfigureDlg()
        {
            notebook1.ShowTabs          = false;
            spinWeight.Sensitive        = false;
            spinVolume.Sensitive        = false;
            lblPercentForMaster.Visible = spinPercentForMaster.Visible = false;
            entryName.IsEditable        = true;
            radioInfo.Active            = true;

            ylabelCreationDate.Binding.AddFuncBinding(Entity, s => s.CreateDate.HasValue ? s.CreateDate.Value.ToString("dd.MM.yyyy HH:mm") : "", w => w.LabelProp).InitializeFromSource();
            ylabelCreatedBy.Binding.AddFuncBinding <Nomenclature>(Entity, s => GetUserEmployeeName(s.CreatedBy), w => w.LabelProp).InitializeFromSource();

            enumVAT.ItemsEnum = typeof(VAT);
            enumVAT.Binding.AddBinding(Entity, e => e.VAT, w => w.SelectedItem).InitializeFromSource();

            enumType.ItemsEnum = typeof(NomenclatureCategory);
            enumType.Binding.AddBinding(Entity, e => e.Category, w => w.SelectedItem).InitializeFromSource();

            enumTareVolume.ItemsEnum = typeof(TareVolume);
            enumTareVolume.Binding.AddBinding(Entity, e => e.TareVolume, w => w.SelectedItemOrNull).InitializeFromSource();
            ycheckDisposableTare.Binding.AddBinding(Entity, e => e.IsDisposableTare, w => w.Active).InitializeFromSource();

            enumEquipmentSubtype.Visible   = Entity.Category == NomenclatureCategory.equipment;
            enumEquipmentSubtype.ItemsEnum = typeof(SubtypeOfEquipmentCategory);
            enumEquipmentSubtype.Binding.AddBinding(Entity, e => e.SubTypeOfEquipmentCategory, w => w.SelectedItem).InitializeFromSource();

            enumDepositType.Visible   = Entity.Category == NomenclatureCategory.deposit;
            enumDepositType.ItemsEnum = typeof(TypeOfDepositCategory);
            enumDepositType.Binding.AddBinding(Entity, e => e.TypeOfDepositCategory, w => w.SelectedItemOrNull).InitializeFromSource();

            comboMobileCatalog.ItemsEnum = typeof(MobileCatalog);
            comboMobileCatalog.Binding.AddBinding(Entity, e => e.MobileCatalog, w => w.SelectedItem).InitializeFromSource();

            labelSubType.Visible = (Entity.Category == NomenclatureCategory.deposit || Entity.Category == NomenclatureCategory.equipment);

            entryName.Binding.AddBinding(Entity, e => e.Name, w => w.Text).InitializeFromSource();
            yentryOfficialName.Binding.AddBinding(Entity, e => e.OfficialName, w => w.Text).InitializeFromSource();
            var parallel = new ParallelEditing(yentryOfficialName);

            parallel.SubscribeOnChanges(entryName);
            parallel.GetParallelTextFunc = GenerateOfficialName;

            ycheckRentPriority.Binding.AddBinding(Entity, e => e.RentPriority, w => w.Active).InitializeFromSource();
            checkNotReserve.Binding.AddBinding(Entity, e => e.DoNotReserve, w => w.Active).InitializeFromSource();
            checkcanPrintPrice.Binding.AddBinding(Entity, e => e.CanPrintPrice, w => w.Active).InitializeFromSource();
            labelCanPrintPrice.Visible = checkcanPrintPrice.Visible = Entity.Category == NomenclatureCategory.water && !Entity.IsDisposableTare;
            checkHide.Binding.AddBinding(Entity, e => e.Hide, w => w.Active).InitializeFromSource();
            entryCode1c.Binding.AddBinding(Entity, e => e.Code1c, w => w.Text).InitializeFromSource();
            yspinSumOfDamage.Binding.AddBinding(Entity, e => e.SumOfDamage, w => w.ValueAsDecimal).InitializeFromSource();
            spinWeight.Binding.AddBinding(Entity, e => e.Weight, w => w.Value).InitializeFromSource();
            spinVolume.Binding.AddBinding(Entity, e => e.Volume, w => w.Value).InitializeFromSource();
            spinPercentForMaster.Binding.AddBinding(Entity, e => e.PercentForMaster, w => w.Value).InitializeFromSource();
            checkSerial.Binding.AddBinding(Entity, e => e.IsSerial, w => w.Active).InitializeFromSource();
            ycheckNewBottle.Binding.AddBinding(Entity, e => e.IsNewBottle, w => w.Active).InitializeFromSource();
            ycheckDefectiveBottle.Binding.AddBinding(Entity, e => e.IsDefectiveBottle, w => w.Active).InitializeFromSource();
            chkIsDiler.Binding.AddBinding(Entity, e => e.IsDiler, w => w.Active).InitializeFromSource();
            spinMinStockCount.Binding.AddBinding(Entity, e => e.MinStockCount, w => w.ValueAsDecimal).InitializeFromSource();

            yentryFolder1c.SubjectType = typeof(Folder1c);
            yentryFolder1c.Binding.AddBinding(Entity, e => e.Folder1C, w => w.Subject).InitializeFromSource();
            yentryProductGroup.SubjectType = typeof(ProductGroup);
            yentryProductGroup.Binding.AddBinding(Entity, e => e.ProductGroup, w => w.Subject).InitializeFromSource();
            referenceUnit.SubjectType = typeof(MeasurementUnits);
            referenceUnit.Binding.AddBinding(Entity, n => n.Unit, w => w.Subject).InitializeFromSource();
            yentryrefEqupmentType.SubjectType = typeof(EquipmentType);
            yentryrefEqupmentType.Binding.AddBinding(Entity, e => e.Type, w => w.Subject).InitializeFromSource();
            referenceColor.SubjectType = typeof(EquipmentColors);
            referenceColor.Binding.AddBinding(Entity, e => e.EquipmentColor, w => w.Subject).InitializeFromSource();
            referenceWarehouse.ItemsQuery = StoreDocumentHelper.GetWarehouseQuery();
            referenceWarehouse.Binding.AddBinding(Entity, n => n.Warehouse, w => w.Subject).InitializeFromSource();
            referenceRouteColumn.SubjectType = typeof(Domain.Logistic.RouteColumn);
            referenceRouteColumn.Binding.AddBinding(Entity, n => n.RouteListColumn, w => w.Subject).InitializeFromSource();
            referenceManufacturer.SubjectType = typeof(Manufacturer);
            referenceManufacturer.Binding.AddBinding(Entity, e => e.Manufacturer, w => w.Subject).InitializeFromSource();
            checkNoDeliver.Binding.AddBinding(Entity, e => e.NoDelivey, w => w.Active).InitializeFromSource();

            yentryShortName.Binding.AddBinding(Entity, e => e.ShortName, w => w.Text, new NullToEmptyStringConverter()).InitializeFromSource();
            yentryShortName.MaxLength = 220;
            checkIsArchive.Binding.AddBinding(Entity, e => e.IsArchive, w => w.Active).InitializeFromSource();
            checkIsArchive.Sensitive = QSMain.User.Permissions["can_create_and_arc_nomenclatures"];

            #region Вкладка характиристики

            ytextDescription.Binding.AddBinding(Entity, e => e.Description, w => w.Buffer.Text).InitializeFromSource();
            nomenclaturecharacteristicsview1.Uow = UoWGeneric;

            #endregion

            int currNomenclatureOfDependence = (Entity.DependsOnNomenclature == null ? 0 : Entity.DependsOnNomenclature.Id);

            dependsOnNomenclature.RepresentationModel = new NomenclatureDependsFromVM(Entity);
            dependsOnNomenclature.Binding.AddBinding(Entity, e => e.DependsOnNomenclature, w => w.Subject).InitializeFromSource();

            ConfigureInputs(Entity.Category);

            pricesView.UoWGeneric = UoWGeneric;
            pricesView.Sensitive  = QSMain.User.Permissions["can_create_and_arc_nomenclatures"];

            Imageslist.ImageButtonPressEvent += Imageslist_ImageButtonPressEvent;

            Entity.PropertyChanged += Entity_PropertyChanged;

            //make actions menu
            var menu     = new Gtk.Menu();
            var menuItem = new Gtk.MenuItem("Заменить все ссылки на номенклатуру...");
            menuItem.Activated += MenuItem_ReplaceLinks_Activated;;
            menu.Add(menuItem);
            menuActions.Menu = menu;
            menu.ShowAll();
            menuActions.Sensitive = !UoWGeneric.IsNew;
        }