Commit 24d45f6c authored by 黄奎's avatar 黄奎

页面修改

parent 3d21e9e5
...@@ -101,5 +101,10 @@ namespace Edu.Model.ViewModel.Question ...@@ -101,5 +101,10 @@ namespace Edu.Model.ViewModel.Question
return Common.Plugin.EnumHelper.ToName(this.LevelType); return Common.Plugin.EnumHelper.ToName(this.LevelType);
} }
} }
/// <summary>
/// 是否返回所有字段
/// </summary>
public int IsShowAllQuestion { get; set; }
} }
} }
\ No newline at end of file
...@@ -53,7 +53,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -53,7 +53,7 @@ namespace Edu.WebApi.Controllers.Course
} }
resultList.Add(new resultList.Add(new
{ {
RowNum=(pageModel.PageIndex-1)* pageModel.PageSize+index, RowNum = (pageModel.PageIndex - 1) * pageModel.PageSize + index,
item.BankId, item.BankId,
item.BankNo, item.BankNo,
item.BankName, item.BankName,
...@@ -107,7 +107,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -107,7 +107,7 @@ namespace Edu.WebApi.Controllers.Course
public ApiResult RemoveQuestionBank() public ApiResult RemoveQuestionBank()
{ {
var bankId = base.ParmJObj.GetInt("bankId", 0); var bankId = base.ParmJObj.GetInt("bankId", 0);
int status= base.ParmJObj.GetInt("status", 0); int status = base.ParmJObj.GetInt("status", 0);
var flag = questionModule.RemoveQuestionBankModule(bankId, status); var flag = questionModule.RemoveQuestionBankModule(bankId, status);
return flag ? ApiResult.Success() : ApiResult.Failed(); return flag ? ApiResult.Success() : ApiResult.Failed();
} }
...@@ -138,7 +138,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -138,7 +138,8 @@ namespace Edu.WebApi.Controllers.Course
CourseId = base.ParmJObj.GetInt("CourseId"), CourseId = base.ParmJObj.GetInt("CourseId"),
Title = base.ParmJObj.GetStringValue("Title"), Title = base.ParmJObj.GetStringValue("Title"),
PointName = base.ParmJObj.GetStringValue("PointName"), PointName = base.ParmJObj.GetStringValue("PointName"),
BankId=base.ParmJObj.GetInt("BankId") BankId = base.ParmJObj.GetInt("BankId"),
IsShowAllQuestion = base.ParmJObj.GetInt("IsShowAllQuestion"),
}; };
try try
{ {
...@@ -171,8 +172,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -171,8 +172,8 @@ namespace Edu.WebApi.Controllers.Course
} }
} }
catch catch
{ {
} }
var list = questionModule.GetQuestionPageListModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query); var list = questionModule.GetQuestionPageListModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
List<object> resultList = new List<object>(); List<object> resultList = new List<object>();
...@@ -188,18 +189,11 @@ namespace Edu.WebApi.Controllers.Course ...@@ -188,18 +189,11 @@ namespace Edu.WebApi.Controllers.Course
item.UpdateByName = UserReidsCache.GetUserLoginInfo(item.UpdateBy)?.AccountName ?? ""; item.UpdateByName = UserReidsCache.GetUserLoginInfo(item.UpdateBy)?.AccountName ?? "";
} }
// 定义正则表达式用来匹配 img 标签 // 定义正则表达式用来匹配 img 标签
string str=@"<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>"; string str = @"<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>";
string newTitle = item.Title; string newTitle = item.Title;
try try
{ {
newTitle = Regex.Replace(newTitle, str, "[图片]"); newTitle = Regex.Replace(newTitle, str, "[图片]");
}
catch
{
newTitle = item.Title;
}
try
{
newTitle = Regex.Replace(newTitle, @"<iframe\s*[^>]*>", "[音频", RegexOptions.IgnoreCase); newTitle = Regex.Replace(newTitle, @"<iframe\s*[^>]*>", "[音频", RegexOptions.IgnoreCase);
newTitle = Regex.Replace(newTitle, @"</iframe>", "]", RegexOptions.IgnoreCase); newTitle = Regex.Replace(newTitle, @"</iframe>", "]", RegexOptions.IgnoreCase);
} }
...@@ -207,22 +201,33 @@ namespace Edu.WebApi.Controllers.Course ...@@ -207,22 +201,33 @@ namespace Edu.WebApi.Controllers.Course
{ {
newTitle = item.Title; newTitle = item.Title;
} }
resultList.Add(new
var obj = new
{ {
Number=(pageModel.PageIndex-1)*pageModel.PageSize+index, Number = (pageModel.PageIndex - 1) * pageModel.PageSize + index,
item.QuestionId, item.QuestionId,
item.CourseId, item.CourseId,
Title= newTitle, Title = newTitle,
item.QuestionTypeId, item.QuestionTypeId,
item.QuestionTypeKey, item.QuestionTypeKey,
QuestionTypeName=item.QuestionTypeKey!= "single-number" ? item.QuestionTypeName:"选择题", QuestionTypeName = item.QuestionTypeKey != "single-number" ? item.QuestionTypeName : "选择题",
item.CreateByName, item.CreateByName,
item.CreateTimeStr, item.CreateTimeStr,
item.DifficultyType, item.DifficultyType,
item.CategoryName, item.CategoryName,
DifficultyTypeName = item.DifficultyType.ToName(), DifficultyTypeName = item.DifficultyType.ToName(),
item.LevelTypeName item.LevelTypeName,
}); ; QuestionContent = query.IsShowAllQuestion == 1 ? item.QuestionContent : "",
AnswerParse = query.IsShowAllQuestion == 1 ? item.AnswerParse : "",
Knowledge = query.IsShowAllQuestion == 1 ? item.Knowledge : "",
IsUpdateJobExam = query.IsShowAllQuestion == 1 ? item.IsUpdateJobExam : 0,
Answer = query.IsShowAllQuestion == 1 ? item.Answer : "",
IsMutex = query.IsShowAllQuestion == 1 ? item.IsMutex : 0,
Category = query.IsShowAllQuestion == 1 ? item.Category : 0,
LevelType = query.IsShowAllQuestion == 1 ? item.LevelType : 0,
BankId = query.IsShowAllQuestion == 1 ? item.BankId : 0,
};
resultList.Add(obj);
index++; index++;
} }
pageModel.Count = rowsCount; pageModel.Count = rowsCount;
...@@ -244,7 +249,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -244,7 +249,7 @@ namespace Edu.WebApi.Controllers.Course
Title = base.ParmJObj.GetStringValue("Title"), Title = base.ParmJObj.GetStringValue("Title"),
PointName = base.ParmJObj.GetStringValue("PointName"), PointName = base.ParmJObj.GetStringValue("PointName"),
BankId = base.ParmJObj.GetInt("BankId"), BankId = base.ParmJObj.GetInt("BankId"),
QBankIds=base.ParmJObj.GetStringValue("QBankIds"), QBankIds = base.ParmJObj.GetStringValue("QBankIds"),
}; };
var data = questionModule.GetQuestionCategoryListModule(query); var data = questionModule.GetQuestionCategoryListModule(query);
return ApiResult.Success(data: data); return ApiResult.Success(data: data);
...@@ -329,9 +334,9 @@ namespace Edu.WebApi.Controllers.Course ...@@ -329,9 +334,9 @@ namespace Edu.WebApi.Controllers.Course
QuestionTypeKey = base.ParmJObj.GetStringValue("QuestionTypeKey"), QuestionTypeKey = base.ParmJObj.GetStringValue("QuestionTypeKey"),
SortNum = base.ParmJObj.GetInt("SortNum"), SortNum = base.ParmJObj.GetInt("SortNum"),
Title = base.ParmJObj.GetStringValue("Title"), Title = base.ParmJObj.GetStringValue("Title"),
Category=(QuestionCategoryEnum)base.ParmJObj.GetInt("Category"), Category = (QuestionCategoryEnum)base.ParmJObj.GetInt("Category"),
LevelType= (LevelTypeEnum)base.ParmJObj.GetInt("LevelType"), LevelType = (LevelTypeEnum)base.ParmJObj.GetInt("LevelType"),
BankId=base.ParmJObj.GetInt("BankId") BankId = base.ParmJObj.GetInt("BankId")
}; };
if (string.IsNullOrEmpty(extModel.Title)) if (string.IsNullOrEmpty(extModel.Title))
{ {
...@@ -575,7 +580,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -575,7 +580,7 @@ namespace Edu.WebApi.Controllers.Course
else if (extModel.QuestionTypeKey == "sharing-choose") else if (extModel.QuestionTypeKey == "sharing-choose")
{ {
var shareList = Common.Plugin.JsonHelper.DeserializeObject<List<List<matchingItem>>>(extModel.QuestionContent); var shareList = Common.Plugin.JsonHelper.DeserializeObject<List<List<matchingItem>>>(extModel.QuestionContent);
if (shareList != null && shareList.Count ==2) if (shareList != null && shareList.Count == 2)
{ {
if (shareList[0].Where(qitem => string.IsNullOrEmpty(qitem.Content)).Count() > 0) if (shareList[0].Where(qitem => string.IsNullOrEmpty(qitem.Content)).Count() > 0)
{ {
...@@ -600,7 +605,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -600,7 +605,7 @@ namespace Edu.WebApi.Controllers.Course
{ {
return ApiResult.Failed(message: string.Format("请设置题干的正确选项!")); return ApiResult.Failed(message: string.Format("请设置题干的正确选项!"));
} }
} }
else else
{ {
return ApiResult.Failed(message: "请添加选项!"); return ApiResult.Failed(message: "请添加选项!");
...@@ -626,7 +631,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -626,7 +631,7 @@ namespace Edu.WebApi.Controllers.Course
var flag = questionModule.SetBatchQuestionLevelModule(LevelType, questionIds); var flag = questionModule.SetBatchQuestionLevelModule(LevelType, questionIds);
return flag ? ApiResult.Success() : ApiResult.Failed(); return flag ? ApiResult.Success() : ApiResult.Failed();
} }
/// <summary> /// <summary>
/// 选择题验证 /// 选择题验证
/// </summary> /// </summary>
...@@ -690,7 +695,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -690,7 +695,7 @@ namespace Edu.WebApi.Controllers.Course
string message = ""; string message = "";
if (string.IsNullOrEmpty(answer)) if (string.IsNullOrEmpty(answer))
{ {
message= "请填写简答题答案!"; message = "请填写简答题答案!";
} }
return message; return message;
} }
...@@ -704,7 +709,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -704,7 +709,7 @@ namespace Edu.WebApi.Controllers.Course
{ {
var QuestionId = base.ParmJObj.GetInt("QuestionId", 0); var QuestionId = base.ParmJObj.GetInt("QuestionId", 0);
int isReplaceClozeTitle = base.ParmJObj.GetInt("isReplaceClozeTitle", 0); int isReplaceClozeTitle = base.ParmJObj.GetInt("isReplaceClozeTitle", 0);
var extModel = questionModule.GetQuestionModule(QuestionId,isReplaceClozeTitle:isReplaceClozeTitle); var extModel = questionModule.GetQuestionModule(QuestionId, isReplaceClozeTitle: isReplaceClozeTitle);
return ApiResult.Success(data: extModel); return ApiResult.Success(data: extModel);
} }
...@@ -715,7 +720,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -715,7 +720,7 @@ namespace Edu.WebApi.Controllers.Course
[HttpPost] [HttpPost]
public ApiResult SetQuestionBeatch() public ApiResult SetQuestionBeatch()
{ {
bool flag=false; bool flag = false;
var list = Common.Plugin.JsonHelper.DeserializeObject<List<RB_Question_ViewModel>>(RequestParm.Msg.ToString()); var list = Common.Plugin.JsonHelper.DeserializeObject<List<RB_Question_ViewModel>>(RequestParm.Msg.ToString());
if (list != null && list.Count > 0) if (list != null && list.Count > 0)
{ {
...@@ -865,7 +870,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -865,7 +870,7 @@ namespace Edu.WebApi.Controllers.Course
/// 导入Excel问题 /// 导入Excel问题
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
public ApiResult ImportExcelQuestion(string filePath,int CourseId,int Uid) public ApiResult ImportExcelQuestion(string filePath, int CourseId, int Uid)
{ {
var userInfo = base.GetUserInfo(Uid); var userInfo = base.GetUserInfo(Uid);
var resultList = new List<RB_Question_ViewModel>(); var resultList = new List<RB_Question_ViewModel>();
...@@ -885,7 +890,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -885,7 +890,7 @@ namespace Edu.WebApi.Controllers.Course
} }
} }
System.IO.File.Delete(filePath); System.IO.File.Delete(filePath);
return ApiResult.Success(data:resultList); return ApiResult.Success(data: resultList);
} }
/// <summary> /// <summary>
...@@ -978,8 +983,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -978,8 +983,8 @@ namespace Edu.WebApi.Controllers.Course
AnswerParse = item.AnswerAnalysis, AnswerParse = item.AnswerAnalysis,
QuestionTypeId = questionTypeModel?.QId ?? 0, QuestionTypeId = questionTypeModel?.QId ?? 0,
QuestionTypeKey = questionTypeModel?.Key ?? "", QuestionTypeKey = questionTypeModel?.Key ?? "",
QuestionTypeName= questionTypeModel?.Name??"", QuestionTypeName = questionTypeModel?.Name ?? "",
Category=Category Category = Category
}; };
Int32.TryParse(item.ChooseOptionCount, out int ChooseOptionCount); Int32.TryParse(item.ChooseOptionCount, out int ChooseOptionCount);
switch (item.QuestionTypeName) switch (item.QuestionTypeName)
...@@ -1285,23 +1290,23 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1285,23 +1290,23 @@ namespace Edu.WebApi.Controllers.Course
case "阅读理解": case "阅读理解":
List<readingComprehensioItem> readingList = new List<readingComprehensioItem>(); List<readingComprehensioItem> readingList = new List<readingComprehensioItem>();
foreach (var subItem in item.SubQuestionList) foreach (var subItem in item.SubQuestionList)
{ {
Int32.TryParse(subItem.ChooseOptionCount, out int subChooseCount); Int32.TryParse(subItem.ChooseOptionCount, out int subChooseCount);
List<optionItem> singleList = new List<optionItem>(); List<optionItem> singleList = new List<optionItem>();
switch (subItem.QuestionTypeName) switch (subItem.QuestionTypeName)
{ {
//单选题 //单选题
case "单选题": case "单选题":
readingComprehensioItem readingModel = new readingComprehensioItem() readingComprehensioItem readingModel = new readingComprehensioItem()
{ {
QuestionKey = "single", QuestionKey = "single",
QuestionName = "单选题", QuestionName = "单选题",
QuestionType = 1, QuestionType = 1,
SubTitle = subItem.QuestionTitle, SubTitle = subItem.QuestionTitle,
SubAnwser=new object() SubAnwser = new object()
}; };
for (var i = 0; i < subChooseCount; i++) for (var i = 0; i < subChooseCount; i++)
{ {
var singleModel = new optionItem() var singleModel = new optionItem()
...@@ -1344,14 +1349,14 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1344,14 +1349,14 @@ namespace Edu.WebApi.Controllers.Course
SubTitle = subItem.QuestionTitle, SubTitle = subItem.QuestionTitle,
SubAnwser = new object() SubAnwser = new object()
}; };
for (var i = 0; i < subChooseCount; i++) for (var i = 0; i < subChooseCount; i++)
{ {
var singleModel = new optionItem() var singleModel = new optionItem()
{ {
Name = (i+1).ToString(), Name = (i + 1).ToString(),
Content = "", Content = "",
IsAnswer = subItem.QuestionAnswer.Trim()==(i+1).ToString() IsAnswer = subItem.QuestionAnswer.Trim() == (i + 1).ToString()
}; };
if (i == 0) if (i == 0)
{ {
...@@ -1378,8 +1383,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1378,8 +1383,8 @@ namespace Edu.WebApi.Controllers.Course
readingModel2.SubAnwser = singleList; readingModel2.SubAnwser = singleList;
readingList.Add(readingModel2); readingList.Add(readingModel2);
break; break;
}
} }
}
model.QuestionContent = Common.Plugin.JsonHelper.Serialize(readingList); model.QuestionContent = Common.Plugin.JsonHelper.Serialize(readingList);
if (model.QuestionTypeId == 0) if (model.QuestionTypeId == 0)
{ {
...@@ -1390,7 +1395,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1390,7 +1395,7 @@ namespace Edu.WebApi.Controllers.Course
break; break;
case "单选题(数字)": case "单选题(数字)":
AnalysisSingle(ChooseOptionCount, item, model, questionTypeList,isNumChoose:true); AnalysisSingle(ChooseOptionCount, item, model, questionTypeList, isNumChoose: true);
break; break;
} }
model.QuestionContentObj = questionModule.ParsingQuestionModule(model.QuestionTypeKey, model.QuestionContent); model.QuestionContentObj = questionModule.ParsingQuestionModule(model.QuestionTypeKey, model.QuestionContent);
...@@ -1405,7 +1410,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1405,7 +1410,7 @@ namespace Edu.WebApi.Controllers.Course
/// <param name="model"></param> /// <param name="model"></param>
/// <param name="questionTypeList"></param> /// <param name="questionTypeList"></param>
/// <param name="isNumChoose">是否数字选择题</param> /// <param name="isNumChoose">是否数字选择题</param>
private void AnalysisSingle(int ChooseOptionCount, ImportModel item, RB_Question_ViewModel model, List<RB_Question_Type_ViewModel> questionTypeList,bool isNumChoose=false) private void AnalysisSingle(int ChooseOptionCount, ImportModel item, RB_Question_ViewModel model, List<RB_Question_Type_ViewModel> questionTypeList, bool isNumChoose = false)
{ {
if (ChooseOptionCount > 0) if (ChooseOptionCount > 0)
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment