Exemple #1
0
        /// <summary>
        /// Get user using user id
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public Ws_User GetUserById(int id)
        {
            Ws_User currentUser = new Ws_User();

            try
            {
                using (var db = new Ws_DataContext())
                {
                    currentUser = db.Ws_User.FirstOrDefault(x => x.UserID == id);
                }
            }
            catch (Exception)
            {
                //throw;
            }

            return(currentUser);
        }
Exemple #2
0
        public int CountDonatedUserOfEvent(int eventId)
        {
            var numUser = 0;

            try
            {
                using (var db = new Ws_DataContext())
                {
                    numUser = db.Donations.Where(x => x.EventId == eventId).Select(x => x.UserId).Distinct().Count();
                }
            }
            catch (Exception)
            {
                //throw;
            }

            return(numUser);
        }
Exemple #3
0
        /// <summary>
        /// get user infomation using user id
        /// </summary>
        /// <param name="userId"></param>
        /// <returns></returns>
        public User_Information GetUserInformation(int userId)
        {
            User_Information currentUserInfo = new User_Information();

            try
            {
                using (var db = new Ws_DataContext())
                {
                    currentUserInfo = db.User_Information.FirstOrDefault(x => x.UserID == userId);
                }
            }
            catch (Exception)
            {
                //throw;
            }

            return(currentUserInfo);
        }
Exemple #4
0
        public EventType GetEventTypeById(int id)
        {
            EventType type = new EventType();

            try
            {
                using (var db = new Ws_DataContext())
                {
                    type = db.EventTypes.FirstOrDefault(x => x.EventTypeID == id);
                }
            }
            catch (Exception)
            {
                //throw;
            }

            return(type);
        }
Exemple #5
0
        public decimal GetTotalRaisedMoneyOfEvent(int eventId)
        {
            decimal raisedMoney = 0;

            try
            {
                using (var db = new Ws_DataContext())
                {
                    raisedMoney = db.Donations.Where(x => x.EventId == eventId).Select(x => x.DonatedMoney).Sum();
                }
            }
            catch (Exception)
            {
                raisedMoney = 0;
            }

            return(raisedMoney);
        }
Exemple #6
0
        /// <summary>
        /// Count number of event that using *similarly* event Type
        /// </summary>
        /// <param name="eventTypeId"></param>
        /// <returns></returns>
        public int CountNumberEventRelateAnEventType(int eventTypeId)
        {
            int numberEventRelated = 0;

            try
            {
                using (var db = new Ws_DataContext())
                {
                    numberEventRelated = db.Events.Where(x => x.EventType == eventTypeId).Select(x => x.EventID).Count();
                }
            }
            catch (Exception)
            {
                //throw;
            }

            return(numberEventRelated);
        }
Exemple #7
0
        public List <EventTypeDTO> GetEventsType()
        {
            List <EventTypeDTO> eventType = new List <EventTypeDTO>();

            using (var db = new Ws_DataContext())
            {
                var list = (from p in db.EventTypes
                            select new { p.EventTypeID, p.EventTypeName }
                            ).ToList();
                foreach (var item in list)
                {
                    EventTypeDTO type = new EventTypeDTO();
                    type.EventTypeID   = item.EventTypeID;
                    type.EventTypeName = item.EventTypeName;
                    eventType.Add(type);
                }
            }
            return(eventType);
        }
Exemple #8
0
        /// <summary>
        /// Get total money which user has donated.
        /// </summary>
        /// <param name="userId"></param>
        /// <returns>decimal</returns>
        public decimal GetTotalMoneyDonatedInByUsingUserId(int userId)
        {
            decimal totalMoney = 0;

            try
            {
                using (var db = new Ws_DataContext())
                {
                    totalMoney = db.Donations.Where(x => x.UserId == userId).Select(x => x.DonatedMoney).Sum();
                }
            }
            catch (Exception)
            {
                return(0);
                //throw;
            }

            return(totalMoney);
        }
