Ejemplo n.º 1
0
        public List <StaffTakeCare> showListStudentNeedTakeCare()
        {
            List <StaffTakeCare> list = new List <StaffTakeCare>();
            StaffTakeCare        st   = null;
            SqlConnection        con  = DbConnect.GetConnection();

            con.Open();
            string sql = "  SELECT TOP 10 Student.studentID,Account.staffName ,Rank.rankName "
                         + "FROM Student"
                         + "  LEFT JOIN Account"
                         + "  ON Account.accountID = Student.accountID"
                         + "  LEFT JOIN Rank ON Student.studentID = Rank.studentID"
                         + "  Where  takecareStatus = 0 AND caution = 0 ORDER BY rankName DESC";
            SqlCommand    cmd = new SqlCommand(sql, con);
            SqlDataReader dr  = cmd.ExecuteReader();

            while (dr.Read())

            {
                st           = new StaffTakeCare();
                st.studentID = dr["studentID"].ToString();
                list.Add(st);
            }
            return(list);
        }
Ejemplo n.º 2
0
        public List <StaffTakeCare> showListTable()
        {
            List <StaffTakeCare> list = new List <StaffTakeCare>();
            StaffTakeCare        st   = null;
            SqlConnection        con  = DbConnect.GetConnection();

            con.Open();
            string        sql = "select studentID from Student";
            SqlCommand    cmd = new SqlCommand(sql, con);
            SqlDataReader dr  = cmd.ExecuteReader();

            while (dr.Read())

            {
                st           = new StaffTakeCare();
                st.studentID = dr["studentID"].ToString();
                list.Add(st);
            }
            return(list);
        }
