Exemplo n.º 1
0
        protected void OnBtnAddNomenclatureClicked(object sender, System.EventArgs e)
        {
            var nomenclatureFilter = new NomenclatureRepFilter(UoWGeneric);

            nomenclatureFilter.SetAndRefilterAtOnce(
                x => x.AvailableCategories         = Nomenclature.GetCategoriesForSaleToOrder(),
                x => x.DefaultSelectedCategory     = NomenclatureCategory.water,
                x => x.DefaultSelectedSaleCategory = SaleCategory.forSale
                );
            PermissionControlledRepresentationJournal SelectDialog = new PermissionControlledRepresentationJournal(new NomenclatureForSaleVM(nomenclatureFilter))
            {
                Mode       = JournalSelectMode.Multiple,
                ShowFilter = true
            };

            SelectDialog.CustomTabName("Номенклатура на продажу");
            SelectDialog.ObjectSelected += (s, ea) => {
                var selectedNodes = ea.GetNodes <NomenclatureForSaleVMNode>();
                if (!selectedNodes.Any())
                {
                    return;
                }
                foreach (var node in selectedNodes)
                {
                    Nomenclature n = UoWGeneric.GetById <Nomenclature>(node.Id);
                    if (n != null && !Entity.ObservableNomenclatures.Any(x => x == n))
                    {
                        Entity.ObservableNomenclatures.Add(n);
                    }
                }
            };
            TabParent.AddSlaveTab(this, SelectDialog);
        }
Exemplo n.º 2
0
 void ActionTransferOperationJournal_Activated(object sender, System.EventArgs e)
 {
     tdiMain.OpenTab(
         PermissionControlledRepresentationJournal.GenerateHashName <TransferOperationsVM>(),
         () => new PermissionControlledRepresentationJournal(new TransferOperationsVM()).CustomTabName("Переносы между точками доставки")
         );
 }
        private void Configure()
        {
            var journal = new PermissionControlledRepresentationJournal(model);

            journal.Mode            = multipleSelect ? JournalSelectMode.Multiple : JournalSelectMode.Single;
            journal.ObjectSelected += (sender, e) => {
                List <EntityNode> selectedResult = new List <EntityNode>();
                foreach (int selectedId in e.GetSelectedIds())
                {
                    selectedResult.Add(new EntityNode(selectedId, entityType));
                }
                OnEntitySelectedResult?.Invoke(sender, new JournalSelectedNodesEventArgs(selectedResult.ToArray()));
            };
            JournalTab = journal;
            JournalTab.TabNameChanged += (sender, e) => TabNameChanged?.Invoke(sender, e);
            JournalTab.TabClosed      += (sender, e) => {
                TabParent?.ForceCloseTab(this);
                journal.Destroy();
                Dispose();
            };
            journal.Destroyed += (sender, e) => {
                TabParent?.ForceCloseTab(this);
                journal.Destroy();
                Dispose();
            };
        }
Exemplo n.º 4
0
        /// <summary>
        /// Открывает диалог выбора объекта
        /// </summary>
        public void OpenSelectDialog(string newTabTitle = null)
        {
            var modelWithParent = RepresentationModel as IRepresentationModelWithParent;

            if (modelWithParent != null && MyEntityDialogExist)
            {
                if (MyEntityDialog.UoW.IsNew && MyEntityDialog.EntityObject == modelWithParent.GetParent)
                {
                    if (DialogHelper.SaveBeforeSelectFromChildReference(modelWithParent.GetParent.GetType(), SubjectType))
                    {
                        if (!MyTdiDialog.Save())
                        {
                            return;
                        }
                    }
                    else
                    {
                        return;
                    }
                }
            }

            var selectDialog = new PermissionControlledRepresentationJournal(RepresentationModel, JournalButtons);

            if (newTabTitle != null)
            {
                selectDialog.CustomTabName(newTabTitle);
            }
            selectDialog.Mode            = JournalSelectMode.Single;
            selectDialog.ObjectSelected += SelectDialog_ObjectSelected;
            MyTab.TabParent.AddSlaveTab(MyTab, selectDialog);
        }
Exemplo n.º 5
0
        protected void OnButtonAddClicked(object sender, EventArgs e)
        {
            var addEmployeeDlg = new PermissionControlledRepresentationJournal(new EmployeesVM());

            addEmployeeDlg.Mode            = JournalSelectMode.Single;
            addEmployeeDlg.ObjectSelected += AddEmployeeDlg_ObjectSelected;
            MyTab.TabParent.AddSlaveTab(MyTab, addEmployeeDlg);
        }
Exemplo n.º 6
0
        protected void OnButtonAddDeliveryPointsClicked(object sender, EventArgs e)
        {
            var dlg = new PermissionControlledRepresentationJournal(new ViewModel.ClientDeliveryPointsVM(UoW, Entity.Counterparty));

            dlg.Mode            = JournalSelectMode.Multiple;
            dlg.ObjectSelected += Dlg_ObjectSelected;
            TabParent.AddSlaveTab(this, dlg);
        }
Exemplo n.º 7
0
 void ActionClientBalance_Activated(object sender, System.EventArgs e)
 {
     tdiMain.OpenTab(
         PermissionControlledRepresentationJournal.GenerateHashName <ClientEquipmentBalanceVM>(),
         () => {
         var journal = new PermissionControlledRepresentationJournal(new ClientEquipmentBalanceVM());
         journal.CustomTabName("Оборудование у клиентов");
         return(journal);
     }
         );
 }
