예제 #1
0
        /// <summary>
        /// 给小组作品评分
        /// </summary>
        /// <param name="Gid"></param>
        /// <param name="Gscore"></param>
        public void UpdateGscore(int Gid, int Gscore, int Cobj, int Cterm)
        {
            string mysql = "update GroupWork set Gcheck=1,Gscore=" + Gscore + " where Gid=" + Gid;

            DbHelperSQL.ExecuteSql(mysql);
            string sqlstr  = "select Gstudents from GroupWork where Gid=" + Gid;
            string findstr = DbHelperSQL.FindString(sqlstr);

            if (findstr != "")
            {
                BLL.Students sbll = new BLL.Students();
                sbll.TotalSgscore(findstr, Cobj, Cterm);//同时给小组成员统计
            }
        }
예제 #2
0
        /// <summary>
        /// 创建教师模拟学生角色制作网页时的ftp空间和账号,每个班级一个
        /// </summary>
        /// <returns></returns>
        public static int TeacherSlftp(string teapwd)
        {
            int initreg = 0;

            if (HttpContext.Current.Request.Cookies[LearnSite.Common.CookieHelp.teaCookieNname] != null)
            {
                int Rhid = Int32.Parse(HttpContext.Current.Request.Cookies[LearnSite.Common.CookieHelp.teaCookieNname].Values["Hid"].ToString());
                LearnSite.BLL.Students stubll = new BLL.Students();
                LearnSite.BLL.Webstudy wbll   = new BLL.Webstudy();
                DataSet ds     = stubll.TeacherSyearSclass(Rhid);
                int     rcount = ds.Tables[0].Rows.Count;
                if (rcount > 0)
                {
                    for (int i = 0; i < rcount; i++)
                    {
                        if (ds.Tables[0].Rows[i]["Syear"].ToString() != "" && ds.Tables[0].Rows[i]["Sclass"].ToString() != "")
                        {
                            string Syear  = ds.Tables[0].Rows[i]["Syear"].ToString();
                            string Sgrade = ds.Tables[0].Rows[i]["Sgrade"].ToString();
                            string Sclass = ds.Tables[0].Rows[i]["Sclass"].ToString();
                            string Snum   = "s" + Rhid + Syear.ToString() + Sgrade.ToString() + Sclass.ToString();
                            string Wurl   = "~/FtpSpace/" + Syear + "/" + Sgrade + "/" + Snum;//2008/1/201211006";
                            if (LearnSite.Ftp.Reg.RegsaveFtp(Snum, teapwd, Syear, Sclass))
                            {
                                initreg++;//注册成功,则计数
                            }
                            else
                            {
                                LearnSite.Ftp.Reg.Updatepwd(Snum, teapwd);//更新为新密码,为了兼容修正
                            }
                            if (wbll.ExistsWnum(Snum))
                            {
                                wbll.UpdateWpwd2(Snum, teapwd);//如果存在,则更新模拟密码
                            }
                            else
                            {
                                wbll.AddSimulation(Snum, teapwd, Wurl);//在webstudy表中增加一个模拟账号
                            }
                            LearnSite.Ftp.Disk.CreateOneDir(Syear, Sclass, Snum);
                        }
                    }
                }
            }
            return(initreg);
        }
예제 #3
0
        /// <summary>
        /// 根据IP返回姓名
        /// </summary>
        /// <param name="dtclass"></param>
        /// <param name="ip"></param>
        /// <returns></returns>
        private static StuMsg GetStuNameByIp(DataTable dtclass, string ip)
        {
            StuMsg mystu  = new StuMsg();
            int    dcount = dtclass.Rows.Count;

            LearnSite.BLL.Students sbll = new BLL.Students();
            for (int i = 0; i < dcount; i++)
            {
                string dtip = dtclass.Rows[i]["Qip"].ToString();
                if (dtip.Equals(ip))
                {
                    mystu.Sname   = dtclass.Rows[i]["Qname"].ToString();
                    mystu.Sleader = bool.Parse(dtclass.Rows[i]["Sleader"].ToString());
                    int sgroup = 0;
                    if (dtclass.Rows[i]["Sgroup"] != null && dtclass.Rows[i]["Sgroup"].ToString() != "")
                    {
                        sgroup = Int32.Parse(dtclass.Rows[i]["Sgroup"].ToString());
                    }
                    mystu.Sgroup = sgroup;
                    if (mystu.Sleader)
                    {
                        mystu.Sgtitle = dtclass.Rows[i]["Sgtitle"].ToString();
                    }
                    else
                    {
                        if (sgroup > 0)
                        {
                            mystu.Sgtitle = sbll.GetSgtitle(sgroup);
                        }
                        else
                        {
                            mystu.Sgtitle = "";
                        }
                    }
                    mystu.isOk = true;
                    break;
                }
            }
            return(mystu);
        }
