试卷维护课程场景与课程关联

master
xiaochanghai 1 year ago
parent 457c8b1329
commit 6af03cc07f
  1. 14
      Tiobon.Core.Api/Controllers/Ghre/Ghre_CourseController.cs
  2. 7
      Tiobon.Core.Api/Tiobon.Core.xml
  3. 2
      Tiobon.Core.IServices/Ghre/IGhre_CourseServices.cs
  4. 60
      Tiobon.Core.Services/Ghre/Ghre_CourseServices.cs
  5. 8
      Tiobon.Core.Services/Ghre/Ghre_ExamPaperServices.cs
  6. 7
      Tiobon.Core/Tiobon.Core.xml

@ -46,4 +46,18 @@ public class Ghre_CourseController : BaseController<IGhre_CourseServices, Ghre_C
return await _service.UpdateStatus(ids, status); return await _service.UpdateStatus(ids, status);
} }
#endregion #endregion
#region 获取通用列表下拉
/// <summary>
/// 获取通用列表下拉
/// </summary>
/// <param name="linkId"></param>
/// <returns></returns>
[HttpPost, Route("QuerySelect")]
public async Task<ServiceResult<CommonSelect>> QuerySelectAsync(long? linkId)
{
return await _service.GetSelectAsync(linkId);
}
#endregion
} }

@ -588,6 +588,13 @@
<param name="body">条件</param> <param name="body">条件</param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Tiobon.Core.Api.Controllers.Ghre_CourseController.QuerySelectAsync(System.Nullable{System.Int64})">
<summary>
获取通用列表下拉
</summary>
<param name="linkId"></param>
<returns></returns>
</member>
<member name="T:Tiobon.Core.Api.Controllers.Ghre_CourseSceneController"> <member name="T:Tiobon.Core.Api.Controllers.Ghre_CourseSceneController">
<summary> <summary>
课程场景(Controller) 课程场景(Controller)

@ -16,5 +16,7 @@ namespace Tiobon.Core.IServices
Task<ServiceResult<int>> QueryDeptID(int StaffID); Task<ServiceResult<int>> QueryDeptID(int StaffID);
Task<ServiceResult<CommonSelect>> QueryTeacher(long? linkId); Task<ServiceResult<CommonSelect>> QueryTeacher(long? linkId);
Task<ServiceResult> UpdateStatus(long[] ids, string status); Task<ServiceResult> UpdateStatus(long[] ids, string status);
Task<ServiceResult<CommonSelect>> GetSelectAsync(long? linkId);
} }
} }

@ -361,4 +361,64 @@ public class Ghre_CourseServices : BaseServices<Ghre_Course, Ghre_CourseDto, Ins
editModel.ExamPaperId = JsonHelper.ObjToJson(editModel.ExamPaperIds); editModel.ExamPaperId = JsonHelper.ObjToJson(editModel.ExamPaperIds);
return await base.Update(Id, editModel); return await base.Update(Id, editModel);
} }
#region 获取通用列表下拉
/// <summary>
/// 获取通用列表下拉
/// </summary>
/// <param name="type"></param>
/// <returns></returns>
public async Task<ServiceResult<CommonSelect>> GetSelectAsync(long? linkId)
{
var result = new CommonSelect();
var TableColumn = new JArray();
var DT_TablePageInfoT1 = new JArray();
var DT_TableDataT1 = new JArray();
var searchItem = new JObject();
JObject item;
DataTable dt;
string sql;
searchItem = [
new JProperty("defaultHidden", true),
new JProperty("field","value"),
new JProperty("label","课程ID"),
];
TableColumn.Add(searchItem);
searchItem = [
new JProperty("field","label"),
new JProperty("label","课程名称"),
];
TableColumn.Add(searchItem);
sql = $"SELECT Id, CourseNo , CourseName FROM Ghre_Course WHERE Status ='Released' AND IsEnable=1";
if (linkId.HasValue)
sql += $" AND CourseSceneId='{linkId}'";
sql += $" ORDER BY UpdateTime DESC, CreateTime DESC";
dt = await Db.Ado.GetDataTableAsync(sql);
for (int i = 0; i < dt.Rows.Count; i++)
{
item = [
new JProperty("value",long.Parse(dt.Rows[i]["Id"].ToString())),
new JProperty("label", dt.Rows[i]["CourseName"].ToString() + "("+dt.Rows[i]["CourseNo"].ToString()+")")
];
DT_TableDataT1.Add(item);
}
item = [
new JProperty("ListMax",100),
new JProperty("ListMin",10),
new JProperty("PageNum",1),
new JProperty("PageSize",99999),
new JProperty("TotalCount",dt.Rows.Count),
new JProperty("UIType","Auto")
];
DT_TablePageInfoT1.Add(item);
result.JM_TableColumnT1.TableColumn = TableColumn;
result.DT_TableDataT1 = DT_TableDataT1;
result.DT_TablePageInfoT1 = DT_TablePageInfoT1;
return new ServiceResult<CommonSelect>() { Success = true, Message = "查询成功", Data = result, };
}
#endregion
} }

