首页 > 解决方案 > 如何使用 django 计算天数的余额利息

问题描述

如何计算余额的复利?我希望计算余额的 3%,然后自动添加到每个有余额的用户的运行余额中。

我的意思是,运行余额中的金额将作为用户帐户余额的 3% 的计算结果。我希望这个计算每五天连续进行一次。每 500 天计算余额中每笔金额的 3% 利息。从上次计算开始,此计算是连续且无限的

class UserAccount(models.Model):
    user =models.OneToOneField(User, related_name='account', on_delete=models.CASCADE,)
    balance =models.DecimalField(default=0 max_digits=12,decimal_places=2)
    running_balance =models.DecimalField(default=0 max_digits=12,decimal_places=2)
    interest_startdate =models.DateTimeField(auto_add=now)
    rate = models.IntegerChoices()
    days = models.IntegerField("number of days", default=0)

    def __str__(self):
       return str(self.balance)

    def get_interest_calculation_months(self):
       account = UserAccount.objects.get(balance__gt=0,  pk=<something>)
       calc_interest = lambda value: value * useraccount.rate
       amount = useraccount.balance
       for i in xrange(12):
           interest =              
           calc_interest(amount)
           amount += interest
           print 'days {}: {} ({} interest)'.format(i, amount, interest)
           running_balance +=interest

顿时有些迷茫。我怎样才能让它工作

计算userAccount中所有余额的利息,然后添加到用户运行余额中

只要余额大于零,此操作将每五天连续重复一次,并连续增加 3% 的复利。

有人可以帮我正确编写代码吗?

标签: pythondjangodjango-rest-frameworkdjango-views

解决方案


推荐阅读