diff --git a/Tiobon.Core.Api/Tiobon.Core.Model.xml b/Tiobon.Core.Api/Tiobon.Core.Model.xml index 282597a8..f207d8f1 100644 --- a/Tiobon.Core.Api/Tiobon.Core.Model.xml +++ b/Tiobon.Core.Api/Tiobon.Core.Model.xml @@ -5015,6 +5015,16 @@ 预留字段12 + + + 课程ID + + + + + 课程场景ID + + 开班打卡 (Dto.Base) diff --git a/Tiobon.Core.Services/Ghre/Ghre_CourseServices.cs b/Tiobon.Core.Services/Ghre/Ghre_CourseServices.cs index d0093c00..972aefeb 100644 --- a/Tiobon.Core.Services/Ghre/Ghre_CourseServices.cs +++ b/Tiobon.Core.Services/Ghre/Ghre_CourseServices.cs @@ -271,6 +271,58 @@ public class Ghre_CourseServices : BaseServices QueryById(object objId) + { + var data = await base.QueryById(objId); + var DT_TableDataT1 = Mapper.Map(data).ToANew(); + string examPaperId = DT_TableDataT1.ExamPaperId; + + var classsIds = new List(); + + var courseClassIds = JsonConvert.DeserializeObject>(DT_TableDataT1.CourseClassId); + classsIds = classsIds.Concat(courseClassIds).ToList(); + classsIds = classsIds.Distinct().ToList(); + var classs = await _ghre_CourseClassServices.Query(x => classsIds.Contains(x.Id)); + var courseSceneIds = new List(); + + courseSceneIds = courseSceneIds.Concat(JsonConvert.DeserializeObject>(DT_TableDataT1.CourseSceneIds)).ToList(); + + courseSceneIds = courseSceneIds.Distinct().ToList(); + var courseScenes = await Db.Queryable().Where(x => courseSceneIds.Contains(x.Id)).ToListAsync(); + + DT_TableDataT1.ChargeMethodLabel = await GetParaLabel("CourseChargeMethod", DT_TableDataT1.ChargeMethod); + DT_TableDataT1.InOrOutLabel = await GetParaLabel("CourseInOrOut", DT_TableDataT1.InOrOut); + DT_TableDataT1.IsOPenLabel = DT_TableDataT1.IsOpen == "1" ? "是" : "否"; + + var courseClass = classs.Where(a => DT_TableDataT1.CourseClassId.Contains(a.Id.ToString())).ToList(); + DT_TableDataT1.CourseClassName = string.Join(",", courseClass.Select(a => a.ClassName + " (" + a.ClassNo + ")")); + if (DT_TableDataT1.CourseSceneIds.IsNotEmptyOrNull()) + { + var courseScene = courseScenes.Where(a => DT_TableDataT1.CourseSceneIds.Contains(a.Id.ToString())).ToList(); + DT_TableDataT1.CourseSceneName = string.Join(",", courseScene.Select(a => a.SceneName + " (" + a.SceneNo + ")")); + } + + if (!string.IsNullOrWhiteSpace(examPaperId)) + DT_TableDataT1.ExamPaperIds = JsonConvert.DeserializeObject>(examPaperId); + + string courseClassId = DT_TableDataT1.CourseClassId; + if (!string.IsNullOrWhiteSpace(courseClassId)) + DT_TableDataT1.CourseClassIds = JsonConvert.DeserializeObject>(courseClassId); + + string courseSceneIds1 = DT_TableDataT1.CourseSceneIds; + if (!string.IsNullOrWhiteSpace(courseSceneIds1)) + DT_TableDataT1.CourseSceneIds1 = JsonConvert.DeserializeObject>(courseSceneIds1); + + else DT_TableDataT1.ExamPaperIds = new List(); + + DT_TableDataT1.IsOPenLabel = DT_TableDataT1.IsOpen == "1" ? "是" : "否"; + if (DT_TableDataT1.ManagerId != null) + DT_TableDataT1.ManagerStaffName = (await Db.Queryable().Where(x => x.StaffID == DT_TableDataT1.ManagerId).FirstAsync())?.StaffName; + if (DT_TableDataT1.CourseWareId != null) + DT_TableDataT1.CourseWareName = (await Db.Queryable().Where(x => x.Id == DT_TableDataT1.CourseWareId).FirstAsync())?.CourseWareName; + + return DT_TableDataT1; + } public async Task UpdateStatus(long[] ids, string status) { diff --git a/Tiobon.Core/Tiobon.Core.Model.xml b/Tiobon.Core/Tiobon.Core.Model.xml index 6f93837d..f207d8f1 100644 --- a/Tiobon.Core/Tiobon.Core.Model.xml +++ b/Tiobon.Core/Tiobon.Core.Model.xml @@ -4900,11 +4900,26 @@ 学员群组ID + + + 开班通知模板ID + + 开班通知内容 + + + 讲师开班通知模板ID + + + + + 讲师开班通知内容 + + 总结 @@ -19641,11 +19656,26 @@ 学员群组ID + + + 开班通知模板ID + + 开班通知内容 + + + 讲师开班通知模板ID + + + + + 讲师开班通知内容 + + 总结