Exemplo n.º 8
0
 void ActionRouteListTable_Activated(object sender, System.EventArgs e)
 {
     tdiMain.OpenTab(
         PermissionControlledRepresentationJournal.GenerateHashName <RouteListsVM>(),
         () => {
         var vm = new RouteListsVM();
         vm.Filter.SetAndRefilterAtOnce(x => x.SetFilterDates(System.DateTime.Today.AddMonths(-2), System.DateTime.Today));
         Buttons buttons = Buttons.Add | Buttons.Edit;
         return(new PermissionControlledRepresentationJournal(vm, buttons));
     }
         );
 }
Exemplo n.º 9
0
 void ActionPremiumJournal_Activated(object sender, System.EventArgs e)
 {
     tdiMain.OpenTab(
         PermissionControlledRepresentationJournal.GenerateHashName <PremiumVM>(),
         () => {
         Buttons buttons = ServicesConfig.CommonServices.CurrentPermissionService.ValidatePresetPermission("can_delete_fines")
                                                                                                               ? Buttons.All
                                                                                                               : (Buttons.Add | Buttons.Edit);
         return(new PermissionControlledRepresentationJournal(new PremiumVM(), buttons).CustomTabName("Журнал премий"));
     }
         );
 }
Exemplo n.º 10
0
 void ActionFinesJournal_Activated(object sender, System.EventArgs e)
 {
     tdiMain.OpenTab(
         PermissionControlledRepresentationJournal.GenerateHashName <FinesVM>(),
         () => {
         FinesVM vm = new FinesVM();
         vm.Filter.SetAndRefilterAtOnce(f => f.SetFilterDates(System.DateTime.Today.AddMonths(-2), System.DateTime.Today));
         Buttons buttons = ServicesConfig.CommonServices.CurrentPermissionService.ValidatePresetPermission("can_delete_fines")
                                                                                                               ? Buttons.All
                                                                                                               : (Buttons.Add | Buttons.Edit);
         return(new PermissionControlledRepresentationJournal(vm, buttons).CustomTabName("Журнал штрафов"));
     }
         );
 }
Exemplo n.º 11
0
        protected void OnBtnChooseOrderClicked(object sender, EventArgs e)
        {
            var filter = new OrdersFilter(UnitOfWorkFactory.CreateWithoutRoot());

            filter.SetAndRefilterAtOnce(
                x => x.RestrictCounterparty = oldOrder.Client,
                x => x.HideStatuses         = new Enum[] { OrderStatus.WaitForPayment }
                );
            Buttons buttons = ServicesConfig.CommonServices.CurrentPermissionService.ValidatePresetPermission("can_delete") ? Buttons.All : (Buttons.Add | Buttons.Edit);
            PermissionControlledRepresentationJournal dlg = new PermissionControlledRepresentationJournal(new OrdersVM(filter), buttons)
            {
                Mode = JournalSelectMode.Single
            };

            MyTab.TabParent.AddTab(dlg, MyTab, false);

            dlg.ObjectSelected += (s, ea) => {
                var selectedId = ea.GetSelectedIds().FirstOrDefault();
                if (selectedId == 0)
                {
                    return;
                }
                if (oldOrder.Id == selectedId)
                {
                    MessageDialogHelper.RunErrorDialog("Перенесённый заказ не может совпадать с недовезённым!");
                    OnBtnChooseOrderClicked(sender, ea);
                    return;
                }
                newOrder        = undelivery.NewOrder = UoW.GetById <Order>(selectedId);
                newOrder.Author = this.oldOrder.Author;
                SetLabelsAcordingToNewOrder();
                undelivery.NewDeliverySchedule = newOrder.DeliverySchedule;
                if ((oldOrder.PaymentType == Domain.Client.PaymentType.ByCard) &&
                    (oldOrder.OrderTotalSum == newOrder.OrderTotalSum) &&
                    MessageDialogHelper.RunQuestionDialog("Перенести на выбранный заказ Оплату по Карте?"))
                {
                    newOrder.PaymentType       = oldOrder.PaymentType;
                    newOrder.OnlineOrder       = oldOrder.OnlineOrder;
                    newOrder.PaymentByCardFrom = oldOrder.PaymentByCardFrom;
                }
            };
        }
Exemplo n.º 12
0
        void MenuitemSelectFromClient_Activated(object sender, EventArgs e)
        {
            equipmentToSetSerial = ytreeEquipment.GetSelectedObject <ReceptionEquipmentItemNode>();
            var filter = new ClientBalanceFilter(UoW);

            filter.SetAndRefilterAtOnce(
                x => x.RestrictCounterparty = equipmentToSetSerial.ServiceClaim.Counterparty,
                x => x.RestrictNomenclature = x.UoW.GetById <Nomenclature>(equipmentToSetSerial.NomenclatureId)
                );
            var selectFromClientDlg = new PermissionControlledRepresentationJournal(new Vodovoz.ViewModel.ClientEquipmentBalanceVM(filter));

            selectFromClientDlg.CustomTabName(
                string.Format(
                    "Оборудование у {0}",
                    StringWorks.EllipsizeEnd(equipmentToSetSerial.ServiceClaim.Counterparty.Name, 50)
                    )
                );
            selectFromClientDlg.ObjectSelected += SelectFromClientDlg_ObjectSelected;
            MyTab.TabParent.AddSlaveTab(MyTab, selectFromClientDlg);
        }