Exemple #9
0
 public bool DeleteSubComment(int SubCommentId, string UserName)
 {
     using (var db = new Ws_DataContext())
     {
         var currentComment = (from p in db.SubCommentThread
                               where p.SubCommentThreadId == SubCommentId && p.Ws_User.UserName.Equals(UserName)
                               select p).FirstOrDefault();
         if (currentComment != null)
         {
             db.SubCommentThread.Remove(currentComment);
             db.SaveChanges();
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Exemple #10
0
        /// <summary>
        /// Get all image of an Thread
        /// </summary>
        /// <param name="threadId"></param>
        /// <returns></returns>
        public List <String> GetAllImageThreadById(int threadId)
        {
            List <ThreadAlbumImage> threadImagesList;
            List <String>           threadImagesUrlList = new List <string>();

            using (var db = new Ws_DataContext())
            {
                var imageList = db.ThreadAlbum.Where(x => x.ThreadId == threadId);
                threadImagesList = imageList.ToList();
            }

            foreach (ThreadAlbumImage threadImage in threadImagesList)
            {
                String url = threadImage.ImageUrl;
                threadImagesUrlList.Add(url);
            }

            return(threadImagesUrlList);
        }
Exemple #11
0
        public int CountNewReportedTime(int isReportedId, string reportType)
        {
            var times = 0;

            try
            {
                using (var db = new Ws_DataContext())
                {
                    times = db.Reports.Count(x => x.ReportTo == isReportedId && x.Type == reportType && x.Status == true);
                }
            }
            catch (Exception)
            {
                return(0);
                //throw;
            }

            return(times);
        }
Exemple #12
0
        public bool ChangelikeState(int ThreadId, string UserName)
        {
            try
            {
                int CurrenUser = 0;
                using (var db = new UserDAL())
                {
                    CurrenUser = db.GetUserByUserNameOrEmail(UserName).UserID;
                }
                using (var db = new Ws_DataContext())
                {
                    //Check current like status.
                    LikeThreads current = (
                        from p in db.LikeThreads
                        where p.ThreadId == ThreadId && p.UserId == CurrenUser
                        select p
                        ).SingleOrDefault();
                    if (current != null)
                    {
                        if (current.Status == true)
                        {
                            current.Status = false;
                        }
                        else
                        {
                            current.Status = true;
                        }
                        db.SaveChanges();
                    }
                    else
                    {
                        db.LikeThreads.Add(new LikeThreads()
                        {
                            ThreadId = ThreadId, UserId = CurrenUser, Status = true
                        });
                        db.SaveChanges();
                    }

                    return(true);
                }
            }
            catch (Exception) { return(false); }
        }
Exemple #13
0
        public List <BasicCommentThread> GetAllSubCommentInThread()
        {
            List <BasicCommentThread> list = new List <BasicCommentThread>();

            using (var db = new Ws_DataContext())
            {
                try
                {
                    var listComment = db.SubCommentThread
                                      .Where(x => x.Status == true)
                                      .Select(x => new { x.UserId, x.Ws_User.UserName, x.Ws_User.User_Information.ProfileImage, x.CommentThreadId, x.Content, x.CommentDate })
                                      .OrderByDescending(x => x.CommentDate).ToList();
                    foreach (var item in listComment)
                    {
                        BasicCommentThread bs = new BasicCommentThread();
                        bs.UserCommentedId   = item.UserId;
                        bs.UserCommentedName = item.UserName;
                        bs.UserImageProfile  = item.ProfileImage;
                        bs.CommentId         = item.CommentThreadId;
                        bs.Content           = item.Content;
                        if (DateTime.Now.Subtract(item.CommentDate).TotalHours <= 24 && DateTime.Now.Subtract(item.CommentDate).TotalHours >= 1)
                        {
                            bs.CommentedTime = Math.Round(DateTime.Now.Subtract(item.CommentDate).TotalHours, 0) + " Tiếng cách đây";
                        }
                        else if (DateTime.Now.Subtract(item.CommentDate).Hours > 24)
                        {
                            bs.CommentedTime = item.CommentDate.ToString("H:mm:ss dd/MM/yy");
                        }
                        else if (DateTime.Now.Subtract(item.CommentDate).Minutes == 0)
                        {
                            bs.CommentedTime = "Vừa xong";
                        }
                        else
                        {
                            bs.CommentedTime = DateTime.Now.Subtract(item.CommentDate).Minutes + " Phút cách đây";
                        }
                        list.Add(bs);
                    }
                }
                catch (Exception) { return(null); }
            }
            return(list);
        }
Exemple #14
0
        /// <summary>
        /// Get Number event which user donate in
        /// </summary>
        /// <param name="userId"></param>
        /// <returns>int</returns>
        public int GetNumberEventDonatedInByUsingUserId(int userId)
        {
            int numberEvent = 0;

            try
            {
                using (var db = new Ws_DataContext())
                {
                    numberEvent = db.Donations.Where(x => x.UserId == userId).Select(x => x.EventId).Distinct().Count();
                }
            }
            catch (Exception)
            {
                return(0);
                //throw;
            }

            return(numberEvent);
        }
Exemple #15
0
        public bool DeleteComment(int CommentId, string UserName)
        {
            using (var db = new Ws_DataContext())
            {
                var currentComment = (from p in db.CommentThreads
                                      where p.CommentThreadId == CommentId && p.Ws_User.UserName.Equals(UserName)
                                      select p).FirstOrDefault();
                if (currentComment != null)
                {
                    var subCommentInComment = (from p in db.SubCommentThread
                                               where p.CommentThreadId == currentComment.CommentThreadId
                                               select p).ToList();
                    if (subCommentInComment != null)
                    {
                        foreach (var item in subCommentInComment)
                        {
                            //Delete All SubComment First
                            db.SubCommentThread.Remove(item);
                        }
                    }
                    var LikeInComment = (from p in db.LikeCommentThreads
                                         where p.CommentId == CommentId
                                         select p).ToList();
                    if (LikeInComment != null)
                    {
                        foreach (var item in LikeInComment)
                        {
                            //Delete All SubComment First
                            db.LikeCommentThreads.Remove(item);
                        }
                    }

                    db.CommentThreads.Remove(currentComment);
                    db.SaveChanges();
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
        }
        public Organization CreatEmptyOrganization()
        {
            using (var db = new Ws_DataContext())
            {
                var org = db.Organizations.Create();

                org.OrganizationName  = "";
                org.EOrganizationName = "";
                org.Introduction      = "";
                org.LogoUrl           = "";
                org.Phone             = "";
                org.Email             = "";
                org.Address           = "";
                org.IsActive          = false;
                org.IsVerify          = false;
                org.Point             = 0;

                return(org);
            }
        }
Exemple #17
0
        public List <int> GetAllCommentIdAndSubCommentId()
        {
            List <int> list = new List <int>();

            using (var db = new Ws_DataContext())
            {
                try
                {
                    var listComment = db.SubCommentThread
                                      .Where(x => x.Status == true)
                                      .Select(x => new { x.CommentThreadId });
                    foreach (var item in listComment)
                    {
                        list.Add(item.CommentThreadId);
                    }
                }
                catch (Exception) { return(null); }
            }
            return(list);
        }
Exemple #18
0
 public Event CreateEmptyEvent()
 {
     using (var db = new Ws_DataContext())
     {
         var eventInfo = db.Events.Create();
         eventInfo.CreatorID    = 0;
         eventInfo.EventType    = 0;
         eventInfo.EventName    = "";
         eventInfo.Location     = "";
         eventInfo.Contact      = "";
         eventInfo.Description  = "";
         eventInfo.TotalPoint   = 0;
         eventInfo.VideoUrl     = "";
         eventInfo.Created_Date = DateTime.Now;
         eventInfo.Updated_Date = DateTime.Now;
         eventInfo.Status       = true;
         eventInfo.IsOpen       = true;
         return(eventInfo);
     }
 }
Exemple #19
0
        //Get user information (Profile page)
        public UserBasicInfoDTO GetUserInfoUsingUserNameOrEmail(string userNameOrEmail)
        {
            UserBasicInfoDTO userBasic = new UserBasicInfoDTO();

            try
            {
                Ws_User user;
                using (var db = new Ws_DataContext())
                {
                    user = db.Ws_User.FirstOrDefault(x => x.UserName == userNameOrEmail || x.Email == userNameOrEmail);
                }

                userBasic = GetFullInforOfUserAsBasicUser(user.UserID);
            }
            catch (Exception)
            {
                //throw;
            }

            return(userBasic);
        }
        /// <summary>
        /// get all organization wait for accept
        /// </summary>
        /// <returns></returns>
        public List <OrganizationBasicInfo> GetAllOrganizationWaitForAcception()
        {
            List <OrganizationBasicInfo> orgList = new List <OrganizationBasicInfo>();

            try
            {
                List <int> orgIdList;
                using (var db = new Ws_DataContext())
                {
                    orgIdList = db.Organizations.Where(x => x.IsVerify == false).Select(x => x.OrganizationId).ToList();
                }

                orgList.AddRange(orgIdList.Select(GetFullOrganizationBasicInformation));
            }
            catch (Exception)
            {
                //throw;
            }

            return(orgList);
        }
Exemple #21
0
        /// <summary>
        /// Get top user who create most thread
        /// </summary>
        /// <param name="top"></param>
        /// <returns></returns>
        public List <UserBasicInfoDTO> GetTopNumberThreadCreator(int top)
        {
            List <UserBasicInfoDTO> topThreadCreator = new List <UserBasicInfoDTO>();

            try
            {
                List <UserBasicInfoDTO> listUser = new List <UserBasicInfoDTO>();


                // lay ra nhung userid co trong bang Thread
                List <int> listUserIdInDonation;

                using (var db = new Ws_DataContext())
                {
                    var listUserId = db.Threads.Select(x => x.UserId).Distinct();
                    listUserIdInDonation = listUserId.ToList();
                }

                // Lay thong tin cua nhung user ma co id trong Donation
                foreach (int userId in listUserIdInDonation)
                {
                    UserBasicInfoDTO userBasic;

                    using (var db = new UserDAL())
                    {
                        userBasic = db.GetFullInforOfUserAsBasicUser(userId);
                    }

                    listUser.Add(userBasic);
                }

                // Lay top 10 user donate nhieu nhat
                topThreadCreator = listUser.OrderByDescending(x => x.NumberOfPost).Take(top).ToList();
            }
            catch (Exception)
            {
                //throw;
            }
            return(topThreadCreator);
        }
Exemple #22
0
        public List <ListDonatorDTO> GetDonatorInEvent(int eventId)
        {
            List <ListDonatorDTO> newList = new List <ListDonatorDTO>();

            using (var db = new Ws_DataContext())
            {
                var donatorList = (from p in db.Donations
                                   where p.EventId == eventId && p.IsPublic == true
                                   select new { p.UserId, p.Ws_User.User_Information.FullName, p.DonatedDate, p.DonatedMoney, p.Content }).ToList();
                foreach (var item in donatorList)
                {
                    ListDonatorDTO getDonator = new ListDonatorDTO();
                    getDonator.UserId       = item.UserId;
                    getDonator.FullName     = item.FullName;
                    getDonator.DonatedMoney = item.DonatedMoney;
                    getDonator.DonatedDate  = item.DonatedDate.ToString("H:mm:ss dd/MM/yy");
                    getDonator.Content      = item.Content;
                    newList.Add(getDonator);
                }
                return(newList);
            }
        }
Exemple #23
0
        public EventTypeDropList GetEventType()
        {
            EventTypeDropList eventType = new EventTypeDropList();

            using (var db = new Ws_DataContext())
            {
                var eventtypeList = db.EventTypes.ToList();
                foreach (var eventtype in eventtypeList)
                {
                    eventType.EventTypeList.Add(new SelectListItem
                    {
                        Text  = eventtype.EventTypeName,
                        Value = eventtype.EventTypeID.ToString()
                    });
                }
                if (eventType.EventTypeList.Count > 0)
                {
                    eventType.Selected = 1;
                }
                return(eventType);
            }
        }
Exemple #24
0
        public void AddNewEventTimeLine(CreateEventSchedule eventInfo, int eventId)
        {
            var newEventSchedule = CreateEmptyEventTimeLine();

            newEventSchedule.EventId = eventId;
            newEventSchedule.Content = eventInfo.Description;
            //newEventSchedule.FromDate =  DateTime.ParseExact(eventInfo.FromDate, "yyyy-MM-dd HH:mm:ss,fff",System.Globalization.CultureInfo.InvariantCulture);
            //newEventSchedule.ToDate = DateTime.ParseExact(eventInfo.ToDate, "yyyy-MM-dd HH:mm:ss,fff",System.Globalization.CultureInfo.InvariantCulture);
            if (eventInfo.FromDate != "")
            {
                newEventSchedule.FromDate = DateTime.Parse(eventInfo.FromDate);
            }
            if (eventInfo.ToDate != "")
            {
                newEventSchedule.ToDate = DateTime.Parse(eventInfo.ToDate);
            }
            using (var db = new Ws_DataContext())
            {
                db.ETimeLine.Add(newEventSchedule);
                db.SaveChanges();
            }
        }
Exemple #25
0
        public Thread AddNewThread(CreateThreadInfo thread, string UserName)
        {
            int CurrenUser = 0;

            using (var db = new UserDAL())
            {
                CurrenUser = db.GetUserByUserNameOrEmail(UserName).UserID;
            }
            var newThread = CreateEmptyThread();

            newThread.UserId           = CurrenUser;
            newThread.Title            = thread.Title;
            newThread.Etitle           = ConvertToUnSign.Convert(thread.Title);
            newThread.Content          = thread.Content;
            newThread.ShortDescription = thread.ShortDescription;
            using (var db = new Ws_DataContext())
            {
                db.Threads.Add(newThread);
                db.SaveChanges();
                return(GetThreadById(newThread.ThreadId));
            }
        }
Exemple #26
0
        public bool CheckUserIsLikedOrNot(int ThreadId, string UserName)
        {
            int CurrenUser = 0;

            using (var db = new UserDAL())
            {
                CurrenUser = db.GetUserByUserNameOrEmail(UserName).UserID;
            }
            using (var db = new Ws_DataContext())
            {
                var isLike = (from p in db.LikeThreads
                              where p.ThreadId == ThreadId && p.UserId == CurrenUser && p.Status == true
                              select p).SingleOrDefault();
                if (isLike != null)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
        }
Exemple #27
0
        /// <summary>
        /// Get information of thread as a thread basic
        /// </summary>
        /// <param name="threadId"></param>
        /// <returns></returns>
        public ThreadBasicInfo GetFullThreadBasicInformation(int threadId)
        {
            ThreadBasicInfo currentThread = new ThreadBasicInfo();

            try
            {
                Thread  thread;
                Ws_User user;
                using (var db = new Ws_DataContext())
                {
                    thread = db.Threads.FirstOrDefault(x => x.ThreadId == threadId);
                }

                using (var db = new Ws_DataContext())
                {
                    user = db.Ws_User.FirstOrDefault(x => x.UserID == thread.UserId);
                }

                currentThread.ThreadID         = thread.ThreadId;
                currentThread.UserID           = thread.UserId;
                currentThread.Creator          = user.UserName;
                currentThread.ThreadName       = thread.Title;
                currentThread.ImageUrl         = GetAllImageThreadById(thread.ThreadId);
                currentThread.ShortDescription = thread.ShortDescription;
                currentThread.Content          = thread.Content;
                currentThread.Likes            = CountLikeInThread(thread.ThreadId);
                currentThread.Comments         = CountCommentInThread(thread.ThreadId);
                currentThread.Status           = thread.Status;
                currentThread.CreatedDate      = thread.CreatedDate.ToString("H:mm:ss dd/MM/yy");
            }
            catch (Exception)
            {
                //throw;
            }

            return(currentThread);
        }
        /// <summary>
        /// Delete orgaization with id
        /// </summary>
        /// <param name="orgId"></param>
        /// <returns></returns>
        public bool DeleteOrganization(int orgId)
        {
            try
            {
                using (var db = new Ws_DataContext())
                {
                    Organization organization = db.Organizations.FirstOrDefault(x => x.OrganizationId == orgId);

                    if (organization != null)
                    {
                        db.Organizations.Remove(organization);
                        db.SaveChanges();
                        return(true);
                    }

                    return(false);
                }
            }
            catch (Exception)
            {
                return(false);
                //throw;
            }
        }
Exemple #29
0
        /// <summary>
        /// Get top recently donted user
        /// </summary>
        /// <param name="top"></param>
        /// <returns></returns>
        public List <DonationDTO> GetTopRecentlyDonator(int top)
        {
            List <DonationDTO> recentDonation = new List <DonationDTO>();

            try
            {
                List <int> donationIdList;
                using (var db = new Ws_DataContext())
                {
                    donationIdList = db.Donations.OrderByDescending(x => x.DonatedDate).Select(x => x.DonationId).Take(top).ToList();
                }

                foreach (var donationId in donationIdList)
                {
                    DonationDTO donation = GetFullInformationOfDonation(donationId);
                    recentDonation.Add(donation);
                }
            }
            catch (Exception)
            {
                //throw;
            }
            return(recentDonation);
        }
        /// <summary>
        /// Get organization have been create less than 30 day
        /// </summary>
        /// <returns></returns>
        public List <OrganizationBasicInfo> GetNewestCreatedOrgzation()
        {
            List <OrganizationBasicInfo> newestOrg = new List <OrganizationBasicInfo>();

            try
            {
                List <int> orgIdList;
                using (var db = new Ws_DataContext())
                {
                    DateTime dateBeforeThrityDay = DateTime.UtcNow.AddDays(-30);
                    orgIdList = db.Organizations.OrderByDescending(x => x.CreatedDate).Where(x => x.CreatedDate >= dateBeforeThrityDay).Select(x => x.OrganizationId).ToList();
                    foreach (int orgId in orgIdList)
                    {
                        OrganizationBasicInfo organization = GetFullOrganizationBasicInformation(orgId);
                        newestOrg.Add(organization);
                    }
                }
            }
            catch (Exception)
            {
                //throw;
            }
            return(newestOrg);
        }