Ejemplo n.º 3
0
        public DataTable myStudentForHead()
        {
            DataTable dt = new DataTable();

            dt.Columns.Add("Mssv");
            dt.Columns.Add("Tên");
            dt.Columns.Add("GPA");
            dt.Columns.Add("Hành vi");
            dt.Columns.Add("Điểm danh");
            dt.Columns.Add("Môn nợ");
            dt.Columns.Add("Xếp loại");
            ServiceReference1.WebService1SoapClient ws  = new ServiceReference1.WebService1SoapClient();
            ServiceReference2.SAPISoapClient        fap = new ServiceReference2.SAPISoapClient();
            StaffTakeCare stc = null;
            RankDAL       rdl = new RankDAL();
            SqlConnection con = DbConnect.GetConnection();

            con.Open();
            string        sql = "SELECT TOP 10 Student.studentID,Student.studentName FROM Student LEFT JOIN Rank ON Student.studentID=Rank.studentID WHERE takecareStatus=0  AND caution=0 ORDER BY rankName DESC";
            SqlCommand    cmd = new SqlCommand(sql, con);
            SqlDataReader dr  = cmd.ExecuteReader();

            this.compareForHead = new List <Compare>();
            while (dr.Read())
            {
                Compare xx = null;
                stc             = new StaffTakeCare();
                stc.studentID   = dr["studentID"].ToString();
                stc.studentName = dr["studentName"].ToString();


                string currentSemester = "Spring2018";
                //FreedomeF.ServiceReference1.Failcourse[] flist = ws.getFailcourse(r.studentID, ws.getCurrentSemester(r.studentID));
                List <Curricurlum> listFail = new List <Curricurlum>();
                string             fail     = fap.getFailCourse(stc.studentID);
                string             pass     = fap.getPassCourse(stc.studentID);
                List <Curricurlum> listPass = new List <Curricurlum>();
                listPass = JsonConvert.DeserializeObject <List <Curricurlum> >(pass);
                listFail = JsonConvert.DeserializeObject <List <Curricurlum> >(fail);


                List <Gpa> gpaList = new List <Gpa>();
                string     t2      = fap.getGPA(stc.studentID, currentSemester);
                gpaList = JsonConvert.DeserializeObject <List <Gpa> >(t2);
                int    totalCredit = 0;
                double avg         = 0;

                for (int j = 0; j < gpaList.Count; j++)
                {
                    double temp = 0;
                    if (gpaList[j].averageMark != null)
                    {
                        temp = gpaList[j].credits * (double)gpaList[j].averageMark;
                    }
                    if (temp > 0)
                    {
                        totalCredit += gpaList[j].credits;
                        avg         += temp;
                    }
                }

                double gpa        = Math.Round(((double)avg) / ((double)totalCredit), 2);
                int    failcourse = listFail.Count;

                double behavior = ws.getBehaviorMark(stc.studentID, currentSemester).behaviorMark;

                List <Curricurlum> attenList = new List <Curricurlum>();
                string             t         = fap.getAttendanceMark(stc.studentID, currentSemester);
                attenList = JsonConvert.DeserializeObject <List <Curricurlum> >(t);

                int totalAbsent = 0;
                for (int i = 0; i < attenList.Count; i++)
                {
                    totalAbsent += attenList[i].absentTotal;
                }


                double atten = Math.Round(((double)(attenList.Count * 30) - totalAbsent) / ((double)attenList.Count * 30), 2) * 10;
                var    ds    = dt.NewRow();
                ds["Mssv"]      = stc.studentID;
                ds["Tên"]       = stc.studentName;
                ds["GPA"]       = gpa;
                ds["Hành vi"]   = behavior;
                ds["Điểm danh"] = atten;
                ds["Môn nợ"]    = failcourse;

                Rank rk = new Rank();


                rk             = rdl.loadRank(stc.studentID, currentSemester);
                ds["Xếp loại"] = rk.rank;
                //}
                dt.Rows.Add(ds);



                // compare previous semerter
                List <Gpa> gpaList2 = new List <Gpa>();
                string     getGpa2  = fap.getGPA(stc.studentID, previousTerm(currentSemester));
                gpaList2 = JsonConvert.DeserializeObject <List <Gpa> >(getGpa2);
                int    totalCredit2 = 0;
                double avg2         = 0;

                for (int k = 0; k < gpaList2.Count; k++)
                {
                    double temp2 = 0;
                    if (gpaList2[k].averageMark != null)
                    {
                        temp2 = gpaList2[k].credits * (double)gpaList2[k].averageMark;
                    }
                    if (temp2 > 0)
                    {
                        totalCredit2 += gpaList2[k].credits;
                        avg2         += temp2;
                    }
                }

                double gpa2      = ((double)avg2) / ((double)totalCredit2);
                double behavior2 = ws.getBehaviorMark(stc.studentID.ToString(), previousTerm(currentSemester)).behaviorMark;

                List <Curricurlum> attenList2 = new List <Curricurlum>();
                string             attent2    = fap.getAttendanceMark(stc.studentID, previousTerm(currentSemester));
                attenList2 = JsonConvert.DeserializeObject <List <Curricurlum> >(attent2);

                int totalAbsent2 = 0;
                for (int f = 0; f < attenList2.Count; f++)
                {
                    totalAbsent2 += attenList2[f].absentTotal;
                }

                double atten2 = (((double)(attenList2.Count * 30) - totalAbsent2) / ((double)attenList2.Count * 30)) * 10;
                xx             = new Compare();
                xx.gpa         = gpa;
                xx.gpa2        = gpa2;
                xx.behavior    = behavior;
                xx.behavior2   = behavior2;
                xx.atten       = atten;
                xx.atten2      = atten2;
                xx.failcourse  = failcourse;
                xx.failcourse2 = failcourse;
                this.compareForHead.Add(xx);
            }
            return(dt);
        }
