protected void OnButtonSaveClicked(object sender, EventArgs e) { var valid = new QSValidator <UndeliveredOrder>(undelivery); if (valid.RunDlgIfNotValid((Window)this.Toplevel)) { return; } undeliveryView.BeforeSaving(); if (!CanCreateUndelivery()) { this.OnCloseTab(false); if (DlgSaved != null) { DlgSaved(this, new UndeliveryOnOrderCloseEventArgs(undelivery)); } return; } UoW.Save(undelivery); OnCloseTab(false); if (DlgSaved != null) { DlgSaved(this, new UndeliveryOnOrderCloseEventArgs(undelivery)); } }
public override bool Save() { var valid = new QSValidator <Trainee>(Entity); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } phonesView.RemoveEmpty(); logger.Info("Сохраняем стажера..."); try { UoWGeneric.Save(); if (Entity.Id != 0) { attachmentFiles.ItemId = Entity.Id; } attachmentFiles.SaveChanges(); } catch (Exception ex) { logger.Error(ex, "Не удалось записать стажера."); QSProjectsLib.QSMain.ErrorMessage((Gtk.Window) this.Toplevel, ex); return(false); } logger.Info("Ok"); return(true); }
public override bool Save() { if (Entity.Order == null) { return(true); } var valid = new QSValidator <M2ProxyDocument>(Entity); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } if (Entity.Order != null) { List <OrderDocument> list = new List <OrderDocument> { new OrderM2Proxy { AttachedToOrder = Entity.Order, M2Proxy = Entity, Order = Entity.Order } }; Entity.Order.AddAdditionalDocuments(list); } return(true); }
public override bool Save() { if (!Entity.HasFixedPrice && Entity.FixedPrices.Count > 0) { foreach (var v in Entity.FixedPrices.ToList()) { Entity.FixedPrices.Remove(v); UoW.Delete(v); } } var valid = new QSValidator <WaterSalesAgreement>(UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } logger.Info("Сохраняем доп. соглашение..."); UoWGeneric.Save(); logger.Info("Ok"); if (AgreementSaved != null) { AgreementSaved(this, new AgreementSavedEventArgs(UoWGeneric.Root)); } return(true); }
public override bool Save() { var valid = new QSValidator <Expense> (UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } Entity.UpdateWagesOperations(UoW); if (UoW.IsNew) { DistributeCash(); } else { UpdateCashDistributionsDocuments(); } logger.Info("Сохраняем расходный ордер..."); UoWGeneric.Save(); logger.Info("Ok"); return(true); }
public override bool Save() { var validationContext = new Dictionary <object, object> { { "IsSelfDelivery", true } }; var valid = new QSValidator <Expense>(UoWGeneric.Root, validationContext); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } Entity.AcceptSelfDeliveryPaid(CallTaskWorker); if (UoW.IsNew) { logger.Info("Создаем документ распределения налички по юр лицу..."); selfDeliveryCashOrganisationDistributor.DistributeExpenseCash(UoW, Entity.Order, Entity); } else { logger.Info("Меняем документ распределения налички по юр лицу..."); selfDeliveryCashOrganisationDistributor.UpdateRecords(UoW, Entity.Order, Entity, _employeeRepository.GetEmployeeForCurrentUser(UoW)); } logger.Info("Сохраняем расходный ордер..."); UoWGeneric.Save(); logger.Info("Ok"); return(true); }
public override bool Save () { if(!Entity.CanEdit) return false; if(CheckWarehouseItems() == false){ MessageDialogHelper.RunErrorDialog("На складе не хватает материалов"); return false; } var valid = new QSValidator<IncomingWater> (UoWGeneric.Root); if (valid.RunDlgIfNotValid ((Gtk.Window)this.Toplevel)) return false; Entity.LastEditor = EmployeeSingletonRepository.GetInstance().GetEmployeeForCurrentUser (UoW); Entity.LastEditedTime = DateTime.Now; if(Entity.LastEditor == null) { MessageDialogHelper.RunErrorDialog ("Ваш пользователь не привязан к действующему сотруднику, вы не можете изменять складские документы, так как некого указывать в качестве кладовщика."); return false; } logger.Info ("Сохраняем документ производства..."); UoWGeneric.Save (); logger.Info ("Ok."); return true; }
public override bool Save() { var messages = new List <string>(); var valid = new QSValidator <TransferOperationDocument>(UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } Entity.LastEditor = _employeeRepository.GetEmployeeForCurrentUser(UoW); if (Entity.LastEditor == null) { MessageDialogHelper.RunErrorDialog("Ваш пользователь не привязан к действующему сотруднику, вы не можете изменять складские документы, так как некого указывать в качестве кладовщика."); return(false); } if (spinBottles.Value == 0f && spinDepositsBottles.Value == 0f && spinDepositsEquipment.Value == 0f) { MessageDialogHelper.RunErrorDialog("Вы ничего не указали для перемещения."); return(false); } messages.AddRange(Entity.SaveOperations(UoWGeneric, (int)spinBottles.Value, (decimal)spinDepositsBottles.Value, (decimal)spinDepositsEquipment.Value)); logger.Info("Сохраняем документ переноса..."); UoWGeneric.Save(); logger.Info("Ok."); return(true); }
public override bool Save() { if (Entity.TypeOperation == IncomeType.Return && UoW.IsNew && selectableAdvances != null) { Entity.PrepareCloseAdvance(selectableAdvances.Where(x => x.Selected).Select(x => x.Value).ToList()); } var valid = new QSValidator <Income> (UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } logger.Info("Сохраняем Приходный ордер..."); if (Entity.TypeOperation == IncomeType.Return && UoW.IsNew) { logger.Info("Закрываем авансы..."); Entity.CloseAdvances(UoW); } if (UoW.IsNew) { DistributeCash(); } else { UpdateCashDistributionsDocuments(); } UoWGeneric.Save(); logger.Info("Ok"); return(true); }
public override bool Save() { var validationContext = new Dictionary <object, object> { { nameof(IRouteListItemRepository), new RouteListItemRepository() } }; var valid = new QSValidator <RouteList>(Entity, validationContext); if (valid.RunDlgIfNotValid((Window)this.Toplevel)) { return(false); } if (Entity.Status > RouteListStatus.OnClosing) { if (Entity.FuelOperationHaveDiscrepancy()) { if (!MessageDialogHelper.RunQuestionDialog("Был изменен водитель или автомобиль, при сохранении МЛ баланс по топливу изменится с учетом этих изменений. Продолжить сохранение?")) { return(false); } } Entity.UpdateFuelOperation(); } if (Entity.Status == RouteListStatus.Delivered) { ChangeStatusAndCreateTaskFromDelivered(); } Entity.CalculateWages(_wageParameterService); UoWGeneric.Save(); return(true); }
public virtual bool Save(bool needClose = true) { var valid = new QSValidator <UndeliveredOrder>(UndeliveredOrder); if (valid.RunDlgIfNotValid((Window)this.Toplevel)) { return(false); } if (UndeliveredOrder.Id == 0) { UndeliveredOrder.OldOrder.SetUndeliveredStatus(UoW, new BaseParametersProvider(), CallTaskWorker); } undeliveryView.BeforeSaving(); //случай, если создавать новый недовоз не нужно, но нужно обновить старый заказ if (!CanCreateUndelivery()) { UoW.Save(UndeliveredOrder.OldOrder); UoW.Commit(); this.OnCloseTab(false); return(false); } UoW.Save(UndeliveredOrder); if (needClose) { this.OnCloseTab(false); } return(true); }
public override bool Save() { var valid = new QSValidator <Car>(UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } logger.Info("Сохраняем автомобиль..."); try { UoWGeneric.Save(); if (UoWGeneric.IsNew) { attachmentFiles.ItemId = UoWGeneric.Root.Id; } attachmentFiles.SaveChanges(); } catch (Exception ex) { logger.Error(ex, "Не удалось записать Автомобиль."); QSProjectsLib.QSMain.ErrorMessage((Gtk.Window) this.Toplevel, ex); return(false); } logger.Info("Ok"); return(true); }
public override bool Save() { bool hasDuplicate = CheckDuplicate(); bool userAnswer = true; if (hasDuplicate) { userAnswer = MessageDialogWorks.RunQuestionDialog( "Контрагент с данным ИНН уже существует. Сохранить?"); } if (userAnswer) { Entity.UoW = UoW; var valid = new QSValidator <Counterparty>(UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } logger.Info("Сохраняем контрагента..."); phonesView.SaveChanges(); emailsView.SaveChanges(); UoWGeneric.Save(); logger.Info("Ok."); return(true); } return(false); }
protected void OnButtonCloseRouteListClicked(object sender, EventArgs e) { var valid = new QSValidator <RouteList>(Entity, new Dictionary <object, object> { { "NewStatus", RouteListStatus.Closed } }); if (valid.RunDlgIfNotValid((Window)this.Toplevel)) { return; } if (Entity.ConfirmedDistance < Entity.ActualDistance && !Entity.Car.IsCompanyHavings) { decimal excessKM = Entity.ActualDistance - Entity.ConfirmedDistance; decimal redundantPayForFuel = Entity.GetLitersOutlayed(excessKM) * Entity.Car.FuelType.Cost; string fineReason = "Перевыплата топлива"; var fine = new Fine(); fine.Fill(redundantPayForFuel, Entity, fineReason, DateTime.Today, Entity.Driver); fine.Author = EmployeeRepository.GetEmployeeForCurrentUser(UoW); fine.UpdateWageOperations(UoWGeneric); UoWGeneric.Save(fine); } else { Entity.RecalculateFuelOutlay(); } yspinConfirmedDistance.Sensitive = false; buttonConfirm.Sensitive = false; buttonCloseRouteList.Sensitive = false; Entity.ConfirmMileage(UoWGeneric); }
public override bool Save() { if (!Entity.CanEdit) { return(false); } var valid = new QSValidator <InventoryDocument> (UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } Entity.LastEditor = _employeeRepository.GetEmployeeForCurrentUser(UoW); Entity.LastEditedTime = DateTime.Now; if (Entity.LastEditor == null) { MessageDialogHelper.RunErrorDialog("Ваш пользователь не привязан к действующему сотруднику, вы не можете изменять складские документы, так как некого указывать в качестве кладовщика."); return(false); } Entity.UpdateOperations(UoW); logger.Info("Сохраняем акт списания..."); UoWGeneric.Save(); logger.Info("Ok."); return(true); }
public override bool Save() { logger.Info("Запись документа..."); var valid = new QSValidator <Income> (UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window)Toplevel)) { return(false); } var ask = new GtkQuestionDialogsInteractive(); Entity.UpdateOperations(UoW, ask); if (Entity.Id == 0) { Entity.CreationDate = DateTime.Now; } UoWGeneric.Save(); if (Entity.Operation == IncomeOperations.Return) { logger.Debug("Обновляем записи о выданной одежде в карточке сотрудника..."); Entity.UpdateEmployeeWearItems(); UoWGeneric.Commit(); } logger.Info("Ok"); return(true); }
public override bool Save() { var valid = new QSValidator <CounterpartyActivityKind>(Entity); if (valid.RunDlgIfNotValid((Window)this.Toplevel)) { return(false); } UoWGeneric.Save(); return(true); }
public override bool Save() { var valid = new QSValidator <ClientCameFrom>(Entity); if (valid.RunDlgIfNotValid((Window)this.Toplevel)) { return(false); } UoWGeneric.Save(); return(true); }
public override bool Save() { var valid = new QSValidator <CommonCashTransferDocument>(Entity, new Dictionary <object, object>()); if (valid.RunDlgIfNotValid()) { return(false); } return(base.Save()); }
public override bool Save() { var valid = new QSValidator <DeliveryPointCategory>(Entity); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } UoWGeneric.Save(); return(true); }
public override bool Save() { var valid = new QSValidator <Certificate>(UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } UoWGeneric.Save(); return(true); }
public override bool Save() { var valid = new QSValidator <AdvanceReport>(UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } logger.Info("Сохраняем авансовый отчет..."); Income newIncome; Expense newExpense; bool needClosing = UoWGeneric.IsNew; UoWGeneric.Save(); // Сохраняем сначала отчет, так как нужно получить Id. if (needClosing) { var closing = Entity.CloseAdvances(out newExpense, out newIncome, advanceList.Where(a => a.Selected).Select(a => a.Advance).ToList()); if (newExpense != null) { UoWGeneric.Save(newExpense); logger.Info("Создаем документ распределения расхода налички по юр лицу..."); distributor.DistributeCashForExpenseAdvance(UoW, newExpense, Entity); } if (newIncome != null) { UoWGeneric.Save(newIncome); logger.Info("Создаем документ распределения прихода налички по юр лицу..."); distributor.DistributeCashForIncomeAdvance(UoW, newIncome, Entity); } advanceList.Where(a => a.Selected).Select(a => a.Advance).ToList().ForEach(a => UoWGeneric.Save(a)); closing.ForEach(c => UoWGeneric.Save(c)); UoWGeneric.Save(); if (newIncome != null) { MessageDialogWorks.RunInfoDialog(String.Format("Дополнительно создан приходный ордер №{0}, на сумму {1:C}.\nНе забудьте получить сдачу от подотчетного лица!", newIncome.Id, newIncome.Money)); } if (newExpense != null) { MessageDialogWorks.RunInfoDialog(String.Format("Дополнительно создан расходный ордер №{0}, на сумму {1:C}.\nНе забудьте доплатить подотчетному лицу!", newExpense.Id, newExpense.Money)); } } logger.Info("Ok"); return(true); }
private bool SaveDoc() { var valid = new QSValidator <EmployeeDocument>(Entity); valid.RunDlgIfNotValid((Gtk.Window)Toplevel); if (valid.IsValid) { _unitOfWork.Save(Entity); OnCloseTab(false); } return(valid.IsValid); }
public override bool Save() { var valid = new QSValidator <FreeRentPackage> (UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } logger.Info("Сохраняем пакет бесплатной аренды..."); UoWGeneric.Save(); return(true); }
protected void OnButtonAcceptClicked(object sender, EventArgs e) { var casher = EmployeeRepository.GetEmployeeForCurrentUser(UoW); if (casher == null) { MessageDialogHelper.RunErrorDialog("Ваш пользователь не привязан к действующему сотруднику, вы не можете закрыть МЛ, так как некого указывать в качестве кассира."); return; } if (!isConsistentWithUnloadDocument()) { return; } if (!checkSendToMileageCheck.Active) { Entity.ConfirmedDistance = Entity.ActualDistance; } var valid = new QSValidator <RouteList>(UoWGeneric.Root, new Dictionary <object, object> { { "NewStatus", RouteListStatus.MileageCheck } }); if (valid.RunDlgIfNotValid((Window)this.Toplevel)) { return; } if (advanceCheckbox.Active && advanceSpinbutton.Value > 0) { EmployeeAdvanceOrder((decimal)advanceSpinbutton.Value); } Entity.Cashier = casher; Entity.Confirm(checkSendToMileageCheck.Active); if (!MessageDialogHelper.RunQuestionDialog("Перед выходом распечатать документ?")) { SaveAndClose(); } else { Save(); PrintRouteList(); UpdateButtonState(); this.OnCloseTab(false); } }
public bool Save() { var valid = new QSValidator <FreeRentEquipment> (subject); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } subject.IsNew = false; OrmMain.DelayedNotifyObjectUpdated(ParentReference.ParentObject, subject); return(true); }
public override bool Save() { var valid = new QSValidator <MeasurementUnits> (UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } logger.Info("Сохраняем единицы измерения..."); UoWGeneric.Save(); return(true); }
public override bool Save() { var valid = new QSValidator <Account> (Entity); if (valid.RunDlgIfNotValid((Window)this.Toplevel)) { return(false); } logger.Info("Сохраняем счет организации..."); UoWGeneric.Save(); logger.Info("Ok"); return(true); }
public override bool Save() { var valid = new QSValidator <FuelType> (UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } logger.Info("Сохраняем график доставки..."); UoWGeneric.Save(); return(true); }
public override bool Save() { var valid = new QSValidator <Equipment> (UoWGeneric.Root); if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel)) { return(false); } logger.Info("Сохраняем оборудование..."); UoWGeneric.Save(); return(true); }
public bool Save() { var valid = new QSValidator<FreeRentEquipment> (subject); if (valid.RunDlgIfNotValid ((Gtk.Window)this.Toplevel)) return false; subject.IsNew = false; OrmMain.DelayedNotifyObjectUpdated (ParentReference.ParentObject, subject); return true; }