forked from forgejo/forgejo
Improve performance of dashboard (#4977)
This commit is contained in:
parent
49ea6e0deb
commit
b3b7598ec6
19 changed files with 350 additions and 94 deletions
|
@ -148,6 +148,10 @@ func (pr *PullRequest) GetGitRefName() string {
|
|||
// Required - Issue
|
||||
// Optional - Merger
|
||||
func (pr *PullRequest) APIFormat() *api.PullRequest {
|
||||
return pr.apiFormat(x)
|
||||
}
|
||||
|
||||
func (pr *PullRequest) apiFormat(e Engine) *api.PullRequest {
|
||||
var (
|
||||
baseBranch *Branch
|
||||
headBranch *Branch
|
||||
|
@ -155,16 +159,20 @@ func (pr *PullRequest) APIFormat() *api.PullRequest {
|
|||
headCommit *git.Commit
|
||||
err error
|
||||
)
|
||||
apiIssue := pr.Issue.APIFormat()
|
||||
if err = pr.Issue.loadRepo(e); err != nil {
|
||||
log.Error(log.ERROR, "loadRepo[%d]: %v", pr.ID, err)
|
||||
return nil
|
||||
}
|
||||
apiIssue := pr.Issue.apiFormat(e)
|
||||
if pr.BaseRepo == nil {
|
||||
pr.BaseRepo, err = GetRepositoryByID(pr.BaseRepoID)
|
||||
pr.BaseRepo, err = getRepositoryByID(e, pr.BaseRepoID)
|
||||
if err != nil {
|
||||
log.Error(log.ERROR, "GetRepositoryById[%d]: %v", pr.ID, err)
|
||||
return nil
|
||||
}
|
||||
}
|
||||
if pr.HeadRepo == nil {
|
||||
pr.HeadRepo, err = GetRepositoryByID(pr.HeadRepoID)
|
||||
pr.HeadRepo, err = getRepositoryByID(e, pr.HeadRepoID)
|
||||
if err != nil {
|
||||
log.Error(log.ERROR, "GetRepositoryById[%d]: %v", pr.ID, err)
|
||||
return nil
|
||||
|
@ -187,15 +195,18 @@ func (pr *PullRequest) APIFormat() *api.PullRequest {
|
|||
Ref: pr.BaseBranch,
|
||||
Sha: baseCommit.ID.String(),
|
||||
RepoID: pr.BaseRepoID,
|
||||
Repository: pr.BaseRepo.APIFormat(AccessModeNone),
|
||||
Repository: pr.BaseRepo.innerAPIFormat(e, AccessModeNone, false),
|
||||
}
|
||||
apiHeadBranchInfo := &api.PRBranchInfo{
|
||||
Name: pr.HeadBranch,
|
||||
Ref: pr.HeadBranch,
|
||||
Sha: headCommit.ID.String(),
|
||||
RepoID: pr.HeadRepoID,
|
||||
Repository: pr.HeadRepo.APIFormat(AccessModeNone),
|
||||
Repository: pr.HeadRepo.innerAPIFormat(e, AccessModeNone, false),
|
||||
}
|
||||
|
||||
pr.Issue.loadRepo(e)
|
||||
|
||||
apiPullRequest := &api.PullRequest{
|
||||
ID: pr.ID,
|
||||
Index: pr.Index,
|
||||
|
@ -542,7 +553,7 @@ func (pr *PullRequest) setMerged() (err error) {
|
|||
return err
|
||||
}
|
||||
|
||||
if err = pr.Issue.changeStatus(sess, pr.Merger, pr.Issue.Repo, true); err != nil {
|
||||
if err = pr.Issue.changeStatus(sess, pr.Merger, true); err != nil {
|
||||
return fmt.Errorf("Issue.changeStatus: %v", err)
|
||||
}
|
||||
if _, err = sess.ID(pr.ID).Cols("has_merged, status, merged_commit_id, merger_id, merged_unix").Update(pr); err != nil {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue