Beispiel #1
0
 public EditTitleViewModelPanel Get(int id)
 {
     try
     {
         using (ApplicationDbContext db = new ApplicationDbContext())
         {
             Data data = db.Datas.Find(id);
             if (data == null)
             {
                 Result = new Result(ResultType.NotFound, "Başlık bulunamadı.");
                 return(null);
             }
             Title title        = (Title)data;
             var   evaluations  = title.Evaluations.ToList();
             int   dislikeCount = evaluations.Where(e => e.EvaluationType == EvaluationType.Dislike).Count();
             int   likeCount    = evaluations.Where(e => e.EvaluationType == EvaluationType.Like).Count();
             List <ListAdviseViewModelPanel> advices = new Advise().List(title.Id);
             return(new EditTitleViewModelPanel {
                 Id = title.Id, Name = title.Name, Description = title.Descripton, Point = title.Point, DisLikeCount = dislikeCount, LikeCount = likeCount, ViewCount = title.ViewCount, State = title.State, Advices = advices, MediaURL = title.MediaUrl, UserName = title.ApplicationUser.UserName
             });
         }
     }
     catch (Exception)
     {
         Result = new Result(ResultType.Error, "Veritabanı ile bağlantı sağlanamadı.");
         return(null);
     }
 }
 public EditUserViewModelPanel Get(string username)
 {
     try
     {
         using (ApplicationDbContext db = new ApplicationDbContext())
         {
             ApplicationUser user = db.Users.Where(u => u.UserName == username).FirstOrDefault();
             if (user == null)
             {
                 Result = new Result(ResultType.NotFound, "Kullanıcı bulunamadı.");
                 return(null);
             }
             List <ListTitleViewModelPanel>  titles  = new Title().List(user.Id);
             List <ListAdviseViewModelPanel> advices = new Advise().List(user.Id);
             return(new EditUserViewModelPanel {
                 Id = user.Id, UserName = user.UserName, BirthDate = user.BirthDate, Email = user.Email, Gender = user.Gender, Image = user.Image, State = user.State, RankName = user.Rank.Name, Titles = titles, Advices = advices, Point = user.Point
             });
         }
     }
     catch (Exception)
     {
         Result = new Result(ResultType.Error, "Veritabanı ile bağlantı sağlanamadı.");
         return(null);
     }
 }
Beispiel #3
0
        public void FillAdviseList(Advise advices, List <ListAdviseViewModelPanel> list)
        {
            var counts       = advices.Evaluations.ToList();
            int likecount    = counts.Where(i => i.EvaluationType == EvaluationType.Like).Count();
            int dislikecount = counts.Where(i => i.EvaluationType == EvaluationType.Dislike).Count();

            list.Add(new ListAdviseViewModelPanel {
                Id = advices.Id, Description = advices.Descripton, Point = advices.Point, LikeCount = likecount, DisLikeCount = dislikecount, State = advices.State, TitleId = advices.TitleId, CreatedDate = advices.CreatedDate
            });
        }
Beispiel #4
0
        //PANEL
        public List <ListAdviseViewModelPanel> List(string userId)
        {
            List <ListAdviseViewModelPanel> list = new List <ListAdviseViewModelPanel>();

            using (ApplicationDbContext db = new ApplicationDbContext())
            {
                List <Data> advises = db.Datas.Where(d => d.ApplicationUserId == userId).ToList();
                foreach (Data data in advises)
                {
                    if (data is Advise)
                    {
                        Advise a = (Advise)data;
                        FillAdviseList(a, list);
                    }
                }
            }
            return(list);
        }
Beispiel #5
0
        //WEB
        public IPagedList <ListAdviseViewModelWeb> List(int?page, int titleId, string currentUserId)
        {
            List <ListAdviseViewModelWeb> list = new List <ListAdviseViewModelWeb>();

            using (ApplicationDbContext db = new ApplicationDbContext())
            {
                List <Data> advises = db.Datas.Where(i => i.State == true).OrderBy(a => a.CreatedDate).ToList();
                foreach (Data data in advises)
                {
                    if (data is Advise && (data as Advise).TitleId == titleId)
                    {
                        Advise advices      = (Advise)data;
                        var    evaluations  = advices.Evaluations.ToList();
                        int    likecount    = evaluations.Where(i => i.EvaluationType == EvaluationType.Like).Count();
                        int    dislikecount = evaluations.Where(i => i.EvaluationType == EvaluationType.Dislike).Count();

                        EvaluationType currentUserEvaluationForAdvise = EvaluationType.NoEvaluation;
                        bool           isComplainted = false;
                        if (!string.IsNullOrEmpty(currentUserId))
                        {
                            var evaluation = evaluations.Where(e => e.ApplicationUserId == currentUserId && e.EvaluationType != EvaluationType.Complaint).FirstOrDefault();
                            if (evaluation != null)
                            {
                                currentUserEvaluationForAdvise = evaluation.EvaluationType;
                            }
                            var complaint = evaluations.Where(e => e.ApplicationUserId == currentUserId && e.EvaluationType == EvaluationType.Complaint).FirstOrDefault();
                            if (complaint != null)
                            {
                                isComplainted = true;
                            }
                        }

                        list.Add(new ListAdviseViewModelWeb {
                            Id = advices.Id, Description = advices.Descripton, CreatedDate = advices.CreatedDate, LikeCount = likecount, DisLikeCount = dislikecount, UserName = advices.ApplicationUser.UserName, UserImage = advices.ApplicationUser.Image, UserId = advices.ApplicationUserId, isEvaluated = currentUserEvaluationForAdvise, isComplainted = isComplainted
                        });
                    }
                }
            }
            int pageSize   = 10;
            int pageNumber = (page ?? 1);

            return(list.ToPagedList(pageNumber, pageSize));
        }