예제 #4
0
        /// <summary>
        /// 模拟该班级学生登录cookies设置
        /// </summary>
        /// <param name="Sgrade"></param>
        /// <param name="Sclass"></param>
        public static void SimulationStudentCookies(int Sgrade, int Sclass)
        {
            if (HttpContext.Current.Request.Cookies[teaCookieNname] != null)
            {
                string Rhid = HttpContext.Current.Request.Cookies[teaCookieNname].Values["Hid"].ToString();
                LearnSite.BLL.Students   stubll = new BLL.Students();
                LearnSite.Model.Students sModel = new LearnSite.Model.Students();
                string sss = Rhid + Sgrade.ToString() + Sclass.ToString();
                sModel.Sid = 0 - Int32.Parse(sss);
                string Syear = stubll.GetYear(Sgrade);
                sModel.Syear     = Int32.Parse(Syear);
                sModel.Snum      = "s" + Rhid + Syear.ToString() + Sgrade.ToString() + Sclass.ToString();
                sModel.Sgrade    = Sgrade;
                sModel.Sclass    = Sclass;
                sModel.Sname     = "学生" + Sgrade.ToString() + Sclass.ToString();
                sModel.Spwd      = "12345678";
                sModel.Sex       = "男";
                sModel.Sscore    = 100;
                sModel.Squiz     = 50;
                sModel.Sattitude = 25;
                sModel.Sape      = "A";
                sModel.Sgroup    = 0;

                DateTime   LoginTime = DateTime.Now;
                string     LoginIp   = LearnSite.Common.Computer.GetGuestIP();
                string     FtpPwd    = LearnSite.Common.WordProcess.GetMD5_Nbit(Rhid, 18);
                string     ThisTerm  = LearnSite.Common.XmlHelp.GetTerm();
                HttpCookie StuCookie = new HttpCookie(stuCookieNname);

                StuCookie.Values.Add("Sid", sModel.Sid.ToString());
                StuCookie.Values.Add("Snum", UrlEncode(sModel.Snum));
                StuCookie.Values.Add("Syear", sModel.Syear.ToString());
                StuCookie.Values.Add("Sgrade", sModel.Sgrade.ToString());
                StuCookie.Values.Add("Sclass", sModel.Sclass.ToString());
                StuCookie.Values.Add("Sname", UrlEncode(sModel.Sname));
                StuCookie.Values.Add("Spwd", sModel.Spwd.ToString());
                StuCookie.Values.Add("Sex", UrlEncode(sModel.Sex));
                StuCookie.Values.Add("Sscore", sModel.Sscore.ToString());
                StuCookie.Values.Add("Squiz", sModel.Squiz.ToString());
                StuCookie.Values.Add("Sattitude", sModel.Sattitude.ToString());
                StuCookie.Values.Add("Sape", sModel.Sape.ToString());
                StuCookie.Values.Add("Sgroup", sModel.Sgroup.ToString());
                StuCookie.Values.Add("LoginTime", LoginTime.ToString());
                StuCookie.Values.Add("LoginIp", LoginIp);
                StuCookie.Values.Add("Ftppwd", FtpPwd);
                StuCookie.Values.Add("ThisTerm", ThisTerm);
                StuCookie.Values.Add("Rhid", Rhid);
                StuCookie.Values.Add("RankImage", UrlEncode(LearnSite.Common.Rank.RankImage(sModel.Sscore.Value + sModel.Sattitude.Value, true)));
                StuCookie.Values.Add("Ss", Common.WordProcess.GetMD5_8bit(sModel.Snum));

                string str = LearnSite.Common.XmlHelp.GetStudentCookiesPeriod();
                if (str != "0")
                {
                    StuCookie.Expires  = StudentCookiesPeriod(str);
                    StuCookie.Path     = "/";
                    StuCookie.HttpOnly = true;
                }
                HttpContext.Current.Response.AppendCookie(StuCookie);
                LearnSite.Common.App.AppUserAdd(sModel.Snum);
            }
        }
