diff options
author | crupest <crupest@outlook.com> | 2022-04-07 22:24:59 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2022-04-07 22:24:59 +0800 |
commit | 9e559fc918d4b4485ef589184348686927ebd63c (patch) | |
tree | 4acdc6ee20dfe66cafd413c21ca50b35d217f506 /BackEnd/Timeline/Controllers/TimelineV2Controller.cs | |
parent | a1f6b41accb47e4c1e1e0474148afa94732377da (diff) | |
download | timeline-9e559fc918d4b4485ef589184348686927ebd63c.tar.gz timeline-9e559fc918d4b4485ef589184348686927ebd63c.tar.bz2 timeline-9e559fc918d4b4485ef589184348686927ebd63c.zip |
...
Diffstat (limited to 'BackEnd/Timeline/Controllers/TimelineV2Controller.cs')
-rw-r--r-- | BackEnd/Timeline/Controllers/TimelineV2Controller.cs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/BackEnd/Timeline/Controllers/TimelineV2Controller.cs b/BackEnd/Timeline/Controllers/TimelineV2Controller.cs new file mode 100644 index 00000000..7543c2a8 --- /dev/null +++ b/BackEnd/Timeline/Controllers/TimelineV2Controller.cs @@ -0,0 +1,33 @@ +using System; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Mvc; +using Timeline.Entities; +using Timeline.Models.Http; +using Timeline.Services.Mapper; +using Timeline.Services.Timeline; + +namespace Timeline.Controllers +{ + [ApiController] + [Route("v2/timelines")] + public class TimelineV2Controller : MyControllerBase + { + private ITimelineService _timelineService; + private TimelineMapper _timelineMapper; + + public TimelineV2Controller(ITimelineService timelineService, TimelineMapper timelineMapper) + { + _timelineService = timelineService; + _timelineMapper = timelineMapper; + } + + [HttpGet("{owner}/{timeline}")] + public async Task<ActionResult<HttpTimeline>> Get([FromRoute] string owner, [FromRoute] string timeline) + { + var timelineId = await _timelineService.GetTimelineIdAsync(owner, timeline); + var t = await _timelineService.GetTimelineAsync(timelineId); + return await _timelineMapper.MapAsync(t, Url, User); + } + } +} + |