bzarzuela/deadline-calculator

简化了考虑工作时间和节假日后的TAT计算

v0.4 2018-06-28 09:56 UTC

This package is not auto-updated.

Last update: 2024-09-29 06:20:09 UTC


README

Latest Version on Packagist Build Status Quality Score Total Downloads

在我们项目中,CRM计算工单截止日期是一个非常常见的需求。在计算截止日期时,需要考虑许多因素,如周末、工作时间变化等。

默认情况下,该包假设为全天候运行。建议在应用程序的服务提供者中预配置类并绑定它。

安装

您可以通过composer安装此包

composer require bzarzuela/deadline-calculator

使用方法

$calculator = new Bzarzuela\DeadlineCalculator();
$calculator->startFrom('2018-06-28 12:20:00);
$calculator->tatInDays(3);
echo $calculator->deadline(); // 2018-07-01 12:20:00 

它支持在计算中绕过周末。

$calculator->noWeekends();

TAT也可以按小时设置

$calculator->tatInHours(24);

支持工作时间,当TAT按小时计算时

$calculator->tatInHours(24)
    ->operatingHours('09:00:00', '17:00:00'); // 9am to 5pm working hours

您还可以按日设置或覆盖工作时间

$calculator->tatInHours(24)
    ->operatingHours('09:00:00', '17:00:00') // 9am to 5pm working hours
    ->saturday('09:00:00', '12:00:00') // Half day on Saturday
    ->noSunday(); // No work on Sundays

测试

composer test

变更日志

有关最近更改的更多信息,请参阅变更日志

贡献

有关详细信息,请参阅贡献指南

安全性

如果您发现任何与安全相关的问题,请通过电子邮件bryan@teleserv.ph联系,而不是使用问题跟踪器。

鸣谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件