mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 11:28:24 +00:00 
			
		
		
		
	Move tracked time api convert to convert package (#9665)
This commit is contained in:
		
				
					committed by
					
						 techknowlogick
						techknowlogick
					
				
			
			
				
	
			
			
			
						parent
						
							705b1e49a8
						
					
				
				
					commit
					4d06d10dba
				
			| @@ -8,7 +8,6 @@ import ( | |||||||
| 	"time" | 	"time" | ||||||
|  |  | ||||||
| 	"code.gitea.io/gitea/modules/setting" | 	"code.gitea.io/gitea/modules/setting" | ||||||
| 	api "code.gitea.io/gitea/modules/structs" |  | ||||||
|  |  | ||||||
| 	"xorm.io/builder" | 	"xorm.io/builder" | ||||||
| 	"xorm.io/xorm" | 	"xorm.io/xorm" | ||||||
| @@ -60,25 +59,6 @@ func (t *TrackedTime) loadAttributes(e Engine) (err error) { | |||||||
| 	return | 	return | ||||||
| } | } | ||||||
|  |  | ||||||
| // APIFormat converts TrackedTime to API format |  | ||||||
| func (t *TrackedTime) APIFormat() (apiT *api.TrackedTime) { |  | ||||||
| 	apiT = &api.TrackedTime{ |  | ||||||
| 		ID:       t.ID, |  | ||||||
| 		IssueID:  t.IssueID, |  | ||||||
| 		UserID:   t.UserID, |  | ||||||
| 		UserName: t.User.Name, |  | ||||||
| 		Time:     t.Time, |  | ||||||
| 		Created:  t.Created, |  | ||||||
| 	} |  | ||||||
| 	if t.Issue != nil { |  | ||||||
| 		apiT.Issue = t.Issue.APIFormat() |  | ||||||
| 	} |  | ||||||
| 	if t.User != nil { |  | ||||||
| 		apiT.UserName = t.User.Name |  | ||||||
| 	} |  | ||||||
| 	return |  | ||||||
| } |  | ||||||
|  |  | ||||||
| // LoadAttributes load Issue, User | // LoadAttributes load Issue, User | ||||||
| func (tl TrackedTimeList) LoadAttributes() (err error) { | func (tl TrackedTimeList) LoadAttributes() (err error) { | ||||||
| 	for _, t := range tl { | 	for _, t := range tl { | ||||||
| @@ -89,15 +69,6 @@ func (tl TrackedTimeList) LoadAttributes() (err error) { | |||||||
| 	return | 	return | ||||||
| } | } | ||||||
|  |  | ||||||
| // APIFormat converts TrackedTimeList to API format |  | ||||||
| func (tl TrackedTimeList) APIFormat() api.TrackedTimeList { |  | ||||||
| 	result := make([]*api.TrackedTime, 0, len(tl)) |  | ||||||
| 	for _, t := range tl { |  | ||||||
| 		result = append(result, t.APIFormat()) |  | ||||||
| 	} |  | ||||||
| 	return result |  | ||||||
| } |  | ||||||
|  |  | ||||||
| // FindTrackedTimesOptions represent the filters for tracked times. If an ID is 0 it will be ignored. | // FindTrackedTimesOptions represent the filters for tracked times. If an ID is 0 it will be ignored. | ||||||
| type FindTrackedTimesOptions struct { | type FindTrackedTimesOptions struct { | ||||||
| 	IssueID           int64 | 	IssueID           int64 | ||||||
|   | |||||||
							
								
								
									
										38
									
								
								modules/convert/issue.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								modules/convert/issue.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,38 @@ | |||||||
|  | // Copyright 2020 The Gitea Authors. All rights reserved. | ||||||
|  | // Use of this source code is governed by a MIT-style | ||||||
|  | // license that can be found in the LICENSE file. | ||||||
|  |  | ||||||
|  | package convert | ||||||
|  |  | ||||||
|  | import ( | ||||||
|  | 	"code.gitea.io/gitea/models" | ||||||
|  | 	api "code.gitea.io/gitea/modules/structs" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | // ToTrackedTime converts TrackedTime to API format | ||||||
|  | func ToTrackedTime(t *models.TrackedTime) (apiT *api.TrackedTime) { | ||||||
|  | 	apiT = &api.TrackedTime{ | ||||||
|  | 		ID:       t.ID, | ||||||
|  | 		IssueID:  t.IssueID, | ||||||
|  | 		UserID:   t.UserID, | ||||||
|  | 		UserName: t.User.Name, | ||||||
|  | 		Time:     t.Time, | ||||||
|  | 		Created:  t.Created, | ||||||
|  | 	} | ||||||
|  | 	if t.Issue != nil { | ||||||
|  | 		apiT.Issue = t.Issue.APIFormat() | ||||||
|  | 	} | ||||||
|  | 	if t.User != nil { | ||||||
|  | 		apiT.UserName = t.User.Name | ||||||
|  | 	} | ||||||
|  | 	return | ||||||
|  | } | ||||||
|  |  | ||||||
|  | // ToTrackedTimeList converts TrackedTimeList to API format | ||||||
|  | func ToTrackedTimeList(tl models.TrackedTimeList) api.TrackedTimeList { | ||||||
|  | 	result := make([]*api.TrackedTime, 0, len(tl)) | ||||||
|  | 	for _, t := range tl { | ||||||
|  | 		result = append(result, ToTrackedTime(t)) | ||||||
|  | 	} | ||||||
|  | 	return result | ||||||
|  | } | ||||||
| @@ -12,6 +12,7 @@ import ( | |||||||
|  |  | ||||||
| 	"code.gitea.io/gitea/models" | 	"code.gitea.io/gitea/models" | ||||||
| 	"code.gitea.io/gitea/modules/context" | 	"code.gitea.io/gitea/modules/context" | ||||||
|  | 	"code.gitea.io/gitea/modules/convert" | ||||||
| 	api "code.gitea.io/gitea/modules/structs" | 	api "code.gitea.io/gitea/modules/structs" | ||||||
| 	"code.gitea.io/gitea/routers/api/v1/utils" | 	"code.gitea.io/gitea/routers/api/v1/utils" | ||||||
| ) | ) | ||||||
| @@ -93,7 +94,7 @@ func ListTrackedTimes(ctx *context.APIContext) { | |||||||
| 		ctx.Error(http.StatusInternalServerError, "LoadAttributes", err) | 		ctx.Error(http.StatusInternalServerError, "LoadAttributes", err) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(http.StatusOK, trackedTimes.APIFormat()) | 	ctx.JSON(http.StatusOK, convert.ToTrackedTimeList(trackedTimes)) | ||||||
| } | } | ||||||
|  |  | ||||||
| // AddTime add time manual to the given issue | // AddTime add time manual to the given issue | ||||||
| @@ -178,7 +179,7 @@ func AddTime(ctx *context.APIContext, form api.AddTimeOption) { | |||||||
| 		ctx.Error(http.StatusInternalServerError, "LoadAttributes", err) | 		ctx.Error(http.StatusInternalServerError, "LoadAttributes", err) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(http.StatusOK, trackedTime.APIFormat()) | 	ctx.JSON(http.StatusOK, convert.ToTrackedTime(trackedTime)) | ||||||
| } | } | ||||||
|  |  | ||||||
| // ResetIssueTime reset time manual to the given issue | // ResetIssueTime reset time manual to the given issue | ||||||
| @@ -399,7 +400,7 @@ func ListTrackedTimesByUser(ctx *context.APIContext) { | |||||||
| 		ctx.Error(http.StatusInternalServerError, "LoadAttributes", err) | 		ctx.Error(http.StatusInternalServerError, "LoadAttributes", err) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(http.StatusOK, trackedTimes.APIFormat()) | 	ctx.JSON(http.StatusOK, convert.ToTrackedTimeList(trackedTimes)) | ||||||
| } | } | ||||||
|  |  | ||||||
| // ListTrackedTimesByRepository lists all tracked times of the repository | // ListTrackedTimesByRepository lists all tracked times of the repository | ||||||
| @@ -486,7 +487,7 @@ func ListTrackedTimesByRepository(ctx *context.APIContext) { | |||||||
| 		ctx.Error(http.StatusInternalServerError, "LoadAttributes", err) | 		ctx.Error(http.StatusInternalServerError, "LoadAttributes", err) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(http.StatusOK, trackedTimes.APIFormat()) | 	ctx.JSON(http.StatusOK, convert.ToTrackedTimeList(trackedTimes)) | ||||||
| } | } | ||||||
|  |  | ||||||
| // ListMyTrackedTimes lists all tracked times of the current user | // ListMyTrackedTimes lists all tracked times of the current user | ||||||
| @@ -530,5 +531,5 @@ func ListMyTrackedTimes(ctx *context.APIContext) { | |||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	ctx.JSON(http.StatusOK, trackedTimes.APIFormat()) | 	ctx.JSON(http.StatusOK, convert.ToTrackedTimeList(trackedTimes)) | ||||||
| } | } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user