|
- package models
-
- import "code.gitea.io/gitea/modules/git"
-
- func GetRepoKPIStats(repo *Repository) (*git.RepoKPIStats, error) {
- return git.GetRepoKPIStats(repo.RepoPath())
- }
-
- func GetAllUserKPIStats() (map[string]*git.UserKPIStats, error) {
- authors := make(map[string]*git.UserKPIStats)
- repositorys, err := GetAllRepositoriesByFilterCols("owner_name", "name")
- if err != nil {
- return nil, err
- }
-
- for _, repository := range repositorys {
- authorsOneRepo, err1 := git.GetUserKPIStats(repository.RepoPath())
- if err1 != nil {
- return nil, err
- }
-
- for key, value := range authorsOneRepo {
- if _, ok := authors[key]; !ok {
- authors[key] = &git.UserKPIStats{
-
- Name: value.Name,
- Email: value.Email,
- Commits: 0,
- CommitLines: 0,
- }
- }
- authors[key].Commits += value.Commits
- authors[key].CommitLines += value.CommitLines
-
- }
-
- }
- return authors, nil
- }
|