using CRM.Core.Model.Entity; using System; using System.Collections.Generic; using System.Linq; using WX.CRM.Common; namespace CRM.Core.BLL.Exam { public class EXAM_PAPER_BL : DbContextRepository { public bool HandExamPaper(int paperId, Dictionary answerList) { using (var db = new zxdContext()) { LogHelper.Info("paperId:" + paperId.ToString()); var paper = db.EXAM_PAPER.FirstOrDefault(p => p.ID == paperId); if (paper == null) { return false; } //如果已经交过卷,直接返回 if (paper.HANDTIME.HasValue) return true; paper.HANDTIME = DateTime.Now; paper.USETIME = (paper.HANDTIME - paper.STARTTIME).Value.Seconds; var paperSubject = db.EXAM_PAPERSUBJECT.Where(p => p.PAPERID == paper.ID); var score = 0; foreach (var item in paperSubject) { var answer = answerList.FirstOrDefault(p => p.Key == item.ID).Value; if (item.RIGHTANSWER == answer) { score++; } item.ANSWER = answer; } paper.SCORE = score; db.SaveChanges(); return true; } } } }