Пример #1
0
        public async Task <IActionResult> PostThemeAsync([FromBody] ThemeEntity theme)
        {
            theme.OpenDt = DateTime.Now;
            theme.Owner  = "Michael";

            await _context.Themes.AddAsync(theme);

            await _context.SaveChangesAsync();

            return(Ok(theme.ThemeId));
        }
Пример #2
0
        public async Task <ActionResult> PostCommentAsync([FromBody] CommentEntity comment)
        {
            comment.SubmitDt   = DateTime.Now;
            comment.ModifiedDt = comment.SubmitDt;
            comment.Owner      = "TestOwner";
            await _context.Comments.AddAsync(comment);

            await _context.SaveChangesAsync(true, "testSAM");

            return(Ok(comment));
        }
Пример #3
0
        public async Task <ActionResult> PostStatus([FromBody] Status response)
        {
            //if (!(_userPrincipal.IsAppAdmin))
            //    return Forbid();

            response.SubmitDt = DateTime.Now;

            await _context.Statuses.AddAsync(response);

            await _context.SaveChangesAsync(true, "testSAM");

            // remove notifications when status has been acknowledged
            if (_context.Notifications.Any(n => n.Status.Idea.PostId == response.IdeaId))
            {
                var targetNotification = _context.Notifications.Where(n => n.Status.Idea.PostId == response.IdeaId).SingleOrDefault();
                _context.Notifications.Remove(targetNotification);
                await _context.SaveChangesAsync(true, "testSAM");
            }

            return(Ok(response));
        }
Пример #4
0
        public async Task <ActionResult> PostIdeaAsync([FromBody] IdeaEntity idea)
        {
            ThemeEntity parentTheme = await _context.Themes.Where(t => t.ThemeId == idea.ThemeId).SingleAsync();

            if (parentTheme != null && (parentTheme.CloseDt - DateTime.Now < TimeSpan.Zero))
            {
                return(Forbid());
            }

            idea.SubmitDt   = DateTime.Now;
            idea.ModifiedDt = idea.SubmitDt;
            idea.Owner      = "Michael";

            await _context.Ideas.AddAsync(idea);

            await _context.SaveChangesAsync(true, "testSame");

            Status ideaStatus = new Status()
            {
                StatusCode = StatusType.Submitted,
                Response   = "",
                SubmitDt   = idea.SubmitDt,
                IdeaId     = idea.PostId,
                Idea       = idea
            };

            await _context.Statuses.AddAsync(ideaStatus);

            await _context.SaveChangesAsync(true, "testSam");

            return(Ok(idea));
        }