Merge branch '12.x'

This commit is contained in:
wangyidong
2021-02-19 13:17:23 +08:00
109 changed files with 5297 additions and 1570 deletions
+9 -8
View File
@@ -52,8 +52,8 @@ class taskModel extends model
->setIF($this->post->story != false, 'storyVersion', $this->loadModel('story')->getVersion($this->post->story))
->setDefault('estStarted', '0000-00-00')
->setDefault('deadline', '0000-00-00')
->setIF(strpos($requiredFields, 'estStarted') !== false, 'estStarted', $this->post->estStarted)
->setIF(strpos($requiredFields, 'deadline') !== false, 'deadline', $this->post->deadline)
->setIF(strpos($requiredFields, 'estStarted') !== false, 'estStarted', helper::isZeroDate($this->post->estStarted) ? '' : $this->post->estStarted)
->setIF(strpos($requiredFields, 'deadline') !== false, 'deadline', helper::isZeroDate($this->post->deadline) ? '' : $this->post->deadline)
->setIF(strpos($requiredFields, 'estimate') !== false, 'estimate', $this->post->estimate)
->setIF(strpos($requiredFields, 'left') !== false, 'left', $this->post->left)
->setIF(strpos($requiredFields, 'story') !== false, 'story', $this->post->story)
@@ -114,7 +114,7 @@ class taskModel extends model
->autoCheck()
->batchCheck($requiredFields, 'notempty')
->checkIF($task->estimate != '', 'estimate', 'float')
->checkIF($task->deadline != '0000-00-00', 'deadline', 'ge', $task->estStarted)
->checkIF(!helper::isZeroDate($task->deadline), 'deadline', 'ge', $task->estStarted)
->exec();
if(dao::isError()) return false;
@@ -337,7 +337,7 @@ class taskModel extends model
/* check data. */
foreach($data as $i => $task)
{
if($task->deadline != '0000-00-00' and $task->deadline < $task->estStarted)
if(!helper::isZeroDate($task->deadline) and $task->deadline < $task->estStarted)
{
dao::$errors['message'][] = $this->lang->task->error->deadlineSmall;
return false;
@@ -625,6 +625,7 @@ class taskModel extends model
{
if(!$createAction) return $task;
if($parentTask->story) $this->loadModel('story')->setStage($parentTask->story);
$newParentTask = $this->dao->select('*')->from(TABLE_TASK)->where('id')->eq($parentID)->fetch();
$changes = common::createChanges($oldParentTask, $newParentTask);
$action = '';
@@ -923,7 +924,7 @@ class taskModel extends model
$this->dao->update(TABLE_TASK)->data($task)
->autoCheck()
->batchCheckIF($task->status != 'cancel', $requiredFields, 'notempty')
->checkIF($task->deadline != '0000-00-00', 'deadline', 'ge', $task->estStarted)
->checkIF(!helper::isZeroDate($task->deadline), 'deadline', 'ge', $task->estStarted)
->checkIF($task->estimate != false, 'estimate', 'float')
->checkIF($task->left != false, 'left', 'float')
@@ -1147,7 +1148,7 @@ class taskModel extends model
$task->closedBy = $this->app->user->account;
$task->closedDate = $now;
}
if($task->closedReason == 'cancel' and $task->finishedDate == '0000-00-00 00:00:00') $task->finishedDate = '';
if($task->closedReason == 'cancel' and helper::isZeroDate($task->finishedDate)) $task->finishedDate = '';
break;
case 'wait':
if($task->consumed > 0 and $task->left > 0) $task->status = 'doing';
@@ -1565,7 +1566,7 @@ class taskModel extends model
$task = fixer::input('post')
->setIF(is_numeric($this->post->consumed), 'consumed', (float)$this->post->consumed)
->setIF($oldTask->realStarted == '0000-00-00 00:00:00', 'realStarted', $now)
->setIF(helper::isZeroDate($oldTask->realStarted), 'realStarted', $now)
->setDefault('left', 0)
->setDefault('assignedTo', $oldTask->openedBy)
->setDefault('assignedDate', $now)
@@ -2421,7 +2422,7 @@ class taskModel extends model
/* Delayed or not?. */
if($task->status !== 'done' and $task->status !== 'cancel' and $task->status != 'closed')
{
if($task->deadline != '0000-00-00')
if(!helper::isZeroDate($task->deadline))
{
$delay = helper::diffDate($today, $task->deadline);
if($delay > 0) $task->delay = $delay;