예제 #5
0
        /// <summary>
        /// 使用上传的分班表格,对原来的学生进行重新分班
        /// </summary>
        /// <param name="upexcelpath"></param>
        public static string DivideClass(string filepath)
        {
            DataSet ds  = DivideExcelToDS(filepath);
            string  msg = "";

            if (ds != null)
            {
                int      count        = ds.Tables[0].Rows.Count;
                int      columnscount = ds.Tables[0].Columns.Count;
                int      isright      = 0;
                string[] strColumn    = { "年级", "班级", "姓名" };
                for (int k = 0; k < columnscount; k++)
                {
                    string strname = ds.Tables[0].Columns[k].ColumnName;
                    foreach (string str in strColumn)
                    {
                        if (strname == str)
                        {
                            isright++;
                        }
                    }
                }
                if (isright == strColumn.Length)
                {
                    if (count > 0)
                    {
                        LearnSite.BLL.Students sbll = new BLL.Students();
                        int right       = 0;
                        int formatwrong = 0;
                        for (int i = 0; i < count; i++)
                        {
                            string Sgrade = ds.Tables[0].Rows[i]["年级"].ToString().Trim();
                            string Sclass = ds.Tables[0].Rows[i]["班级"].ToString().Trim();
                            string Sname  = ds.Tables[0].Rows[i]["姓名"].ToString().Trim();
                            if (LearnSite.Common.WordProcess.IsNum(Sgrade) && LearnSite.Common.WordProcess.IsNum(Sclass))
                            {
                                if (sbll.UpdateDivide(Int32.Parse(Sgrade), Int32.Parse(Sclass), Sname))
                                {
                                    right++;
                                }
                            }
                            else
                            {
                                formatwrong++;
                            }
                        }
                        msg = "Excel表格数据共" + count + "位,重新分班成功共" + right + "位<br />年级和班级格式错误共" + formatwrong + "位";
                    }
                    else
                    {
                        msg = "无数据!";
                    }
                }
                else
                {
                    msg = "Excel数据格式不正确!";
                }
            }
            else
            {
                msg = "没有上传分班表格divide.xls!";
            }
            return(msg);
        }
예제 #6
0
        /// <summary>
        /// 模拟该班级学生登录cookies设置
        /// </summary>
        /// <param name="Sgrade"></param>
        /// <param name="Sclass"></param>
        public static void SimulationStudentCookies(int Sgrade, int Sclass)
        {
            if (HttpContext.Current.Request.Cookies[teaCookieNname] != null)
            {
                Model.TeaCook            tcook  = new Model.TeaCook();
                string                   Rhid   = tcook.Hid.ToString();
                LearnSite.BLL.Students   stubll = new BLL.Students();
                LearnSite.Model.Students sModel = new LearnSite.Model.Students();
                string                   sss    = Rhid + Sgrade.ToString() + Sclass.ToString();
                sModel.Sid = 0 - Int32.Parse(sss);
                string Syear = stubll.GetYear(Sgrade);
                sModel.Syear     = Int32.Parse(Syear);
                sModel.Snum      = "s" + Rhid + Syear.ToString() + Sgrade.ToString() + Sclass.ToString();
                sModel.Sgrade    = Sgrade;
                sModel.Sclass    = Sclass;
                sModel.Sname     = "学生" + Sgrade.ToString() + Sclass.ToString();
                sModel.Spwd      = "12345678";
                sModel.Sex       = "男";
                sModel.Sscore    = 100;
                sModel.Squiz     = 50;
                sModel.Sattitude = 25;
                sModel.Sape      = "A";
                sModel.Sgroup    = 0;

                DateTime   LoginTime = DateTime.Now;
                string     LoginIp   = LearnSite.Common.Computer.GetGuestIP();
                string     ThisTerm  = LearnSite.Common.XmlHelp.GetTerm();
                HttpCookie StuCookie = new HttpCookie(stuCookieNname);

                Model.Cook Cook = new Model.Cook();
                Cook.Sid       = sModel.Sid;
                Cook.Snum      = UrlEncode(sModel.Snum);
                Cook.Syear     = sModel.Syear.Value;
                Cook.Sgrade    = sModel.Sgrade.Value;
                Cook.Sclass    = sModel.Sclass.Value;
                Cook.Sname     = UrlEncode(sModel.Sname.Trim());
                Cook.Spwd      = Common.WordProcess.GetMD5_8bit(sModel.Spwd);
                Cook.Sex       = UrlEncode(sModel.Sex);
                Cook.Sscore    = sModel.Sscore.Value;
                Cook.Squiz     = sModel.Squiz.Value;
                Cook.Sattitude = sModel.Sattitude.Value;
                Cook.Sape      = UrlEncode(sModel.Sape);
                Cook.Sgroup    = sModel.Sgroup.Value;
                Cook.LoginTime = LoginTime.ToString();
                Cook.LoginIp   = LoginIp;
                Cook.ThisTerm  = Int32.Parse(ThisTerm);
                Cook.Rhid      = Int32.Parse(Rhid);
                Cook.RankImage = UrlEncode(LearnSite.Common.Rank.RankImage(sModel.Sscore.Value + sModel.Sattitude.Value, true));
                Cook.Ss        = stuCookieNname;//cookie名称校验
                Cook.SessionId = "";

                StuCookie.Value = Cook.ToStr();

                string str = LearnSite.Common.XmlHelp.GetStudentCookiesPeriod();
                if (str != "0")
                {
                    StuCookie.Expires  = StudentCookiesPeriod(str);
                    StuCookie.Path     = "/";
                    StuCookie.HttpOnly = true;
                }
                HttpContext.Current.Response.AppendCookie(StuCookie);
                LearnSite.Common.App.AppUserAdd(sModel.Snum);
            }
        }