Commit 3554fe8f authored by 黄奎's avatar 黄奎

页面修改

parent 4f87c6ad
......@@ -55,6 +55,11 @@ namespace Edu.Model.ViewModel.Question
/// </summary>
public string QDifficultyType { get; set; }
/// <summary>
/// 题库编号【查询使用】
/// </summary>
public string QBankIds { get; set; }
/// <summary>
/// 选项
/// </summary>
......
using Edu.AOP.CustomerAttribute;
using Edu.Common.Enum;
using Edu.Common.Enum.Question;
using Edu.Common.Plugin;
using Edu.Model.ViewModel.Question;
using Edu.Repository.Question;
using System.Collections.Generic;
......@@ -137,6 +138,52 @@ namespace Edu.Module.Question
return questionRepository.GetQuestionListRepository(query);
}
/// <summary>
/// 根据题库编号获取题库题型分类列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<object> GetQuestionCategoryListModule(RB_Question_ViewModel query)
{
List<object> list = new List<object>();
var dataList = GetQuestionListModule(query);
if (dataList != null && dataList.Count > 0)
{
var questionTypeList = GetQuestionTypeListModule(new RB_Question_Type_ViewModel());
var groupList = dataList.GroupBy(qitem => new { qitem.QuestionTypeId, }).Select(qitem => new
{
qitem.Key.QuestionTypeId
});
foreach (var item in groupList)
{
var qType = questionTypeList?.Where(qitem => qitem.QId == item.QuestionTypeId)?.FirstOrDefault();
var diffTypeList = dataList.Where(qitem => qitem.QuestionTypeId == item.QuestionTypeId)
.GroupBy(qitem => new { qitem.DifficultyType })
.Select(qitem => new
{
DifficultyType = qitem.Key.DifficultyType,
DifficultyTypeName = qitem.Key.DifficultyType.ToName(),
DifficultyTypeCount = qitem.Count(),
ChooseNum = 0
});
var obj = new
{
item.QuestionTypeId,
QuestionTypeKey = qType?.Key,
QuestionTypeName = qType?.Name,
QuestionScore = 0,
QuestionDesc = "",
ChooseType = 1,
ChooseNum = 0,
QuestionTypeNum = dataList.Where(qitem => qitem.QuestionTypeId == item.QuestionTypeId).Count(),
ChooseList = diffTypeList,
};
list.Add(obj);
}
}
return list;
}
/// <summary>
/// 新增修改题目
/// </summary>
......@@ -250,21 +297,21 @@ namespace Edu.Module.Question
/// </summary>
/// <param name="QuestionId"></param>
/// <returns></returns>
public RB_Question_ViewModel GetQuestionModule(object QuestionId,int isReplaceClozeTitle=0)
public RB_Question_ViewModel GetQuestionModule(object QuestionId, int isReplaceClozeTitle = 0)
{
var extModel = questionRepository.GetEntity<RB_Question_ViewModel>(QuestionId);
if (extModel != null)
{
if (extModel.QuestionTypeId > 0)
{
extModel.QuestionTypeName= question_TypeRepository.GetEntity(extModel.QuestionTypeId)?.Name ?? "";
extModel.QuestionTypeName = question_TypeRepository.GetEntity(extModel.QuestionTypeId)?.Name ?? "";
}
extModel.QuestionContentObj = ParsingQuestionModule(extModel.QuestionTypeKey, extModel.QuestionContent);
if (!string.IsNullOrEmpty(extModel.Knowledge))
{
extModel.QuestionPointList = GetPointListModule(new RB_Question_Point_ViewModel() { QPointIds = extModel.Knowledge });
}
if (extModel.QuestionTypeKey == "cloze" && !string.IsNullOrEmpty(extModel.Title)&& isReplaceClozeTitle==1)
if (extModel.QuestionTypeKey == "cloze" && !string.IsNullOrEmpty(extModel.Title) && isReplaceClozeTitle == 1)
{
string categoryRule1 = @"##[1234567890]##";
Regex categoryReg = new Regex(categoryRule1);
......
......@@ -32,6 +32,10 @@ WHERE 1=1
}
else
{
if (!string.IsNullOrEmpty(query.QBankIds))
{
builder.AppendFormat(" AND {0} IN({1}) ", nameof(RB_Question_ViewModel.BankId), query.QBankIds);
}
if (query.CourseId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Question_ViewModel.CourseId), query.CourseId);
......
......@@ -230,6 +230,27 @@ namespace Edu.WebApi.Controllers.Course
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 根据题库编号获取题库题型分类列表【试卷组卷使用】
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetQuestionCategoryList()
{
var query = new RB_Question_ViewModel()
{
CourseId = base.ParmJObj.GetInt("CourseId"),
Title = base.ParmJObj.GetStringValue("Title"),
PointName = base.ParmJObj.GetStringValue("PointName"),
BankId = base.ParmJObj.GetInt("BankId"),
QBankIds=base.ParmJObj.GetStringValue("QBankIds"),
};
var data = questionModule.GetQuestionCategoryListModule(query);
return ApiResult.Success(data: data);
}
/// <summary>
/// 获取问题难易列表
/// </summary>
......
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