PHP - 类似银行的每月交易

标签 php mysql calendar cron banking

我不确定要输入什么搜索词。

我正在为租赁代理建立一个基本系统来记录已支付的租金,我已经做到了这一点没有问题。

下一步是在租金到期时进行可重复的交易,他们有关于我应该如何完成这项壮举的教程或建议吗?

例如:

租户 1 需要在每个月的第一天支付 2 英镑的租金。

租户 2 需要每四个星期支付 1 英镑的租金。

最佳答案

在表格中您将拥有

T1:
Tenant_id | repeatable | next_due

在另一个表中,您将拥有

T2:
Tenant_id | Rent_date

使用如下查询:

SELECT 
  *
FROM
T1 JOIN
  (SELECT
    tenant_id, MAX(Rent_date) LastRent
  FROM
    T2
  GROUP BY 
    tenant_id
  ) MaxT2 on T1.tenant_id = MaxT2.tenant_id
WHERE
  MaxT2.LastRent + repeatable > T1.next_due

当您在此 SELECT 中找到某些内容时,将当前费率的交易插入到 T2 中,并在 T1 中使用 Rent_date + 可重复更新 next_due

将此脚本放入文件中并使用 cron - 使其每天运行(最好在早上)。

这只是一个快速回答。您必须处理可重复字段(例如表示天数、周数或每月的每 10 天)。

关于PHP - 类似银行的每月交易,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6276906/

相关文章:

mysql - 在日期字段中插入空值的兼容性查询

calendar - 如何设计日历提醒/警报系统

php - $ ('body' ).on ('change' , '.selector' , 函数() { }); <select> 标签 jquery 没有按预期工作

calendar - 如何查询这个新的 CalendarEvent 属性名称 exceptionOccurrences?

php - MVC中Model在DB中找不到记录时,往哪里传回消息?

php - 是否可以使用反射修改对象实例的方法

mysql - 是否可以在 Azure 网站上创建使用数据库的 Django 应用程序?

mysql - 对 colum_x 相同的列求和

php - 成语 find_many() 只返回一个对象

PHP 错误跟踪器 : storing attached files