Ejemplo n.º 4
0
        public DataTable todayReportForHead(DateTime date)
        {
            //DateTime today = DateTime.Today;

            DateTime  today = DateTime.ParseExact("10/06/2018", "dd/MM/yyyy", CultureInfo.InvariantCulture); //Convert.ToDateTime("10/06/2018");
            DataTable dt    = new DataTable();

            dt.Columns.Add("Mssv");
            dt.Columns.Add("Tên");
            dt.Columns.Add("Vắng mặt ngày " + "" + date.ToString("dd/MM"));
            dt.Columns.Add("Báo cáo vắng mặt tuần này");
            dt.Columns.Add("Trạng thái");
            dt.Columns.Add("Nhận xét");
            dt.Columns.Add("Giảng viên");
            dt.Columns.Add("Xếp loại");
            ServiceReference2.SAPISoapClient fap = new ServiceReference2.SAPISoapClient();

            StaffTakeCare stc = null;
            SqlConnection con = DbConnect.GetConnection();

            con.Open();
            string     sql = "   SELECT TOP 10 Student.studentID ,Student.studentName,Rank.rankName FROM Student LEFT JOIN Rank ON Student.studentID=Rank.studentID WHERE takecareStatus=0  AND caution=0 ORDER BY rankName DESC";
            SqlCommand cmd = new SqlCommand(sql, con);

            SqlDataReader dr = cmd.ExecuteReader();
            Rank          r  = null;

            while (dr.Read())
            {
                r               = new Rank();
                stc             = new StaffTakeCare();
                stc.studentID   = dr["studentID"].ToString();
                stc.studentName = dr["studentName"].ToString();
                r.rank          = dr["rankName"].ToString();
                List <StudentProfile> profile = new List <StudentProfile>();

                string info = fap.GetStudentById(stc.studentID);

                profile = JsonConvert.DeserializeObject <List <StudentProfile> >(info);
                var ds = dt.NewRow();
                ds["Mssv"] = stc.studentID;
                ds["Tên"]  = stc.studentName;
                List <Report> dayRp  = new List <Report>();
                List <Report> weekRp = new List <Report>();
                string        day    = fap.getInfoToday(stc.studentID, DateTime.ParseExact(date.ToString("dd/MM/yyyy"), "dd/MM/yyyy", null));
                string        week   = fap.getWeeklyReport(stc.studentID, date.AddDays(-7), date);
                if (day.ToLower().Equals("data not found") && !week.ToLower().Equals("data not found"))
                {
                    weekRp = JsonConvert.DeserializeObject <List <Report> >(week);
                    string temp = "";
                    for (int k = 0; k < weekRp.Count; k++)
                    {
                        temp += weekRp[k].subjectCode.ToString() + " " + " Slot " + weekRp[k].slot.ToString() + " " + "Ngày " + weekRp[k].date.ToString("dd/MM") + "</br>";
                    }
                    ds["Báo cáo vắng mặt tuần này"] = temp;
                    ds["Trạng thái"] = profile[0].statusCode;
                    ds["Xếp loại"]   = r.rank;
                    dt.Rows.Add(ds);
                    continue;
                }
                else if (!day.ToLower().Equals("data not found") && week.ToLower().Equals("data not found"))
                {
                    dayRp = JsonConvert.DeserializeObject <List <Report> >(day);
                    for (int j = 0; j < dayRp.Count; j++)
                    {
                        ds["Vắng mặt ngày " + "" + date.ToString("dd/MM")] += " " + dayRp[j].subjectCode.ToString() + " Slot " + dayRp[j].slot.ToString() + "</br>";
                        ds["Nhận xét"]   += dayRp[j].comment.ToString() + "<br/>";
                        ds["Giảng viên"] += " " + dayRp[j].lecturer + "</br>";
                        ds["Trạng thái"]  = profile[0].statusCode;
                        ds["Xếp loại"]    = r.rank;
                    }
                    dt.Rows.Add(ds);
                    continue;
                }
                else if (day.ToLower().Equals("data not found") && week.ToLower().Equals("data not found"))
                {
                    ds["Trạng thái"] = profile[0].statusCode;
                    ds["Xếp loại"]   = r.rank;
                    dt.Rows.Add(ds);
                    continue;
                }
                dayRp  = JsonConvert.DeserializeObject <List <Report> >(day);
                weekRp = JsonConvert.DeserializeObject <List <Report> >(week);
                for (int j = 0; j < dayRp.Count; j++)
                {
                    ds["Vắng mặt ngày " + "" + date.ToString("dd/MM")] += " " + dayRp[j].subjectCode.ToString() + " Slot " + dayRp[j].slot.ToString() + "</br>";
                    ds["Nhận xét"]   += dayRp[j].comment.ToString() + "<br/>";
                    ds["Giảng viên"] += " " + dayRp[j].lecturer + "</br>";
                }


                for (int k = 0; k < weekRp.Count; k++)
                {
                    ds["Báo cáo vắng mặt tuần này"] += weekRp[k].subjectCode.ToString() + " " + " Slot " + weekRp[k].slot.ToString() + " " + "Ngày " + weekRp[k].date.ToString("dd/MM") + "</br>";
                }



                ds["Trạng thái"] = profile[0].statusCode;

                ds["Xếp loại"] = r.rank;

                dt.Rows.Add(ds);
            }
            return(dt);
        }