Finish sprint stats
parent
1c6006245d
commit
3f005b6b01
|
@ -35,20 +35,25 @@ class TaskboardController extends mixOf(taiga.Controller, taiga.PageMixin)
|
||||||
|
|
||||||
constructor: (@scope, @rootscope, @repo, @confirm, @rs, @params, @q) ->
|
constructor: (@scope, @rootscope, @repo, @confirm, @rs, @params, @q) ->
|
||||||
@scope.sprintId = @params.id
|
@scope.sprintId = @params.id
|
||||||
|
|
||||||
promise = @.loadInitialData()
|
promise = @.loadInitialData()
|
||||||
promise.then null, ->
|
promise.then null, ->
|
||||||
console.log "FAIL"
|
console.log "FAIL" #TODO
|
||||||
|
|
||||||
loadSprintStats: ->
|
loadSprintStats: ->
|
||||||
return @rs.sprints.stats(@scope.projectId, @scope.sprintId).then (stats) =>
|
return @rs.sprints.stats(@scope.projectId, @scope.sprintId).then (stats) =>
|
||||||
console.log "loadSprintStats",
|
totalPointsSum =_.reduce(_.values(stats.total_points), ((res, n) -> res + n), 0)
|
||||||
|
completedPointsSum = _.reduce(_.values(stats.completed_points), ((res, n) -> res + n), 0)
|
||||||
|
remainingPointsSum = totalPointsSum - completedPointsSum
|
||||||
|
remainingTasks = stats.total_tasks - stats.completed_tasks
|
||||||
@scope.stats = stats
|
@scope.stats = stats
|
||||||
|
@scope.stats.totalPointsSum = totalPointsSum
|
||||||
|
@scope.stats.completedPointsSum = completedPointsSum
|
||||||
|
@scope.stats.remainingPointsSum = remainingPointsSum
|
||||||
|
@scope.stats.remainingTasks = remainingTasks
|
||||||
return stats
|
return stats
|
||||||
|
|
||||||
loadSprint: ->
|
loadSprint: ->
|
||||||
return @rs.sprints.get(@scope.projectId, @scope.sprintId).then (sprint) =>
|
return @rs.sprints.get(@scope.projectId, @scope.sprintId).then (sprint) =>
|
||||||
console.log "loadSprint", sprint
|
|
||||||
@scope.sprint = sprint
|
@scope.sprint = sprint
|
||||||
@scope.userstories = sprint.user_stories
|
@scope.userstories = sprint.user_stories
|
||||||
return sprint
|
return sprint
|
||||||
|
@ -57,7 +62,6 @@ class TaskboardController extends mixOf(taiga.Controller, taiga.PageMixin)
|
||||||
return @rs.tasks.list(@scope.projectId, @scope.sprintId).then (tasks) =>
|
return @rs.tasks.list(@scope.projectId, @scope.sprintId).then (tasks) =>
|
||||||
@scope.tasks = tasks
|
@scope.tasks = tasks
|
||||||
@scope.tasksByStatus = _.groupBy(tasks, "status")
|
@scope.tasksByStatus = _.groupBy(tasks, "status")
|
||||||
console.log "loadTasks", @scope.tasksByStatus
|
|
||||||
return tasks
|
return tasks
|
||||||
|
|
||||||
loadProject: ->
|
loadProject: ->
|
||||||
|
@ -65,7 +69,6 @@ class TaskboardController extends mixOf(taiga.Controller, taiga.PageMixin)
|
||||||
@scope.project = project
|
@scope.project = project
|
||||||
@scope.points = _.sortBy(project.points, "order")
|
@scope.points = _.sortBy(project.points, "order")
|
||||||
@scope.statusList = _.sortBy(project.task_statuses, "id")
|
@scope.statusList = _.sortBy(project.task_statuses, "id")
|
||||||
console.log "loadProject", @scope.statusList
|
|
||||||
return project
|
return project
|
||||||
|
|
||||||
loadTaskboard: ->
|
loadTaskboard: ->
|
||||||
|
@ -76,7 +79,6 @@ class TaskboardController extends mixOf(taiga.Controller, taiga.PageMixin)
|
||||||
]).then(=> @.loadTasks())
|
]).then(=> @.loadTasks())
|
||||||
|
|
||||||
loadInitialData: ->
|
loadInitialData: ->
|
||||||
console.log @params
|
|
||||||
promise = @repo.resolve({pslug: @params.pslug}).then (data) =>
|
promise = @repo.resolve({pslug: @params.pslug}).then (data) =>
|
||||||
@scope.projectId = data.project
|
@scope.projectId = data.project
|
||||||
return data
|
return data
|
||||||
|
@ -84,6 +86,8 @@ class TaskboardController extends mixOf(taiga.Controller, taiga.PageMixin)
|
||||||
return promise.then(=> @.loadProject())
|
return promise.then(=> @.loadProject())
|
||||||
.then(=> @.loadUsersAndRoles())
|
.then(=> @.loadUsersAndRoles())
|
||||||
.then(=> @.loadTaskboard())
|
.then(=> @.loadTaskboard())
|
||||||
|
|
||||||
|
|
||||||
#############################################################################
|
#############################################################################
|
||||||
## TaskboardDirective
|
## TaskboardDirective
|
||||||
#############################################################################
|
#############################################################################
|
||||||
|
|
|
@ -3,35 +3,33 @@ div.summary.large-summary
|
||||||
div.summary-progress-bar
|
div.summary-progress-bar
|
||||||
div.current-progress
|
div.current-progress
|
||||||
div.data
|
div.data
|
||||||
span.number 30%
|
span.number -- %
|
||||||
span.description completed
|
|
||||||
ul
|
ul
|
||||||
li
|
li
|
||||||
span.number 12
|
span.number(ng-bind="stats.totalPointsSum|default:'--'")
|
||||||
span.description project<br />points
|
span.description total<br />points
|
||||||
li
|
li
|
||||||
span.number 23
|
span.number(ng-bind="stats.completedPointsSum|default:'--'")
|
||||||
span.description defined<br />points
|
span.description completed<br />points
|
||||||
li
|
li
|
||||||
span.number 12
|
span.number(ng-bind="stats.remainingPointsSum|default:'--'")
|
||||||
span.description assigned<br />points
|
span.description remaining<br />points
|
||||||
li
|
|
||||||
span.number 23
|
|
||||||
span.description closed<br />points
|
|
||||||
|
|
||||||
ul
|
ul
|
||||||
li
|
li
|
||||||
span.icon.icon-bulk
|
span.icon.icon-bulk
|
||||||
span.number 73
|
span.number(ng-bind="stats.total_tasks|default:'--'")
|
||||||
span.description created<br />tasks
|
span.description created<br />tasks
|
||||||
li
|
li
|
||||||
span.number 72
|
span.number(ng-bind="stats.remainingTasks|default:'--'")
|
||||||
span.description closed<br />tasks
|
span.description open<br />tasks
|
||||||
li
|
li
|
||||||
span.number 18
|
span.number(ng-bind="stats.completed_tasks|default:'--'")
|
||||||
span.description remaining<br />tasks
|
span.description closed<br />tasks
|
||||||
|
|
||||||
ul
|
ul
|
||||||
li
|
li
|
||||||
span.icon.icon-iocaine
|
span.icon.icon-iocaine
|
||||||
span.number 10
|
span.number(ng-bind="stats.iocaine_doses|default:'--'")
|
||||||
span.description iocanie<br />doses
|
span.description iocaine<br />doses
|
||||||
|
|
Loading…
Reference in New Issue