public ExamAnswer GetExamAnswer(RequestGetExamAnswer request) { ExamAnswerHelper eah = new ExamAnswerHelper(); ExamAnswer ea = eah.GetRow(request.usercode, request.ExamPaper); AnswerHelper ah = new AnswerHelper(); ea.Answers = ah.GetRows(ea.GUID); AnswerItemHelper aih = new AnswerItemHelper(); var ais = aih.GetRows(ea.GUID); Dictionary <string, IList <AnswerItem> > items = new Dictionary <string, IList <AnswerItem> >(); foreach (var ai in ais) { if (!items.ContainsKey(ai.Code)) { items.Add(ai.Code, new List <AnswerItem>()); } items[ai.Code].Add(ai); } foreach (var a in ea.Answers) { a.Answers = items[a.Code]; } return(ea); }
public ResultMessage SetExamAnswer(ExamAnswer request) { ExamAnswerHelper eah = new ExamAnswerHelper(); ResultMessage result = eah.Create(request.GUID = Guid.NewGuid().ToString(), request.ExamPaper, request.UserCode, request.ClientIP, request.LeftTime, request.RightTime, request.TotalScore); if (!result.State) { return(result); } AnswerHelper ah = new AnswerHelper(); AnswerItemHelper aih = new AnswerItemHelper(); if (request.Answers == null || request.Answers.Count == 0) { return(result); } foreach (var a in request.Answers) { result = ah.Create(a.GUID = Guid.NewGuid().ToString(), a.Ref_ExamAnswer_GUID = request.GUID, a.Code, a.Score, a.Comment); if (!result.State) { return(result); } if (a.Answers == null || a.Answers.Count == 0) { continue; } foreach (var ai in a.Answers) { if (string.IsNullOrWhiteSpace(ai.ItemOrder)) { continue; } result = aih.Create(ai.GUID = Guid.NewGuid().ToString(), ai.Answer_GUID = a.GUID, ai.ItemOrder, ai.Value, ai.ExpandValue); if (!result.State) { return(result); } } } return(result); }