MilestonesService provides a method which returns milestones with issue count.

This commit is contained in:
takezoe
2013-06-27 02:35:24 +09:00
parent 38d51ccf90
commit 333c4f08d4
3 changed files with 39 additions and 35 deletions

View File

@@ -61,8 +61,8 @@ trait MilestonesService {
.sortBy(_.milestoneId desc)
.firstOption
def getMilestoneIssueCounts(owner: String, repository: String): Map[(Int, Boolean), Int] =
Issues
def getMilestonesWithIssueCount(owner: String, repository: String): List[(Milestone, Int, Int)] = {
val counts = Issues
.filter { t =>
(t.userName is owner.bind) &&
(t.repositoryName is repository.bind) &&
@@ -80,6 +80,11 @@ trait MilestonesService {
}
.toMap
getMilestones(owner, repository).map { milestone =>
(milestone, counts.getOrElse((milestone.milestoneId, false), 0), counts.getOrElse((milestone.milestoneId, true), 0))
}
}
def getMilestones(owner: String, repository: String): List[Milestone] =
Query(Milestones)
.filter { t =>