From 2f9da0048893aacb7ffbfcae50ea5e0c8f840dbc Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 10 Mar 2020 03:10:34 +0800 Subject: ... --- Timeline/Controllers/TimelineController.cs | 18 ++++++++++-------- Timeline/Models/Http/Timeline.cs | 5 ++++- 2 files changed, 14 insertions(+), 9 deletions(-) (limited to 'Timeline') diff --git a/Timeline/Controllers/TimelineController.cs b/Timeline/Controllers/TimelineController.cs index 00e9a860..e3baff12 100644 --- a/Timeline/Controllers/TimelineController.cs +++ b/Timeline/Controllers/TimelineController.cs @@ -154,9 +154,10 @@ namespace TimelineApp.Controllers { return StatusCode(StatusCodes.Status403Forbidden, ErrorResponse.Common.Forbid()); } - await _service.ChangeProperty(name, body); - var timeline = (await _service.GetTimeline(name)).FillLinks(Url); - return Ok(timeline); + await _service.ChangeProperty(name, _mapper.Map(body)); + var timeline = await _service.GetTimeline(name); + var result = _mapper.Map(timeline); + return result; } [HttpPut("timelines/{name}/members/{member}")] @@ -207,8 +208,9 @@ namespace TimelineApp.Controllers try { - var timelineInfo = (await _service.CreateTimeline(body.Name, userId)).FillLinks(Url); - return Ok(timelineInfo); + var timeline = await _service.CreateTimeline(body.Name, userId); + var result = _mapper.Map(timeline); + return result; } catch (ConflictException) { @@ -218,7 +220,7 @@ namespace TimelineApp.Controllers [HttpDelete("timelines/{name}")] [Authorize] - public async Task> TimelineDelete([FromRoute][TimelineName] string name) + public async Task> TimelineDelete([FromRoute][TimelineName] string name) { if (!this.IsAdministrator() && !(await _service.HasManagePermission(name, this.GetUserId()))) { @@ -228,11 +230,11 @@ namespace TimelineApp.Controllers try { await _service.DeleteTimeline(name); - return Ok(CommonDeleteResponse.Delete()); + return CommonDeleteResponse.Delete(); } catch (TimelineNotExistException) { - return Ok(CommonDeleteResponse.NotExist()); + return CommonDeleteResponse.NotExist(); } } } diff --git a/Timeline/Models/Http/Timeline.cs b/Timeline/Models/Http/Timeline.cs index 144cca7c..637a775d 100644 --- a/Timeline/Models/Http/Timeline.cs +++ b/Timeline/Models/Http/Timeline.cs @@ -64,7 +64,7 @@ namespace TimelineApp.Models.Http var urlHelper = _urlHelperFactory.GetUrlHelper(_actionContextAccessor.ActionContext); - return new TimelineInfoLinks + return new TimelineInfoLinks { Self = urlHelper.ActionLink(nameof(TimelineController.TimelineGet), nameof(TimelineController)[0..^nameof(Controller).Length], new { source.Name }), Posts = urlHelper.ActionLink(nameof(TimelineController.PostListGet), nameof(TimelineController)[0..^nameof(Controller).Length], new { source.Name }) @@ -114,6 +114,9 @@ namespace TimelineApp.Models.Http public TimelineInfoAutoMapperProfile() { CreateMap().ForMember(u => u._links, opt => opt.MapFrom()); + CreateMap(); + CreateMap().ConvertUsing(); + CreateMap(); } } } -- cgit v1.2.3