public static void 修改正常试题(试题外部信息 problemOutside, 试题内容 problemContent, List<string> 分类列表, string 试题json字符串) { //using (TransactionScope scope = new TransactionScope()) //{ JObject bo = JObject.Parse(试题json字符串); var typeEnum = bo["outside"]["试题状态Enum"].ToString(); if (typeEnum == "4") { throw new Exception("正常试题不能改为草稿!"); } LoveKaoExamEntities db = new LoveKaoExamEntities(); 试题外部信息表 outsideTable = db.试题外部信息表.FirstOrDefault(a => a.ID == problemOutside.ID); 异常处理.删除修改权限判断(outsideTable.创建人ID); if (outsideTable.试题状态Enum == 1) { throw new Exception("该试题已被删除!"); } outsideTable.最新更新时间 = DateTime.Now; outsideTable.难易度 = problemOutside.难易度; if (problemContent != null) { outsideTable.试题查询内容 = problemContent.生成查询内容(); outsideTable.试题显示列 = problemContent.生成试题显示列(); outsideTable.试题内容ID = problemContent.ID; } List<string> listBelongSort = 所属分类.所属分类处理(分类列表, outsideTable.创建人ID, db); 所属分类.修改相关信息更新所属分类(listBelongSort, 0, outsideTable.创建人ID, outsideTable.ID, db); if (problemContent != null) { string json字符串 = bo["content"].ToString(); problemContent.保存(db, json字符串); } if (problemContent == null) { db.SaveChanges(); } // scope.Complete(); // } }
public static void 保存试题相关信息(int 类型,试题外部信息 problemOutside, 试题内容 problemContent, List<string> 分类列表, string 试题json字符串,LoveKaoExamEntities db) { List<string> listBelongSort = 所属分类.所属分类处理(分类列表, problemOutside.创建人ID, db); problemOutside.最新更新时间 = DateTime.Now; problemOutside.创建时间 = DateTime.Now; problemContent.爱考网ID = problemContent.ID; problemOutside.ID = problemContent.试题外部信息ID; problemOutside.爱考网ID = problemOutside.ID; 保存试题(problemOutside, problemContent, 分类列表, 试题json字符串, 类型, db); }
private static void 修改草稿试题(试题外部信息 problemOutside,试题内容 problemContent, List<string> 分类列表, string 试题json字符串) { //using (TransactionScope scope = new TransactionScope()) //{ LoveKaoExamEntities db = new LoveKaoExamEntities(); 试题外部信息表 outsideTable = db.试题外部信息表.FirstOrDefault(a => a.ID == problemOutside.ID); List<string> listBelongSort = 所属分类.所属分类处理(分类列表, outsideTable.创建人ID, db); if (outsideTable.试题状态Enum == 1) { throw new Exception("该试题已被删除!"); } //原试题内容ID Guid oldContentId = outsideTable.试题内容ID; outsideTable.试题状态Enum = problemOutside.试题状态Enum; outsideTable.最新更新时间 = DateTime.Now; if (problemContent != null) { outsideTable.试题查询内容 = problemContent.生成查询内容(); outsideTable.试题显示列 = problemContent.生成试题显示列(); outsideTable.试题内容ID = problemContent.ID; } 所属分类.修改相关信息更新所属分类(listBelongSort, 0, outsideTable.创建人ID, outsideTable.ID, db); if (problemContent != null) { outsideTable.试题内容ID = problemContent.ID; 试题内容表 dbContent = db.试题内容表.FirstOrDefault(a => a.ID == oldContentId); List<自由题空格表> listSpace = db.自由题空格表.Where(a=>a.试题内容ID==oldContentId).ToList(); if (listSpace.Count != 0) { List<Guid> listGroupId = listSpace.Where(a => a.自由题选项组ID != null).GroupBy(a => a.自由题选项组ID).Select(a => a.Key.Value).ToList(); if (listGroupId.Count != 0) { List<自由题选项组表> listGroup = db.自由题选项组表.Where(a => listGroupId.Contains(a.ID)).ToList(); foreach (var group in listGroup) { db.自由题选项组表.DeleteObject(group); } } } db.试题内容表.DeleteObject(dbContent); JObject bo = JObject.Parse(试题json字符串); string json字符串 = bo["content"].ToString(); problemContent.保存(db, json字符串); } if (problemContent == null) { db.SaveChanges(); } //scope.Complete(); //} }
public static Dictionary<Guid, Guid> 保存下载试卷中试题(试题外部信息 problemOutside,试题内容 试题内容, List<string> 所属分类集合, string 分站试题Json ,bool 是否只保存试题内容, LoveKaoExamEntities db) { Guid outsideLoveKaoId = 试题内容.试题外部信息ID; Guid contentLoveKaoId = 试题内容.ID; 试题内容.ID = Guid.NewGuid(); 试题内容.爱考网ID = contentLoveKaoId; if (是否只保存试题内容 == false) { 试题外部信息表 outside = new 试题外部信息表(); outside.ID = Guid.NewGuid(); outside.爱考网ID = outsideLoveKaoId; outside.试题类型 = 2; outside.创建人ID = 用户信息.CurrentUser.用户ID; outside.创建时间 = problemOutside.创建时间; outside.试题查询内容 = 试题内容.生成查询内容(); outside.试题内容ID = 试题内容.ID; outside.试题显示列 = 试题内容.生成试题显示列(); outside.试题状态Enum = 0; outside.小题型Enum = 试题内容.小题型Enum; outside.最新更新时间 = problemOutside.最新更新时间; outside.难易度 = 0.5m; 试题内容.试题外部信息ID = outside.ID; db.试题外部信息表.AddObject(outside); 所属分类.添加相关信息所属分类(所属分类集合, outside.创建人ID, outside.ID, 0, db); } else { Guid outsideId = db.试题外部信息表.Where(a => a.创建人ID == 用户信息.CurrentUser.用户ID && a.爱考网ID == problemOutside.爱考网ID).First().ID; 试题内容.试题外部信息ID = outsideId; } JObject bo = JObject.Parse(分站试题Json); string json字符串 = bo["content"].ToString(); 试题内容.操作人ID = 用户信息.CurrentUser.用户ID; 试题内容.难易度 = 0.5m; 试题内容.保存(db, json字符串); Dictionary<Guid, Guid> dic = new Dictionary<Guid, Guid>(); dic.Add(contentLoveKaoId, 试题内容.ID); return dic; }
private static void 保存试题(试题外部信息 problemOutside, 试题内容 problemContent, List<string> 分类列表, string 试题json字符串,int 类型, LoveKaoExamEntities db) { if (类型 == 1) { problemOutside.创建人ID = 用户信息.CurrentUser.用户ID; problemContent.操作人ID = 用户信息.CurrentUser.用户ID; } 试题外部信息表 outside = new 试题外部信息表(); outside.ID = problemOutside.ID; outside.爱考网ID = problemOutside.爱考网ID; outside.试题类型 = problemOutside.试题类型; outside.创建人ID = problemOutside.创建人ID; outside.创建时间 = problemOutside.创建时间; outside.最新更新时间 = problemOutside.最新更新时间; outside.试题状态Enum = problemOutside.试题状态Enum; outside.小题型Enum = problemOutside.小题型Enum; if (类型 == 1) { Guid contentLoveKaoId = problemContent.ID; problemContent.ID = Guid.NewGuid(); problemContent.爱考网ID = contentLoveKaoId; problemContent.试题外部信息ID = problemOutside.ID; } outside.试题内容ID = problemContent.ID; outside.试题查询内容 = problemContent.生成查询内容(); outside.试题显示列 = problemContent.生成试题显示列(); outside.难易度 = problemOutside.难易度; using (TransactionScope scope = new TransactionScope()) { db.试题外部信息表.AddObject(outside); 所属分类.添加相关信息所属分类(分类列表, outside.创建人ID, outside.ID, 0, db); //db.SaveChanges(); JObject bo = JObject.Parse(试题json字符串); string json字符串 = bo["content"].ToString(); problemContent.难易度 = outside.难易度; problemContent.保存(db, json字符串); scope.Complete(); } }