@ -5,7 +5,6 @@ using System.Text.RegularExpressions;
using AgileObjects.AgileMapper; using AgileObjects.AgileMapper;
using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Http;
using MongoDB.Driver.Linq; using MongoDB.Driver.Linq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
using SqlSugar; using SqlSugar;
using Tiobon.Core.Common; using Tiobon.Core.Common;
@ -307,7 +306,7 @@ namespace Tiobon.Core.Services
multipleSelect = false, multipleSelect = false,
editable = true, editable = true,
displayType=1, displayType=1,
dataSource = "api/Common/GetSelect/Ghre_Course?FW=DOTNETCORE" dataSource = "api/Ghre_Course/QuerySelect?FW=DOTNETCORE"
}, },
new DefaultGhre_ExamPaperColumn() new DefaultGhre_ExamPaperColumn()
{ {
@ -448,8 +447,8 @@ namespace Tiobon.Core.Services
baseData.RetakeTimes = exampaper.RetakeTimes; baseData.RetakeTimes = exampaper.RetakeTimes;
baseData.RemarkSz = exampaper.RemarkSz; baseData.RemarkSz = exampaper.RemarkSz;
baseData.LinkType = exampaper.LinkType; baseData.LinkType = exampaper.LinkType;
baseData.CourseId = exampaper.LinkId; baseData.CourseId = exampaper.LinkType == "CourseId" ? exampaper.LinkId : null;
baseData.CourseSceneId = exampaper.LinkId; baseData.CourseSceneId = exampaper.LinkType == "CourseSceneId" ? exampaper.LinkId : null;
input.pageData.baseData = baseData; input.pageData.baseData = baseData;
input.CreateDataInfo = exampaper.CreateDataInfo; input.CreateDataInfo = exampaper.CreateDataInfo;
input.UpdateDataInfo = exampaper.UpdateDataInfo; input.UpdateDataInfo = exampaper.UpdateDataInfo;
@ -604,6 +603,7 @@ namespace Tiobon.Core.Services
var insert = new InsertGhre_ExamPaperInput(); var insert = new InsertGhre_ExamPaperInput();
insert = Mapper.Map(insertModel.baseData).ToANew<InsertGhre_ExamPaperInput>(); insert = Mapper.Map(insertModel.baseData).ToANew<InsertGhre_ExamPaperInput>();
insert.PaperNo = await GenerateContinuousSequence("Ghre_ExamPaper", "PaperNo", "P"); insert.PaperNo = await GenerateContinuousSequence("Ghre_ExamPaper", "PaperNo", "P");
insert.LinkId = insertModel.baseData.LinkType == "CourseId" ? insertModel.baseData.CourseId : insertModel.baseData.CourseSceneId; insert.LinkId = insertModel.baseData.LinkType == "CourseId" ? insertModel.baseData.CourseId : insertModel.baseData.CourseSceneId;
insert.CoverUrl = insertModel.styleInfo.coverImage; insert.CoverUrl = insertModel.styleInfo.coverImage;

@ -588,6 +588,13 @@
<param name="body">条件</param> <param name="body">条件</param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Tiobon.Core.Api.Controllers.Ghre_CourseController.QuerySelectAsync(System.Nullable{System.Int64})">
<summary>
获取通用列表下拉
</summary>
<param name="linkId"></param>
<returns></returns>
</member>
<member name="T:Tiobon.Core.Api.Controllers.Ghre_CourseSceneController"> <member name="T:Tiobon.Core.Api.Controllers.Ghre_CourseSceneController">
<summary> <summary>
课程场景(Controller) 课程场景(Controller)

Loading…
Cancel
Save