public async Task <IActionResult> Edit(int id, [Bind("Id,StudentId,CourseId,Score")] CourseScore courseScore) { if (id != courseScore.Id) { return(NotFound()); } if (ModelState.IsValid) { try { Admin.UpdateCourseScore(courseScore); } catch (DbUpdateConcurrencyException) { if (Admin.GetCourseScoreByScoreId(courseScore.Id) == null) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(courseScore)); }
public CourseScore SelectById(CourseScore model) { //修改 string sql = "select * from course_score where id=@id"; SQLiteParameter[] ps = { new SQLiteParameter("id", model.id) }; DataTable table = SqliteHelper.Select(sql, ps); //修改 List <CourseScore> list = new List <CourseScore>(); //遍历数据表,将数据转存到集合中 foreach (DataRow row in table.Rows) { //修改 list.Add(new CourseScore() { id = Convert.ToInt32(row["id"]), student_id = Convert.ToInt32(row["student_id"]), course_id = Convert.ToInt32(row["course_id"]), score = Convert.ToDouble(row["score"]), add_time = Convert.ToDateTime(row["add_time"]), update_time = Convert.ToDateTime(row["update_time"]), deleted = Convert.ToInt32(row["deleted"]) }); } //修改 CourseScore model2 = list[0]; return(model2); }
void HandleOnScoreChanged(CourseScore scoreObject) { scoreColumns[activeHole].SetScore(scoreObject.CurrentHoleScore.Score); totalColumn.SetScore(scoreObject.TotalScore,scoreObject.CoursePar); string scoreString = scoreObject.PlusMinusScore > 0 ? string.Format("+{0:D}",scoreObject.PlusMinusScore) : scoreObject.PlusMinusScore.ToString(); totalScoreField.text = string.Format("Total Score: {0}",scoreString); }
public scoreq() { InitializeComponent(); CourseScore a = new CourseScore(); this.Data1 = a.Query(); paint_pie(Data1); }
private void button2_Click(object sender, EventArgs e) { CourseScore a = new CourseScore(); Data1 = new List <CourseScore>(); this.Data1 = a.Query2(textBox2.Text); this.textBox2.Text = null; paint_pie(Data1); }
public async Task <IActionResult> Create([Bind("StudentId,CourseId,Score")] CourseScore courseScore) { if (ModelState.IsValid) { Admin.AddStudentScore(courseScore.StudentId, courseScore.CourseId, courseScore.Score); return(RedirectToAction(nameof(Index))); } return(View(courseScore)); }
public int Update(CourseScore model) { if (SelectById(model).deleted == 1) { return(-2); } List <Object> obj = updateSQL(model); string sql = obj[0].ToString(); List <SQLiteParameter> ps = (List <SQLiteParameter>)obj[1]; return(SqliteHelper.update(sql, ps.ToArray())); }
public int UpdateScore(CourseScore model) { if (SelectById(model).deleted == 1) { return(-2); } List <SQLiteParameter> ps = new List <SQLiteParameter>(); string sql = "update course_score set score=@score where id=@id"; ps.Add(new SQLiteParameter("@score", model.score)); ps.Add(new SQLiteParameter("@id", model.id)); return(SqliteHelper.update(sql, ps.ToArray())); }
public scorequrry(CourseScore list1) { InitializeComponent(); chart_paint(list1); this.SizeChanged += new Resize(this).Form1_Resize; this.textBox2.Text = list1.courseName; this.textBox3.Text = list1.teacherName; this.textBox4.Text = list1.courseType; this.textBox1.Text = list1.score.ToString(); chart1.Series[0]["PieLabelStyle"] = "Outside"; //将文字移到外侧 chart1.Series[0]["PieLineColor"] = "Black"; //绘制黑色的连线。 chart1.Series[0].Points.DataBindXY(xData, yData); }
public int Delete(CourseScore model) { if (SelectById(model).deleted == 1) { //如果deleted==1,已经删除,返回-2 return(-2); } //修改 string sql = "update course_score set deleted=1 where id=@id"; SQLiteParameter[] ps = { new SQLiteParameter("@id", model.id), }; return(SqliteHelper.Delete(sql, ps)); }
public int Add(CourseScore model) { //修改 string sql = "insert into course_score(student_id,course_id,score,add_time) " + "values (@student_id,@course_id,@score,@add_time)"; SQLiteParameter[] ps = { //修改 new SQLiteParameter("@student_id", model.student_id), new SQLiteParameter("@course_id", model.course_id), new SQLiteParameter("@score", model.score), new SQLiteParameter("@add_time", DateTime.Now) }; return(SqliteHelper.Add(sql, ps)); }
public ActionResult <List <CourseScore> > getCourseScore() { Console.WriteLine("getting CourseScore"); JwCrawler.initAttributes(); // 得到当前的http请求 var req = HttpContext.Request; string tokenToDecode = req.Headers["Authorization"].ToString().Split(' ').Last(); // 获取token // 解码的token转化为json对象 JObject token = (JObject)JsonConvert.DeserializeObject(DecodeJwt.decode(tokenToDecode)); string token_id = token["sub"].ToString(); // 拿到id Console.WriteLine($"id frome token: {token_id}"); // 根据id从数据库里面查询密码 User query = db.users.FirstOrDefault( o => o.id == Convert.ToInt64(token_id) ); // 调用爬虫 JwCrawler.initAttributes(); JwCrawler.login(query.id, getPwdEncrypted(query.portalpwd, JwCrawler.dynamicPwdEncryptSalt).Result); JwCrawler.loginJw(); List <CourseScore> score = CourseScoreCrawler.crawlCourseScore(Convert.ToInt64(token_id)); JwCrawler.logout(); // 成绩顺便保存到数据库中 foreach (CourseScore s in score) { CourseScore sQuery = db.courseScore.Where( o => o.courseid == s.courseid && o.userid == s.userid ).FirstOrDefault(); if (sQuery == null && s.score != -1) { db.courseScore.Add(s); } } db.SaveChanges(); return(score); }
private List <Object> updateSQL(CourseScore model) { List <SQLiteParameter> ps = new List <SQLiteParameter>(); string sql = "update course_score set "; bool flag = false; if (model.student_id != 0) { if (flag) { sql += ","; } sql += "student_id=@student_id"; ps.Add(new SQLiteParameter("@student_id", model.student_id)); flag = true; } if (model.course_id != 0) { if (flag) { sql += ","; } sql += "course_id=@course_id"; ps.Add(new SQLiteParameter("@course_id", model.course_id)); flag = true; } if (flag) { sql += ","; } sql += "update_time=@update_time"; ps.Add(new SQLiteParameter("@update_time", DateTime.Now)); sql += " where id=@id"; ps.Add(new SQLiteParameter("@id", model.id)); List <Object> obj = new List <object>(); obj.Add(sql); obj.Add(ps); return(obj); }
public void chart_paint(CourseScore a) { if (a.score > 90) { yData[0] += 1; } else if (a.score > 80) { yData[1] += 1; } else if (a.score > 70) { yData[2] += 1; } else if (a.score > 60) { yData[3] += 1; } else { yData[0] += 1; } }
// Use this for initialization void Awake() { CourseHandler.OnActionBegin += HandleOnActionBegin; CourseHandler.OnHoleBegin += ResetHoleScore; ObjectPlacement.OnObjectSelected += HandleOnObjectPlaced; ObjectPlacement.OnObjectRemoved += HandleOnObjectRemoved; scorer = new CourseScore(Game.SelectedCourse); }
void HandleOnScoreChanged(CourseScore scoreObject) { holeNumber.text = currentHole.ToString(); strokes.text = string.Format("{0:D} Strokes",scoreObject.CurrentHoleScore.Strokes); objects.text = string.Format("{0:D} Objects",scoreObject.CurrentHoleScore.Objects); }
public static List <CourseScore> crawlCourseScore(long userId) { JwCrawler.client.DefaultRequestHeaders.Clear(); JwCrawler.client.DefaultRequestHeaders.Add( "Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9" ); JwCrawler.client.DefaultRequestHeaders.Add( "Accept-Encoding", "gzip, deflate" ); JwCrawler.client.DefaultRequestHeaders.Add( "Accept-Language", "zh-CN,zh;q=0.9,en;q=0.8" ); JwCrawler.client.DefaultRequestHeaders.Add( "Connection", "keep-alive" ); JwCrawler.client.DefaultRequestHeaders.Add( "Host", "bkjw.whu.edu.cn" ); JwCrawler.client.DefaultRequestHeaders.Add( "Referer", "http://bkjw.whu.edu.cn/stu/stu_course_parent.jsp" ); JwCrawler.client.DefaultRequestHeaders.Add( "Upgrade-Insecure-Requests", "1" ); JwCrawler.client.DefaultRequestHeaders.Add( "User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36" ); string courseTableUrl = "http://bkjw.whu.edu.cn/servlet/Svlt_QueryStuScore"; courseTableUrl += "?csrftoken=" + JwCrawler.csrftoken; courseTableUrl += "&year=" + "0"; courseTableUrl += "&term=" + ""; courseTableUrl += "&learntype=" + ""; courseTableUrl += "&scoreflag=" + "0"; HttpResponseMessage response = JwCrawler.client.GetAsync(courseTableUrl).Result; Console.WriteLine($"return status: {response.StatusCode}"); CookieCollection cookies = JwCrawler.handler.CookieContainer.GetCookies(new Uri(courseTableUrl)); // 拿到cookie foreach (Cookie c in cookies) { Console.WriteLine(c.ToString()); Console.WriteLine(c.Value); } var courseScoreHtml = response.Content.ReadAsStringAsync().Result; HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(courseScoreHtml); // Console.WriteLine(courseScoreHtml); // 打印出来看看 HtmlNode bodyNode = doc.DocumentNode.SelectSingleNode("//table"); List <CourseScore> scores = new List <CourseScore>(); // 要返回的score bool flag = true; foreach (HtmlNode row in bodyNode.SelectNodes(".//tr")) { if (flag) { flag = false; continue; } short count = 0; CourseScore score = new CourseScore(); foreach (HtmlNode column in row.SelectNodes(".//td")) { string result = Regex.Replace(column.InnerText, @"\s", ""); // if(result == null || result== "") // continue; switch (count) { case 0: Console.WriteLine(column.Attributes["data-lsnid"].Value); long id = Convert.ToInt64(Regex.Replace(column.Attributes["data-lsnid"].Value, @"\s", "")); score.courseid = id; score.courseName = result; break; case 1: score.courseType = result; break; case 2: score.tsType = result; break; case 3: score.courseAttribute = result; break; case 4: score.credits = (float)Convert.ToDouble(result); break; case 5: score.teacherName = result; break; case 6: score.school = result; break; case 7: score.learnType = result; break; case 8: score.year = Convert.ToInt16(result); break; case 9: score.term = result == "1" ? false : true; break; case 10: score.score = result == "" ? -1 : (float)Convert.ToDouble(result); break; default: break; } count++; Console.WriteLine(result); // Console.WriteLine(""); } score.userid = userId; scores.Add(score); // 课程记录添加到集合中 } return(scores); }