Beispiel #1
0
        public IActionResult PutUsers(string account, UserPut userput)
        {
            ALiYunOss.PutImageIntoPath(userput.icon, account);
            Users user = _context.Users.Find(account);

            user.Icon          = account;
            user.Name          = userput.name;
            user.Nickname      = userput.nickname;
            user.PhoneNum      = userput.phoneNum;
            user.EmailAddress  = userput.emailAddress;
            user.Sex           = userput.sex;
            user.School        = userput.school;
            user.College       = userput.college;
            user.Grade         = userput.grade;
            user.StudentNumber = userput.studentNumber;
            user.Intro         = userput.intro;

            try {
                _context.SaveChanges();
            }
            catch (DbUpdateConcurrencyException) {
                if (!UsersExists(account))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Beispiel #2
0
        public ActionResult <Object> GetUsergroups(int groupid, int projectId)
        {
            var group = _context.Usergroups.Find(groupid, projectId);

            if (group == null)
            {
                return(BadRequest());
            }
            var leaderusr = _context.Users.Find(group.LeaderAccount);
            var result    = new {
                Curmemnum = group.Member.Count(),
                Icon      = ALiYunOss.GetImageFromPath(leaderusr.Icon),
                sequence  = (
                    from project in _context.Set <Project>()
                    join post in _context.Set <Post>()
                    on project.ProjectId equals post.ProjectId
                    where project.ProjectId == projectid
                    select new
                {
                    project.Name,
                    post.MaxMemberNum,
                }).ToList()
            };

            return(result);
        }
Beispiel #3
0
        public ActionResult <IEnumerable <Object> > GetUsers(string name)
        {
            var query = from user in _context.Set <Users>()
                        where user.Name == name
                        select new {
                icon = ALiYunOss.GetImageFromPath(user.Icon),
                user.Account, user.Nickname
            };

            return(query.ToList());
        }
Beispiel #4
0
        public ActionResult <Users> GetUser(string account)
        {
            var users = _context.Users.Find(account);

            if (users == null)
            {
                return(NotFound());
            }
            users.Password = "";
            users.Icon     = ALiYunOss.GetImageFromPath(users.Icon);
            return(users);
        }
Beispiel #5
0
        public ActionResult <IEnumerable <Object> > GetComment(string momentId)
        {
            var query = from comment in _context.Set <Comment>()
                        join user in _context.Set <Users>()
                        on comment.Account equals user.Account
                        select new {
                comment.CommentId, comment.Account,
                comment.Content, comment.Time, user.Nickname,
                Icon = ALiYunOss.GetImageFromPath(user.Icon)
            };

            return(query.ToList());
        }
Beispiel #6
0
        public ActionResult <IEnumerable <Object> > GetReply(int commentId)
        {
            var query = from reply in _context.Set <Reply>()
                        join user in _context.Set <Users>()
                        on reply.Account equals user.Account
                        where reply.CommentId == commentId
                        select new {
                reply.Account, reply.ReplyId,
                reply.Time, reply.Content, user.Nickname,
                Icon = ALiYunOss.GetImageFromPath(user.Icon)
            };

            return(query.ToList());
        }
Beispiel #7
0
        public ActionResult <IEnumerable <Object> > GetPost(int projectId)
        {
            var query = from post in _context.Set <Post>()
                        join usergroup in _context.Set <Usergroups>()
                        on new { post.GroupId, post.ProjectId } equals
            new { usergroup.GroupId, usergroup.ProjectId } into groupPost
            from gp in groupPost
            join user in _context.Set <Users>()
            on gp.LeaderAccount equals user.Account
            where post.ProjectId == projectId
            select new {
                post.PostId, post.GroupId, post.PostTime,
                gp.LeaderAccount, user.Nickname, icon = ALiYunOss.GetImageFromPath(user.Icon)
            };

            return(query.ToList());
        }
Beispiel #8
0
        public ActionResult <IEnumerable <MomentItem> > GetMoment()
        {
            var query = from mom in _context.Set <Moment>()
                        from user in _context.Set <Users>()
                        where mom.Account == user.Account
                        select new MomentItem {
                moment    = mom, icon = ALiYunOss.GetImageFromPath(user.Icon), nickname = user.Nickname,
                likeCount = (from like in _context.Set <LikeMoment>()
                             where like.Account == mom.Account
                             select like.Account).Count(),
                commentCount = (from comment in _context.Set <Comment>()
                                where comment.Account == mom.Account
                                select comment.Account).Count(),
                starCount = (from star in _context.Set <MomentStar>()
                             where star.Account == mom.Account
                             select star.Account).Count()
            };

            return(query.ToList());
        }
Beispiel #9
0
        public ActionResult <Object> GetPost(int postId, int projectId, int groupId)
        {
            var post = _context.Post.Find(postId, projectId, groupId);

            var usergroup = _context.Usergroups.Find(groupId, projectId);

            if (usergroup == null)
            {
                return(NotFound());
            }
            var user = _context.Users.Find(usergroup.LeaderAccount);

            if (post == null || user == null)
            {
                return(NotFound());
            }

            return(new { post.PostTime, post.Content,
                         usergroup.LeaderAccount, user.Nickname, icon = ALiYunOss.GetImageFromPath(user.Icon) });
        }
Beispiel #10
0
        public ActionResult <Object> GetComment(int id)
        {
            var comment = _context.Comment.Find(id);

            if (comment == null)
            {
                return(NotFound());
            }
            var user   = _context.Users.Find(comment.Account);
            var result = new {
                Icon = ALiYunOss.GetImageFromPath(user.Icon), user.Account,
                user.Nickname, comment.Content, comment.Time,
                ReplyList = (
                    from reply in _context.Set <Reply>()
                    where reply.CommentId == comment.CommentId
                    select new { reply.ReplyId, reply.Account, reply.Time, reply.Content }
                    ).ToList()
            };

            return(result);
        }
Beispiel #11
0
        public ActionResult <Object> GetMoment(int id)
        {
            var moment = _context.Moment.Find(id);

            if (moment == null)
            {
                return(NotFound());
            }
            var user = _context.Users.Find(moment.Account);

            return(new{ moment, icon = ALiYunOss.GetImageFromPath(user.Icon),
                        likeCount = (from like in _context.Set <LikeMoment>()
                                     where like.Account == moment.Account
                                     select like.Account).Count(),
                        commentCount = (from comment in _context.Set <Comment>()
                                        where comment.Account == moment.Account
                                        select comment.Account).Count(),
                        starCount = (from star in _context.Set <MomentStar>()
                                     where star.Account == moment.Account
                                     select star.Account).Count() });
        }
Beispiel #12
0
        public ActionResult <Users> PostUsers(Users users)
        {
            ALiYunOss.PutImageIntoPath(users.Icon, users.Account);
            users.Icon = users.Account;
            _context.Users.Add(users);
            try {
                _context.SaveChanges();
            }
            catch (DbUpdateException) {
                if (UsersExists(users.Account))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetUsers", new { id = users.Account }, users));
        }