mirror of
https://github.com/muety/wakapi.git
synced 2023-08-10 21:12:56 +03:00
feat: basic implementation of branch statistics
This commit is contained in:
@@ -26,6 +26,7 @@ type SummariesData struct {
|
||||
Machines []*SummariesEntry `json:"machines"`
|
||||
OperatingSystems []*SummariesEntry `json:"operating_systems"`
|
||||
Projects []*SummariesEntry `json:"projects"`
|
||||
Branches []*SummariesEntry `json:"branches"`
|
||||
GrandTotal *SummariesGrandTotal `json:"grand_total"`
|
||||
Range *SummariesRange `json:"range"`
|
||||
}
|
||||
@@ -92,6 +93,7 @@ func newDataFrom(s *models.Summary) *SummariesData {
|
||||
Machines: make([]*SummariesEntry, len(s.Machines)),
|
||||
OperatingSystems: make([]*SummariesEntry, len(s.OperatingSystems)),
|
||||
Projects: make([]*SummariesEntry, len(s.Projects)),
|
||||
Branches: make([]*SummariesEntry, len(s.Branches)),
|
||||
GrandTotal: &SummariesGrandTotal{
|
||||
Digital: fmt.Sprintf("%d:%d", totalHrs, totalMins),
|
||||
Hours: totalHrs,
|
||||
@@ -109,7 +111,7 @@ func newDataFrom(s *models.Summary) *SummariesData {
|
||||
}
|
||||
|
||||
var wg sync.WaitGroup
|
||||
wg.Add(5)
|
||||
wg.Add(6)
|
||||
|
||||
go func(data *SummariesData) {
|
||||
defer wg.Done()
|
||||
@@ -146,6 +148,17 @@ func newDataFrom(s *models.Summary) *SummariesData {
|
||||
}
|
||||
}(data)
|
||||
|
||||
go func(data *SummariesData) {
|
||||
defer wg.Done()
|
||||
for i, e := range s.Branches {
|
||||
data.Branches[i] = convertEntry(e, s.TotalTimeBy(models.SummaryBranch))
|
||||
}
|
||||
}(data)
|
||||
|
||||
if s.Branches == nil {
|
||||
data.Branches = nil
|
||||
}
|
||||
|
||||
wg.Wait()
|
||||
return data
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user