Beispiel #1
0
        public void DistributeCash(IUnitOfWork uow, FuelDocument fuelDoc)
        {
            var org = cashDistributionCommonOrganisationProvider.GetCommonOrganisation(uow);

            var operation = new OrganisationCashMovementOperation
            {
                Organisation  = org,
                OperationTime = DateTime.Now,
                Amount        = -fuelDoc.PayedForFuel.Value
            };

            var fuelCashDistributionDoc = new FuelExpenseCashDistributionDocument
            {
                Author         = fuelDoc.Author,
                CreationDate   = DateTime.Now,
                Organisation   = org,
                FuelDocument   = fuelDoc,
                Employee       = fuelDoc.Driver,
                LastEditor     = fuelDoc.LastEditor,
                LastEditedTime = DateTime.Now,
                Expense        = fuelDoc.FuelCashExpense,
                OrganisationCashMovementOperation = operation,
                Amount = operation.Amount
            };

            Save(operation, fuelCashDistributionDoc, uow);
        }
Beispiel #2
0
 private void UpdateFuelExpenseCashDistributionDocument(FuelExpenseCashDistributionDocument doc, Expense expense, Employee editor)
 {
     doc.LastEditor     = editor;
     doc.LastEditedTime = DateTime.Now;
     doc.Amount         = -expense.Money;
 }
Beispiel #3
0
 public void UpdateRecords(IUnitOfWork uow, FuelExpenseCashDistributionDocument document, Expense expense, Employee editor)
 {
     UpdateFuelExpenseCashDistributionDocument(document, expense, editor);
     UpdateOrganisationCashMovementOperation(document.OrganisationCashMovementOperation, expense);
     Save(document.OrganisationCashMovementOperation, document, uow);
 }
Beispiel #4
0
 private void Save(OrganisationCashMovementOperation operation, FuelExpenseCashDistributionDocument document, IUnitOfWork uow)
 {
     uow.Save(operation);
     uow.Save(document);
 }