我想为我的 Laravel 应用程序的用户提供跟踪他们在不同任务上花费的时间的选项。单击“开始”按钮时,我想创建一个“跟踪”对象的新实例,该对象具有一个 id 和对它作为外键跟踪时间的任务的引用。另外,我想从创建它的那一刻起存储一个时间戳。稍后,用户应该通过另一个按钮单击来停止跟踪。我需要以某种方式存储跟踪的持续时间,因为我想报告什么任务有多少跟踪,所有总和的总时间是多少等。这将是一个通过减去 start 来计算持续时间的选项停止,一旦停止跟踪并将其保存到对象。但是,我希望用户以后能够继续跟踪,让它重新开始计数。如果我再次设置结束时的时间戳,它会计算整个持续时间,即使它可能在中间被禁用。
另一个想法是有一个 last_started 和一个 total_duration 列。当用户(重新)开始跟踪时,会包含时间戳。一旦他关闭它,持续时间就会添加到当前的 total_duration 中,并且 last_started 再次设置为 null。这感觉像是一种肮脏的解决方法,我相信那里有更好的选择,我很想听听。
提前致谢!