public int checkPreRequire(SpreadsheetModel spr) { var orgId = _orgCoreModel.GetOrganizationIdByName(spr.OrganizationName).SelectedDetails; var subId = _subjectCoreModel.GetSubjectIdByName(spr.SubjectName).SelectedDetails; var topId = _topicCoreModel.GetTopicIdByName(spr.TopicName).SelectedDetails; var objectiveId = _objectiveCoreModel.GetObjectiveIdByName(spr.ObjectiveName).SelectedDetails; if (orgId == "[]" || subId == "[]" || topId == "[]" || objectiveId == "[]") { return(0); } return(1); }
public int saveQueAndAns(SpreadsheetModel spr) { /*save question*/ var que = spr.questionModel; var subObjId = _subobjCoreModel.GetSubObjectiveIdByName(que.SubObjectiveName).SelectedDetails; que.SubObjectiveID = Int32.Parse(extractID(subObjId)); _questionCoreModel.Save(que); /*save answers*/ var que_id = extractID(_questionCoreModel.GetLastQuestionId().List); foreach (var ans in spr.answerList) { ans.QuestionID = que_id; _answerCoreModel.Save(ans); } return(1); }
public int checkQueAndAns(SpreadsheetModel spr) { /*check question*/ var que_ret = checkQue(spr.questionModel); if (que_ret == 0) { return(0); } /*check answers*/ foreach (var ans in spr.answerList) { if (checkAns(ans) == 0) { return(0); } } return(1); }
private void btnOk_Click(object sender, EventArgs e) { var n = treeView1.SelectedNode; if (n != null) { SelectedWorksheet = n.Tag as WorksheetModel; } if (SelectedWorksheet == null) { MessageBox.Show("Please select a worksheet"); return; } else { SelectedSpreadsheet = n.Parent.Tag as SpreadsheetModel; } DialogResult = DialogResult.OK; }
public List <SpreadsheetModel> SaveDataToList(Excel.Range range) { /*question type and difficulty id & name hashtable*/ Hashtable queTypeId = new Hashtable(); queTypeId.Add("Fill in the Blank", "1"); queTypeId.Add("Long Strings", "2"); queTypeId.Add("String with Image", "3"); queTypeId.Add("Image Only", "4"); queTypeId.Add("", "0"); Hashtable queDiff = new Hashtable(); queDiff.Add("High", 1); queDiff.Add("Medium", 2); queDiff.Add("Low", 3); queDiff.Add("", 0); /*statics for excel data. True means save success to the db, False means save failure */ var stats = new List <int>(); var list = new List <SpreadsheetModel>(); for (int row = 2; row <= range.Rows.Count; row++) { /* if question content is not null, add the question */ if (((Excel.Range)range.Cells[row, 6]).Text != "") { var queModel = new QuestionModel(); var ansList = new List <AnswerModel>(); var spr = new SpreadsheetModel { questionModel = queModel, answerList = ansList }; spr.OrganizationName = ((Excel.Range)range.Cells[row, excelQue.OrganizationName]).Text; spr.SubjectName = ((Excel.Range)range.Cells[row, excelQue.SubjectName]).Text; spr.TopicName = ((Excel.Range)range.Cells[row, excelQue.TopicName]).Text; spr.ObjectiveName = ((Excel.Range)range.Cells[row, excelQue.ObjectiveName]).Text; spr.questionModel.SubObjectiveName = ((Excel.Range)range.Cells[row, excelQue.SubObjectiveName]).Text; spr.questionModel.QuestionContent = ((Excel.Range)range.Cells[row, excelQue.QuestionContent]).Text; spr.questionModel.QuestionCode = ((Excel.Range)range.Cells[row, excelQue.QuestionCode]).Text; spr.questionModel.IsActive = ((Excel.Range)range.Cells[row, excelQue.IsActive]).Text; var typeText = ((Excel.Range)range.Cells[row, excelQue.QuestionTypeId]).Text; spr.questionModel.QuestionTypeId = queTypeId[typeText] != null ? queTypeId[typeText] : "0"; var diffText = ((Excel.Range)range.Cells[row, excelQue.Difficulty]).Text; spr.questionModel.Difficulty = queDiff[diffText] != null?queDiff[diffText]:0; /*if question type id is 3 or 4, add the questionimage field the question code, otherwise, the field should be null */ if (spr.questionModel.QuestionTypeId == "3" || spr.questionModel.QuestionTypeId == "4") { spr.questionModel.QuestionImage = ((Excel.Range)range.Cells[row, excelQue.QuestionImage]).Text; } else { spr.questionModel.QuestionImage = null; } /*if answer content is not null, add the answer. */ int ans_index = (int)excelQue.IsActive + 1; while (((Excel.Range)range.Cells[row, ans_index]).Text != "") { var ans = new AnswerModel(); ans.AnswerContent = ((Excel.Range)range.Cells[row, ans_index + excelAns.AnswerContent]).Text; ans.Explanation = ((Excel.Range)range.Cells[row, ans_index + excelAns.Explanation]).Text; ans.AnswerCode = ((Excel.Range)range.Cells[row, ans_index + excelAns.AnswerCode]).Text; ans.IsActive = ((Excel.Range)range.Cells[row, ans_index + excelAns.IsActive]).Text; ans.IsCorrect = ((Excel.Range)range.Cells[row, ans_index + excelAns.IsCorrect]).Text; spr.answerList.Add(ans); ans_index += 5; } list.Add(spr); } } return(list); }