[API] Add ref to create/edit issue options & deprecated assignee (#13992)
* API: Add ref to create/edit issue options * deprecate Assignee in favour of Assignees
This commit is contained in:
		
							parent
							
								
									980b0df829
								
							
						
					
					
						commit
						e2aa701812
					
				
					 3 changed files with 27 additions and 6 deletions
				
			
		|  | @ -50,8 +50,9 @@ type Issue struct { | ||||||
| 	Ref              string     `json:"ref"` | 	Ref              string     `json:"ref"` | ||||||
| 	Labels           []*Label   `json:"labels"` | 	Labels           []*Label   `json:"labels"` | ||||||
| 	Milestone        *Milestone `json:"milestone"` | 	Milestone        *Milestone `json:"milestone"` | ||||||
| 	Assignee         *User      `json:"assignee"` | 	// deprecated
 | ||||||
| 	Assignees        []*User    `json:"assignees"` | 	Assignee  *User   `json:"assignee"` | ||||||
|  | 	Assignees []*User `json:"assignees"` | ||||||
| 	// Whether the issue is open or closed
 | 	// Whether the issue is open or closed
 | ||||||
| 	//
 | 	//
 | ||||||
| 	// type: string
 | 	// type: string
 | ||||||
|  | @ -83,7 +84,8 @@ type CreateIssueOption struct { | ||||||
| 	// required:true
 | 	// required:true
 | ||||||
| 	Title string `json:"title" binding:"Required"` | 	Title string `json:"title" binding:"Required"` | ||||||
| 	Body  string `json:"body"` | 	Body  string `json:"body"` | ||||||
| 	// username of assignee
 | 	Ref   string `json:"ref"` | ||||||
|  | 	// deprecated
 | ||||||
| 	Assignee  string   `json:"assignee"` | 	Assignee  string   `json:"assignee"` | ||||||
| 	Assignees []string `json:"assignees"` | 	Assignees []string `json:"assignees"` | ||||||
| 	// swagger:strfmt date-time
 | 	// swagger:strfmt date-time
 | ||||||
|  | @ -97,8 +99,10 @@ type CreateIssueOption struct { | ||||||
| 
 | 
 | ||||||
| // EditIssueOption options for editing an issue
 | // EditIssueOption options for editing an issue
 | ||||||
| type EditIssueOption struct { | type EditIssueOption struct { | ||||||
| 	Title     string   `json:"title"` | 	Title string  `json:"title"` | ||||||
| 	Body      *string  `json:"body"` | 	Body  *string `json:"body"` | ||||||
|  | 	Ref   *string `json:"ref"` | ||||||
|  | 	// deprecated
 | ||||||
| 	Assignee  *string  `json:"assignee"` | 	Assignee  *string  `json:"assignee"` | ||||||
| 	Assignees []string `json:"assignees"` | 	Assignees []string `json:"assignees"` | ||||||
| 	Milestone *int64   `json:"milestone"` | 	Milestone *int64   `json:"milestone"` | ||||||
|  |  | ||||||
|  | @ -486,6 +486,7 @@ func CreateIssue(ctx *context.APIContext, form api.CreateIssueOption) { | ||||||
| 		PosterID:     ctx.User.ID, | 		PosterID:     ctx.User.ID, | ||||||
| 		Poster:       ctx.User, | 		Poster:       ctx.User, | ||||||
| 		Content:      form.Body, | 		Content:      form.Body, | ||||||
|  | 		Ref:          form.Ref, | ||||||
| 		DeadlineUnix: deadlineUnix, | 		DeadlineUnix: deadlineUnix, | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | @ -625,6 +626,13 @@ func EditIssue(ctx *context.APIContext, form api.EditIssueOption) { | ||||||
| 	if form.Body != nil { | 	if form.Body != nil { | ||||||
| 		issue.Content = *form.Body | 		issue.Content = *form.Body | ||||||
| 	} | 	} | ||||||
|  | 	if form.Ref != nil { | ||||||
|  | 		err = issue_service.ChangeIssueRef(issue, ctx.User, *form.Ref) | ||||||
|  | 		if err != nil { | ||||||
|  | 			ctx.Error(http.StatusInternalServerError, "UpdateRef", err) | ||||||
|  | 			return | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
| 
 | 
 | ||||||
| 	// Update or remove the deadline, only if set and allowed
 | 	// Update or remove the deadline, only if set and allowed
 | ||||||
| 	if (form.Deadline != nil || form.RemoveDeadline != nil) && canWrite { | 	if (form.Deadline != nil || form.RemoveDeadline != nil) && canWrite { | ||||||
|  |  | ||||||
|  | @ -11937,7 +11937,7 @@ | ||||||
|       ], |       ], | ||||||
|       "properties": { |       "properties": { | ||||||
|         "assignee": { |         "assignee": { | ||||||
|           "description": "username of assignee", |           "description": "deprecated", | ||||||
|           "type": "string", |           "type": "string", | ||||||
|           "x-go-name": "Assignee" |           "x-go-name": "Assignee" | ||||||
|         }, |         }, | ||||||
|  | @ -11976,6 +11976,10 @@ | ||||||
|           "format": "int64", |           "format": "int64", | ||||||
|           "x-go-name": "Milestone" |           "x-go-name": "Milestone" | ||||||
|         }, |         }, | ||||||
|  |         "ref": { | ||||||
|  |           "type": "string", | ||||||
|  |           "x-go-name": "Ref" | ||||||
|  |         }, | ||||||
|         "title": { |         "title": { | ||||||
|           "type": "string", |           "type": "string", | ||||||
|           "x-go-name": "Title" |           "x-go-name": "Title" | ||||||
|  | @ -12778,6 +12782,7 @@ | ||||||
|       "type": "object", |       "type": "object", | ||||||
|       "properties": { |       "properties": { | ||||||
|         "assignee": { |         "assignee": { | ||||||
|  |           "description": "deprecated", | ||||||
|           "type": "string", |           "type": "string", | ||||||
|           "x-go-name": "Assignee" |           "x-go-name": "Assignee" | ||||||
|         }, |         }, | ||||||
|  | @ -12802,6 +12807,10 @@ | ||||||
|           "format": "int64", |           "format": "int64", | ||||||
|           "x-go-name": "Milestone" |           "x-go-name": "Milestone" | ||||||
|         }, |         }, | ||||||
|  |         "ref": { | ||||||
|  |           "type": "string", | ||||||
|  |           "x-go-name": "Ref" | ||||||
|  |         }, | ||||||
|         "state": { |         "state": { | ||||||
|           "type": "string", |           "type": "string", | ||||||
|           "x-go-name": "State" |           "x-go-name": "State" | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue