fix: 添加任务时不设置时间无须提示任务冲突

This commit is contained in:
kuaifan
2024-09-18 17:13:24 +08:00
parent d54c86cec9
commit 81957c9396
5 changed files with 56 additions and 22 deletions

View File

@@ -15,12 +15,17 @@ class TimeRange
public function __construct($data)
{
if (is_array($data)) {
$range = $this->format($data['timerange']);
if ($data['updated_at'] || $data['at_after']) {
$range[0] = $data['updated_at'] ?: $data['at_after'];
}
if ($data['deleted_at']) {
$range[1] = $data['deleted_at'];
$keys = array_keys($data);
if (count($keys) === 2 && $keys[0] === 0 && $keys[1] === 1) {
$range = $data;
} else {
$range = $this->format($data['timerange']);
if ($data['updated_at'] || $data['at_after']) {
$range[0] = $data['updated_at'] ?: $data['at_after'];
}
if ($data['deleted_at']) {
$range[1] = $data['deleted_at'];
}
}
} else {
$range = $this->format($data);
@@ -34,6 +39,30 @@ class TimeRange
$this->deleted = $deleted ? Carbon::parse($deleted)->setTimezone($timezone) : null;
}
/**
* @return Carbon|null
*/
public function firstTime(): ?Carbon
{
return $this->updated;
}
/**
* @return Carbon|null
*/
public function lastTime(): ?Carbon
{
return $this->deleted;
}
/**
* @return bool
*/
public function isExist(): bool
{
return $this->updated && $this->deleted;
}
/**
* @param $timerange
* - 格式12021-01-01 00:00:00,2021-01-01 23:59:59