目前在做一个图书管管理系统,在到期划款的这一块遇到了问题,问题是,假如一本书规定30天之内还,每超过一天就要华款0.1元,然后在读者还书的时候,30天外的该划的钱已经知道了,这个钱假如在表里的一个字段存储。。或者还有别的方法。
关键是如何让系统自动计算呢?望给点建议或者解决方案。

解决方案 »

  1.   

    如果数据库做,假设用MySQL,可以写个定时器
    例如:CREATE EVENT returnBook
    ON SCHEDULE 
    AT /*借书开始时间*/ + INTERVAL 30 DAY
    ON COMPLETION PRESERVE DO CALL
    /*
     * 写入超期借书的标示,比如有是否还书字段xxx,boolean
     * 那么INSERT INTO xxx VALUES('F')
     */
      

  2.   

    如果程序做,首先数据库字段做TIMESTAMP
    然后程序做时间减法判断
      

  3.   

    关键是看表结构的设计了
    在发生借书业务时,你应该做一个DueDate做为其还书的标准期限,当在还书时直接用Now-DueDate算出天数后,再乘以一个罚金系数即可。
      

  4.   

    建个视图,包括超期的书,天数,罚款金额
    建个job(oracle)每天定时执行,对一上view中的天数金额进行更新