def accrual_deposits(): deposits = Deposit.objects.filter(is_ended=False) for deposit in deposits: plan = deposit.plan time_elapsed = timezone.now()-deposit.last_update delta = deltas[plan.period] if time_elapsed >= delta: deposit.last_update = timezone.now() deposit.save() utr = UserTransaction() utr.do_transaction_accrual(deposit.user, deposit.ps, deposit.amount / Decimal(100) * plan.percent, deposit=deposit) if int((timezone.now()-deposit.created).total_seconds()/3600) >= plan.end_period: deposit.is_ended = True deposit.save() if plan.deposit_return: utr = UserTransaction() utr.do_deposit_return(deposit)
def accrual_deposits(): deposits = Deposit.objects.filter(is_ended=False) for deposit in deposits: plan = deposit.plan time_elapsed = timezone.now() - deposit.last_update delta = deltas[plan.period] if time_elapsed >= delta: deposit.last_update = timezone.now() deposit.save() utr = UserTransaction() utr.do_transaction_accrual(deposit.user, deposit.ps, deposit.amount / Decimal(100) * plan.percent, deposit=deposit) if int((timezone.now() - deposit.created).total_seconds() / 3600) >= plan.end_period: deposit.is_ended = True deposit.save() if plan.deposit_return: utr = UserTransaction() utr.do_deposit_return(deposit)