* daysBlocked feature added
* blocked worklog entries are not counted towards spike spent time
This commit is contained in:
parent
1de77564b5
commit
728ef63067
@ -117,6 +117,11 @@ class KanbanEntry implements \JsonSerializable
|
|||||||
*/
|
*/
|
||||||
private $worklog = 0;
|
private $worklog = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
*/
|
||||||
|
private $daysBlocked = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* KanbanEntry constructor.
|
* KanbanEntry constructor.
|
||||||
*/
|
*/
|
||||||
@ -509,6 +514,24 @@ class KanbanEntry implements \JsonSerializable
|
|||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
public function getDaysBlocked(): int
|
||||||
|
{
|
||||||
|
return $this->daysBlocked;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param int $daysBlocked
|
||||||
|
* @return KanbanEntry
|
||||||
|
*/
|
||||||
|
public function setDaysBlocked(int $daysBlocked): KanbanEntry
|
||||||
|
{
|
||||||
|
$this->daysBlocked = $daysBlocked;
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
@ -535,6 +558,7 @@ class KanbanEntry implements \JsonSerializable
|
|||||||
'team' => $this->getTeam(),
|
'team' => $this->getTeam(),
|
||||||
'answerCode' => $this->getAnswerCode(),
|
'answerCode' => $this->getAnswerCode(),
|
||||||
'worklog' => $this->getWorklog(),
|
'worklog' => $this->getWorklog(),
|
||||||
|
'daysBlocked' => $this->getDaysBlocked(),
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -92,11 +92,21 @@ class JiraCollectorService
|
|||||||
->setLabels($jsonIssue['fields']['labels'])
|
->setLabels($jsonIssue['fields']['labels'])
|
||||||
;
|
;
|
||||||
|
|
||||||
$timeSpent = 0;
|
$spikeTimeSpent = 0;
|
||||||
array_map(function($worklog) use (&$timeSpent){
|
array_map(function($worklog) use (&$spikeTimeSpent){
|
||||||
$timeSpent += $worklog['timeSpentSeconds'];
|
$spikeTimeSpent += strtoupper($worklog['comment']) == 'BLOCKED'
|
||||||
|
? 0
|
||||||
|
: $worklog['timeSpentSeconds'];
|
||||||
}, $jsonIssue['fields']['worklog']['worklogs']);
|
}, $jsonIssue['fields']['worklog']['worklogs']);
|
||||||
$kanbanEntry->setWorklog(ceil($timeSpent/3600));
|
$kanbanEntry->setWorklog(ceil($spikeTimeSpent/3600));
|
||||||
|
|
||||||
|
$secondsBlocked = 0;
|
||||||
|
array_map(function($worklog) use (&$secondsBlocked){
|
||||||
|
$secondsBlocked += strtoupper($worklog['comment']) == 'BLOCKED'
|
||||||
|
? $worklog['timeSpentSeconds']
|
||||||
|
: 0;
|
||||||
|
}, $jsonIssue['fields']['worklog']['worklogs']);
|
||||||
|
$kanbanEntry->setDaysBlocked(ceil($secondsBlocked/86400));
|
||||||
|
|
||||||
// externalId : customfield_10010
|
// externalId : customfield_10010
|
||||||
if(isset($jsonIssue['fields']['customfield_10010'])) {
|
if(isset($jsonIssue['fields']['customfield_10010'])) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user