コード例 #1
0
ファイル: DataAccess.cs プロジェクト: minhdn2/COMP-1640
        public int CountIdeasByTopic(int tpId)
        {
            var query = string.Format("SELECT TotalCount = count(*) FROM Idea WHERE t_ID = {0}", tpId);
            var conn  = Connect();
            var tp    = new TopicUI();

            try
            {
                conn.Open();
                var cmd    = new SqlCommand(query, conn);
                var reader = cmd.ExecuteReader();



                while (reader.Read())
                {
                    tp.TotalIdeas = int.Parse(reader["TotalCount"].ToString());
                }

                conn.Close();
                return(tp.TotalIdeas);
            }
            catch (Exception ex)
            {
                conn.Close();
                return(-1);
            }
        }
コード例 #2
0
ファイル: TopicMng.aspx.cs プロジェクト: minhdn2/COMP-1640
        public static TopicEntity LoadData(int currentPage, int pagesize)
        {
            var db          = new DataAccess();
            var topicEntity = new TopicEntity();

            var lstTopics = db.GetAllTopics();

            lstTopics.Reverse();

            var lstTopicUi = new List <TopicUI>();

            foreach (var x in lstTopics)
            {
                var tp = new TopicUI();
                tp.Id               = x.Id;
                tp.Name             = x.Name;
                tp.Details          = x.Details.Replace("\"", "'").Replace(Environment.NewLine, " ");
                tp.PostedDate       = x.PostedDate.ToString();
                tp.ClosureDate      = x.ClosureDate.ToString();
                tp.FinalClosureDate = x.FinalClosureDate.ToString();

                lstTopicUi.Add(tp);
            }

            var total = lstTopics.Count;
            int totalPage;

            if (total > pagesize && total % pagesize == 0)
            {
                totalPage = total / pagesize;
            }
            else if (total > pagesize && total % pagesize != 0)
            {
                totalPage = total / pagesize + 1;
            }
            else
            {
                totalPage = 1;
            }

            topicEntity.ListTopics = lstTopicUi.Skip(currentPage * pagesize).Take(pagesize).ToList();
            topicEntity.TotalPage  = totalPage;

            return(topicEntity);
        }
コード例 #3
0
ファイル: TopicMng.aspx.cs プロジェクト: minhdn2/COMP-1640
        public static object TopicClicked(int id)
        {
            var tp      = new DataAccess().GetTopicById(id);
            var posted  = Convert.ToDateTime(tp.PostedDate);
            var closure = Convert.ToDateTime(tp.ClosureDate);
            var final   = Convert.ToDateTime(tp.FinalClosureDate);
            var tpUi    = new TopicUI
            {
                Id               = tp.Id,
                Name             = tp.Name,
                Details          = tp.Details,
                PostedDate       = posted.ToString("yyyy-MM-dd"),
                ClosureDate      = closure.ToString("yyyy-MM-dd"),
                FinalClosureDate = final.ToString("yyyy-MM-dd")
            };

            return(tpUi);
        }
コード例 #4
0
        public static List <TopicUI> TotalIdeasPerTopic()
        {
            var lstTp  = new List <TopicUI>();
            var topics = new DataAccess().GetAllTopics();

            foreach (var x in topics)
            {
                var tp = new TopicUI();
                tp.Name       = x.Name;
                tp.TotalIdeas = new DataAccess().CountIdeasByTopic(x.Id);
                double totalIdeas = new DataAccess().TotalIdeas();
                double topicIdeas = tp.TotalIdeas;
                tp.Percentages = ((topicIdeas / totalIdeas) * 100).ToString();
                tp.Percentages = tp.Percentages.Length > 5 ? tp.Percentages.Substring(0, 5) : tp.Percentages;
                lstTp.Add(tp);
            }

            return(lstTp);
        }
コード例 #5
0
 public ActionResult Chude()
 {
     ViewData["lstChuDe"] = TopicUI.getDSChuDe();
     return(View());
 }