예제 #1
0
        private void OnFuelUpdated()
        {
            Employee cashier = FuelDocument.GetActualCashier(UoW);

            if (cashier == null)
            {
                MessageDialogWorks.RunErrorDialog(
                    "Ваш пользователь не привязан к действующему сотруднику, Вы не можете выдавать денежные средства, так как некого указывать в качестве кассира.");
                return;
            }

            FuelDocument.Fuel.Cost = spinFuelPrice.ValueAsDecimal;
            FuelDocument.UpdateOperation();
            FuelDocument.UpdateFuelCashExpense(UoW, cashier);
            UpdateResutlInfo();
            UpdateFuelCashExpenseInfo();
        }
예제 #2
0
        public bool Save()
        {
            Employee cashier = FuelDocument.GetActualCashier(UoW);

            if (cashier == null)
            {
                return(false);
            }

            if (FuelDocument.Author == null)
            {
                FuelDocument.Author = cashier;
            }

            FuelDocument.LastEditor = cashier;

            FuelDocument.LastEditDate = DateTime.Now;

            if (FuelDocument.FuelCashExpense != null)
            {
                FuelDocument.FuelCashExpense.Casher = cashier;
            }

            var valid = new QSValidator <FuelDocument>(FuelDocument);

            if (valid.RunDlgIfNotValid((Gtk.Window) this.Toplevel))
            {
                return(false);
            }

            logger.Info("Сохраняем топливный документ...");
            routeList.ObservableFuelDocuments.Add(FuelDocument);
            if (autoCommit)
            {
                UoW.Save();
            }
            else
            {
                UoW.Save(FuelDocument);
            }
            return(true);
        }