Commit d026f290 authored by 罗超's avatar 罗超

Merge branch 'master' of http://gitlab.oytour.com/Kui2/education

parents 16d3a83d ebe850a1
using Edu.Common.Enum;
using Edu.Common.Enum.Course;
using Edu.Common.Enum.Question;
using System;
using VT.FW.DB;
namespace Edu.Model.Entity.Exam
{
/// <summary>
/// 试卷题目实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Examination_Details
{
/// <summary>
/// 试卷详情编号
/// </summary>
public int Id { get; set; }
/// <summary>
/// 试卷编号
/// </summary>
public int PaperId { get; set; }
/// <summary>
/// 题库编号
/// </summary>
public int BankId { get; set; }
/// <summary>
/// 问题编号
/// </summary>
public int QuestionId { get; set; }
/// <summary>
/// 问题名称(题干)
/// </summary>
public string Title { get; set; }
/// <summary>
/// 问题内容
/// </summary>
public string QuestionContent { get; set; }
/// <summary>
/// 难易程度(1-易,2-中,3-难)
/// </summary>
public DifficultyTypeEnum DifficultyType { get; set; }
/// <summary>
/// 答案解析
/// </summary>
public string AnswerParse { get; set; }
/// <summary>
/// 问题类型编号
/// </summary>
public int QuestionTypeId { get; set; }
/// <summary>
/// 问题类型Key
/// </summary>
public string QuestionTypeKey { get; set; }
/// <summary>
/// 知识点
/// </summary>
public string Knowledge { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 修改人
/// </summary>
public int UpdateBy { get; set; }
/// <summary>
/// 更新时间
/// </summary>
public DateTime UpdateTime { get; set; }
/// <summary>
/// 是否同步修改引用此题目的作业和考试(1-是)
/// </summary>
public int IsUpdateJobExam { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public DateStateEnum Status { get; set; }
/// <summary>
/// 排序
/// </summary>
public int SortNum { get; set; }
/// <summary>
/// 问题答案【JSON字符串】
/// </summary>
public string Answer { get; set; }
/// <summary>
/// 填空题(答案顺序打乱也判正确)
/// </summary>
public int IsMutex { get; set; }
/// <summary>
/// 题目所属大类
/// </summary>
public QuestionCategoryEnum? Category { get; set; }
/// <summary>
/// 考级程度
/// </summary>
public LevelTypeEnum? LevelType { get; set; }
/// <summary>
/// 题目分数
/// </summary>
public decimal Score { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB;
namespace Edu.Model.Entity.Exam
{
/// <summary>
/// 试卷题目分组实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Examination_Group
{
/// <summary>
/// 试卷分组编号
/// </summary>
public int GId { get; set; }
/// <summary>
/// 试卷编号
/// </summary>
public int PaperId { get; set; }
/// <summary>
/// 分组名称
/// </summary>
public string GroupName { get; set; }
/// <summary>
/// 问题类型编号
/// </summary>
public int QuestionTypeId { get; set; }
/// <summary>
/// 问题类型Key
/// </summary>
public string QuestionTypeKey { get; set; }
/// <summary>
/// 排序
/// </summary>
public int GSortNum { get; set; }
}
}
using Edu.Common.Enum.Question;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB;
namespace Edu.Model.Entity.Exam
{
/// <summary>
/// 试卷实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Examination_Paper
{
/// <summary>
/// 试卷编号
/// </summary>
public int PaperId { get; set; }
/// <summary>
/// 试卷名称
/// </summary>
public string PaperName { get; set; }
/// <summary>
/// 关联题库编号
/// </summary>
public string QuestionBandIds { get; set; }
/// <summary>
/// 难易程度(1-易,2-中,3-难)
/// </summary>
public DifficultyTypeEnum DifficultyType { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 发布次数
/// </summary>
public int PublishCount { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 学校编号
/// </summary>
public int School_Id { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public int Status { get; set; }
}
}
using Edu.Model.Entity.Exam;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Exam
{
/// <summary>
/// 试卷题目视图实体类
/// </summary>
public class RB_Examination_Details_ViewModel : RB_Examination_Details
{
/// <summary>
/// 试卷编号【查询使用】
/// </summary>
public string QPaperIds { get; set; }
}
}
using Edu.Model.Entity.Exam;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Exam
{
/// <summary>
/// 试卷题目分组视图实体类
/// </summary>
public class RB_Examination_Group_ViewModel: RB_Examination_Group
{
/// <summary>
/// 试卷分组题目列表
/// </summary>
public List<RB_Examination_Details_ViewModel> DetailsList { get; set; }
/// <summary>
/// 试卷编号【查询使用】
/// </summary>
public string QPaperIds { get; set; }
}
}
using Edu.Model.Entity.Exam;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Exam
{
/// <summary>
/// 试卷师徒实体类
/// </summary>
public class RB_Examination_Paper_ViewModel : RB_Examination_Paper
{
/// <summary>
/// 创建人
/// </summary>
public string CreateByName { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public string CreateTimeStr { get { return Common.ConvertHelper.FormatDate(this.CreateTime); } }
/// <summary>
/// 试卷题目分组列表
/// </summary>
public List<RB_Examination_Group_ViewModel> GroupList { get; set; }
}
}
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Edu.Aop\Edu.Aop.csproj" />
<ProjectReference Include="..\Edu.Cache\Edu.Cache.csproj" />
<ProjectReference Include="..\Edu.Common\Edu.Common.csproj" />
<ProjectReference Include="..\Edu.Model\Edu.Model.csproj" />
<ProjectReference Include="..\Edu.Repository\Edu.Repository.csproj" />
</ItemGroup>
</Project>
using Edu.AOP.CustomerAttribute;
using Edu.Model.ViewModel.Exam;
using Edu.Repository.Exam;
using System;
using System.Collections.Generic;
using VT.FW.DB;
using System.Linq;
namespace Edu.Module.Exam
{
/// <summary>
/// 试卷处理类
/// </summary>
public class PaperModule
{
/// <summary>
/// 试卷题目仓储层对象
/// </summary>
private readonly RB_Examination_DetailsRepository examination_DetailsRepository = new RB_Examination_DetailsRepository();
/// <summary>
/// 试卷仓储层对象
/// </summary>
private readonly RB_Examination_PaperRepository examination_PaperRepository = new RB_Examination_PaperRepository();
/// <summary>
/// 试卷分组仓储层对象
/// </summary>
private readonly RB_Examination_GroupRepository examination_GroupRepository = new RB_Examination_GroupRepository();
/// <summary>
/// 获取试卷分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Examination_Paper_ViewModel> GetExaminationPaperPageModule(int pageIndex, int pageSize, out long rowsCount, RB_Examination_Paper_ViewModel query)
{
return examination_PaperRepository.GetExaminationPaperPageRepository(pageIndex, pageSize, out rowsCount, query);
}
/// <summary>
/// 获取试卷题目列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Examination_Group_ViewModel> GetExaminationGroupListModule(RB_Examination_Group_ViewModel query)
{
return examination_GroupRepository.GetExaminationGroupListRepository(query);
}
/// <summary>
/// 获取试卷题目列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Examination_Details_ViewModel> GetExaminationDetailsListModule(RB_Examination_Details_ViewModel query)
{
return examination_DetailsRepository.GetExaminationDetailsListRepository(query);
}
/// <summary>
/// 新增/修改试卷
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
[TransactionCallHandler]
public virtual bool SetExaminationPaperModule(RB_Examination_Paper_ViewModel model)
{
bool flag;
if (model.PaperId > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Examination_Paper_ViewModel.PaperName),model.PaperName },
{nameof(RB_Examination_Paper_ViewModel.DifficultyType),model.DifficultyType },
};
flag = examination_PaperRepository.Update(fileds, new WhereHelper(nameof(RB_Examination_Paper_ViewModel.PaperId), model.PaperId));
}
else
{
var newPaperId = examination_PaperRepository.Insert(model);
model.PaperId = newPaperId;
flag = newPaperId > 0;
}
if (model.GroupList != null && model.GroupList.Count > 0)
{
foreach (var gitem in model.GroupList)
{
gitem.PaperId = model.PaperId;
if (flag)
{
if (gitem.GId > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Examination_Group_ViewModel.PaperId),gitem.PaperId },
{nameof(RB_Examination_Group_ViewModel.GroupName),gitem.GroupName },
{nameof(RB_Examination_Group_ViewModel.QuestionTypeId),gitem.QuestionTypeId },
{nameof(RB_Examination_Group_ViewModel.QuestionTypeKey),gitem.QuestionTypeKey },
{nameof(RB_Examination_Group_ViewModel.GSortNum),gitem.GSortNum },
};
flag = examination_GroupRepository.Update(fileds, new WhereHelper(nameof(RB_Examination_Group_ViewModel.GId), gitem.GId));
}
else
{
var newGroupId = examination_GroupRepository.Insert(gitem);
gitem.GId = newGroupId;
flag = newGroupId > 0;
}
}
if (flag && gitem.DetailsList != null && gitem.DetailsList.Count > 0)
{
foreach (var dItem in gitem.DetailsList)
{
if (dItem.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Examination_Details_ViewModel.PaperId),dItem.PaperId },
{nameof(RB_Examination_Details_ViewModel.BankId),dItem.BankId },
{nameof(RB_Examination_Details_ViewModel.QuestionId),dItem.QuestionId },
{nameof(RB_Examination_Details_ViewModel.Title),dItem.Title },
{nameof(RB_Examination_Details_ViewModel.QuestionContent),dItem.QuestionContent },
{nameof(RB_Examination_Details_ViewModel.DifficultyType),dItem.DifficultyType },
{nameof(RB_Examination_Details_ViewModel.AnswerParse),dItem.AnswerParse },
{nameof(RB_Examination_Details_ViewModel.QuestionTypeId),dItem.QuestionTypeId },
{nameof(RB_Examination_Details_ViewModel.QuestionTypeKey),dItem.QuestionTypeKey },
{nameof(RB_Examination_Details_ViewModel.Knowledge),dItem.Knowledge },
{nameof(RB_Examination_Details_ViewModel.UpdateBy),dItem.UpdateBy },
{nameof(RB_Examination_Details_ViewModel.UpdateTime),dItem.UpdateTime },
{nameof(RB_Examination_Details_ViewModel.IsUpdateJobExam),dItem.IsUpdateJobExam },
{nameof(RB_Examination_Details_ViewModel.SortNum),dItem.SortNum },
{nameof(RB_Examination_Details_ViewModel.Answer),dItem.Answer },
{nameof(RB_Examination_Details_ViewModel.IsMutex),dItem.IsMutex },
{nameof(RB_Examination_Details_ViewModel.Category),dItem.Category },
{nameof(RB_Examination_Details_ViewModel.LevelType),dItem.LevelType },
{nameof(RB_Examination_Details_ViewModel.Score),dItem.Score },
};
flag = examination_DetailsRepository.Update(fileds, new WhereHelper(nameof(RB_Examination_Details_ViewModel.Id), dItem.Id));
}
else
{
var newDetailsId = examination_DetailsRepository.Insert(dItem);
dItem.Id = newDetailsId;
flag = newDetailsId > 0;
}
}
}
}
}
return flag;
}
/// <summary>
/// 根据试卷编号获取试卷实体
/// </summary>
/// <param name="PaperId"></param>
/// <returns></returns>
public RB_Examination_Paper_ViewModel GetExaminationPaperModule(object PaperId)
{
var extModel = examination_PaperRepository.GetEntity<RB_Examination_Paper_ViewModel>(PaperId);
if (extModel != null&& extModel.PaperId>0)
{
extModel.GroupList = GetExaminationGroupListModule(new RB_Examination_Group_ViewModel()
{
PaperId = extModel.PaperId
});
var detailsList = GetExaminationDetailsListModule(new RB_Examination_Details_ViewModel()
{
PaperId = extModel.PaperId
});
if (extModel.GroupList != null && extModel.GroupList.Count > 0 && detailsList!=null && detailsList.Count>0)
{
foreach (var gItem in extModel.GroupList)
{
gItem.DetailsList = detailsList?.Where(qitem => qitem.QuestionTypeId == gItem.QuestionTypeId)?.ToList() ?? new List<RB_Examination_Details_ViewModel>();
}
}
}
return extModel;
}
/// <summary>
/// 根据编号删除试卷题目
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public bool RemoveExaminationDetailsModule(int Id)
{
return examination_DetailsRepository.Delete(Id) > 0;
}
}
}
using Edu.Common.Enum;
using Edu.Model.Entity.Exam;
using Edu.Model.ViewModel.Exam;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Edu.Repository.Exam
{
/// <summary>
/// 试卷题目仓储层
/// </summary>
public class RB_Examination_DetailsRepository : BaseRepository<RB_Examination_Details>
{
/// <summary>
/// 获取试卷题目列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Examination_Details_ViewModel> GetExaminationDetailsListRepository(RB_Examination_Details_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*
FROM RB_Examination_Details AS A
WHERE 1=1
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Examination_Details_ViewModel.Status), (int)DateStateEnum.Normal);
if (query != null)
{
if (query.PaperId > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Examination_Details_ViewModel.PaperId), query.PaperId);
}
if (!string.IsNullOrEmpty(query.QPaperIds))
{
builder.AppendFormat(@" AND A.{0} IN({1}) ", nameof(RB_Examination_Details_ViewModel.PaperId), query.QPaperIds);
}
}
return Get<RB_Examination_Details_ViewModel>(builder.ToString()).ToList();
}
}
}
using Edu.Model.Entity.Exam;
using Edu.Model.ViewModel.Exam;
using System;
using System.Collections.Generic;
using System.Text;
using System.Linq;
namespace Edu.Repository.Exam
{
/// <summary>
/// 试卷题目分组仓储层
/// </summary>
public class RB_Examination_GroupRepository : BaseRepository<RB_Examination_Group>
{
/// <summary>
/// 获取试卷题目列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Examination_Group_ViewModel> GetExaminationGroupListRepository(RB_Examination_Group_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*
FROM RB_Examination_Group AS A
WHERE 1=1
");
if (query != null)
{
if (query.PaperId > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Examination_Group_ViewModel.PaperId), query.PaperId);
}
if (!string.IsNullOrEmpty(query.QPaperIds))
{
builder.AppendFormat(@" AND A.{0} IN({1}) ", nameof(RB_Examination_Group_ViewModel.PaperId), query.QPaperIds);
}
}
return Get<RB_Examination_Group_ViewModel>(builder.ToString()).ToList();
}
}
}
using Edu.Model.Entity.Exam;
using Edu.Model.ViewModel.Exam;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using VT.FW.DB.Dapper;
namespace Edu.Repository.Exam
{
/// <summary>
/// 试卷仓储层
/// </summary>
public class RB_Examination_PaperRepository : BaseRepository<RB_Examination_Paper>
{
/// <summary>
/// 获取试卷分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Examination_Paper_ViewModel> GetExaminationPaperPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Examination_Paper_ViewModel query)
{
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*
FROM RB_Examination_Paper AS A
WHERE 1=1
");
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Examination_Paper_ViewModel.Group_Id), query.Group_Id);
}
if (!string.IsNullOrEmpty(query.PaperName))
{
builder.AppendFormat(" AND A.{0} LIKE @PaperName ", nameof(RB_Examination_Paper_ViewModel.PaperName));
parameters.Add("PaperName", "%" + query.PaperName.Trim() + "%");
}
}
return GetPage<RB_Examination_Paper_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
}
}
}
using Edu.Cache.User;
using Edu.Common.API;
using Edu.Common.Enum.Course;
using Edu.Common.Enum.Question;
using Edu.Common.Plugin;
using Edu.Model.ViewModel.Exam;
using Edu.Module.Exam;
using Edu.WebApi.Filter;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Edu.WebApi.Controllers.Exam
{
/// <summary>
/// 改变流程相关申请
/// </summary>
[Route("api/[controller]/[action]")]
[ApiExceptionFilter]
[ApiController]
[EnableCors("AllowCors")]
public class ExamController : BaseController
{
/// <summary>
/// 试卷处理类对象
/// </summary>
private readonly PaperModule paperModule = AOP.AOPHelper.CreateAOPObject<PaperModule>();
/// <summary>
/// 获取试卷分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetPaperPage()
{
var pageModel = Common.Plugin.JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var query = new RB_Examination_Paper_ViewModel()
{
PaperName = base.ParmJObj.GetStringValue("PaperName"),
};
query.Group_Id = base.UserInfo.Group_Id;
List<object> result = new List<object>();
var list = paperModule.GetExaminationPaperPageModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
foreach (var item in list)
{
if (item.CreateBy > 0)
{
item.CreateByName = UserReidsCache.GetUserLoginInfo(item.CreateBy)?.AccountName ?? "";
}
result.Add(new
{
item.PaperId,
item.PaperName,
item.CreateTimeStr,
item.CreateByName,
});
}
pageModel.Count = rowsCount;
pageModel.PageData = result;
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 添加修改试卷
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetPaper()
{
var extModel = new RB_Examination_Paper_ViewModel()
{
PaperId = base.ParmJObj.GetInt("PaperId"),
PaperName = base.ParmJObj.GetStringValue("PaperName"),
QuestionBandIds = base.ParmJObj.GetStringValue("QuestionBandIds"),
DifficultyType=(DifficultyTypeEnum)base.ParmJObj.GetInt("DifficultyType"),
CreateBy = UserInfo.Id,
CreateTime = DateTime.Now,
Group_Id = base.UserInfo.Group_Id,
};
extModel.GroupList = new List<RB_Examination_Group_ViewModel>();
string groups = base.ParmJObj.GetStringValue("GroupList");
if (!string.IsNullOrEmpty(groups))
{
JArray jarray = JArray.Parse(groups);
if (jarray != null && jarray.Count > 0)
{
int gSortNum = 0;
foreach (var jItem in jarray)
{
JObject jobj = JObject.Parse(jItem.ToString());
RB_Examination_Group_ViewModel gModel = new RB_Examination_Group_ViewModel()
{
GId = jobj.GetInt("GId"),
PaperId = jobj.GetInt("PaperId"),
GroupName = jobj.GetStringValue("GroupName"),
QuestionTypeId = jobj.GetInt("QuestionTypeId"),
QuestionTypeKey = jobj.GetStringValue("QuestionTypeKey"),
GSortNum= gSortNum,
DetailsList = new List<RB_Examination_Details_ViewModel>(),
};
gSortNum++;
string details = jobj.GetStringValue("DetailsList");
if (!string.IsNullOrEmpty(details))
{
JArray subArray = JArray.Parse(details);
int dSortNum = 0;
foreach (var sItem in subArray)
{
JObject sObj = JObject.Parse(sItem.ToString());
var detailModel = new RB_Examination_Details_ViewModel()
{
Id = sObj.GetInt("Id"),
PaperId = sObj.GetInt("PaperId"),
BankId = sObj.GetInt("BankId"),
QuestionId = sObj.GetInt("QuestionId"),
Title = sObj.GetStringValue("Title"),
QuestionContent = sObj.GetStringValue("QuestionContent"),
DifficultyType = (DifficultyTypeEnum)sObj.GetInt("DifficultyType"),
AnswerParse = sObj.GetStringValue("AnswerParse"),
QuestionTypeId = sObj.GetInt("QuestionTypeId"),
QuestionTypeKey = sObj.GetStringValue("QuestionTypeKey"),
Knowledge = sObj.GetStringValue("Knowledge"),
CreateBy = base.UserInfo.Id,
CreateTime = DateTime.Now,
UpdateBy = base.UserInfo.Id,
UpdateTime = DateTime.Now,
IsUpdateJobExam = sObj.GetInt("IsUpdateJobExam"),
Status = Common.Enum.DateStateEnum.Normal,
SortNum = dSortNum,
Answer = sObj.GetStringValue("Answer"),
IsMutex = sObj.GetInt("IsMutex"),
Category = (QuestionCategoryEnum)sObj.GetInt("Category"),
LevelType = (LevelTypeEnum)sObj.GetInt("LevelType"),
Score = sObj.GetDecimal("Score"),
};
dSortNum++;
gModel.DetailsList.Add(detailModel);
}
}
extModel.GroupList.Add(gModel);
}
}
}
bool flag = paperModule.SetExaminationPaperModule(extModel);
return flag ? ApiResult.Success(data: extModel) : ApiResult.Failed();
}
/// <summary>
/// 根据编号获取试卷信息
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetPaper()
{
var PaperId = base.ParmJObj.GetInt("PaperId");
var model = paperModule.GetExaminationPaperModule(PaperId);
return ApiResult.Success(data: model);
}
/// <summary>
/// 根据编号删除试卷题目
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult DeletePaperQuestion()
{
var PaperId = base.ParmJObj.GetInt("PaperId");
var model = paperModule.RemoveExaminationDetailsModule(PaperId);
return ApiResult.Success(data: model);
}
}
}
......@@ -41,6 +41,7 @@
<ProjectReference Include="..\Edu.Module.Course\Edu.Module.Course.csproj" />
<ProjectReference Include="..\Edu.Module.Duty\Edu.Module.Duty.csproj" />
<ProjectReference Include="..\Edu.Module.EduTask\Edu.Module.EduTask.csproj" />
<ProjectReference Include="..\Edu.Module.Exam\Edu.Module.Exam.csproj" />
<ProjectReference Include="..\Edu.Module.Finance\Edu.Module.Finance.csproj" />
<ProjectReference Include="..\Edu.Module.OKR\Edu.Module.OKR.csproj" />
<ProjectReference Include="..\Edu.Module.Public\Edu.Module.Public.csproj" />
......
......@@ -68,6 +68,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Edu.Module.EduTask", "Edu.M
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Edu.Module.QYWeChat", "Edu.Module.QYWeChat\Edu.Module.QYWeChat.csproj", "{00E05F5A-A5B7-46ED-AE5F-9D54D67FA78F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Edu.Module.Exam", "Edu.Module.Exam\Edu.Module.Exam.csproj", "{81C24D63-1109-4476-99AB-590EF54972E5}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
......@@ -166,6 +168,10 @@ Global
{00E05F5A-A5B7-46ED-AE5F-9D54D67FA78F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{00E05F5A-A5B7-46ED-AE5F-9D54D67FA78F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{00E05F5A-A5B7-46ED-AE5F-9D54D67FA78F}.Release|Any CPU.Build.0 = Release|Any CPU
{81C24D63-1109-4476-99AB-590EF54972E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{81C24D63-1109-4476-99AB-590EF54972E5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{81C24D63-1109-4476-99AB-590EF54972E5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{81C24D63-1109-4476-99AB-590EF54972E5}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......@@ -192,6 +198,7 @@ Global
{43408243-8E36-4F9E-84C0-998CE383EC53} = {7AC0A4EC-3215-4FF2-96DC-DE8325ED6915}
{FEDB8D19-2C7E-4393-8D91-332256EC89CC} = {7AC0A4EC-3215-4FF2-96DC-DE8325ED6915}
{00E05F5A-A5B7-46ED-AE5F-9D54D67FA78F} = {7AC0A4EC-3215-4FF2-96DC-DE8325ED6915}
{81C24D63-1109-4476-99AB-590EF54972E5} = {7AC0A4EC-3215-4FF2-96DC-DE8325ED6915}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {8763B446-FAB1-46BF-9743-F2628533241B}
......
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