Пример #1
0
        public ItermediateObjects.Debt Put(ItermediateObjects.Debt newDebt)
        {
            var userId = User.Identity.GetUserId();
            var debt   = Context.Debts.FirstOrDefault(d => d.Id == newDebt.Id && d.UserId == userId);

            debt.Balance += newDebt.Balance;

            var newMovement = Context.Movements.Create();

            newMovement.Id     = Guid.NewGuid().ToString();
            newMovement.Amount = newDebt.Balance;
            newMovement.Reason = newDebt.Reason;
            newMovement.Date   = DateTimeOffset.UtcNow;
            debt.Movements.Add(newMovement);

            Context.SaveChanges();
            return(AutoMapper.Mapper.Map <ItermediateObjects.Debt>(debt));
        }
Пример #2
0
        public ItermediateObjects.Debt Delete(ItermediateObjects.Debt newDebt)
        {
            var debt   = Context.Debts.FirstOrDefault(d => d.Id == newDebt.Id);
            var amount = debt.Balance;

            debt.Balance = 0;

            var newMovement = Context.Movements.Create();

            newMovement.Id     = Guid.NewGuid().ToString();
            newMovement.Amount = -amount;
            newMovement.Date   = DateTimeOffset.UtcNow;

            debt.Movements.Add(newMovement);
            Context.Debts.Remove(debt);
            Context.SaveChanges();

            return(AutoMapper.Mapper.Map <ItermediateObjects.Debt>(debt));
        }