优化课程查询接口场景显示

master
xiaochanghai 3 months ago
parent 82119ad8ac
commit 2234cef1b3
  1. 19
      Tiobon.Core.Services/Ghre/Ghre_CourseServices.cs

@ -161,6 +161,11 @@ public class Ghre_CourseServices : BaseServices<Ghre_Course, Ghre_CourseDto, Ins
courseSceneIds = courseSceneIds.Concat(JsonConvert.DeserializeObject<List<long>>(x)).ToList();
});
data.ForEach(x =>
{
if (x.CourseSceneId != null)
courseSceneIds.Add(x.CourseSceneId.Value);
});
courseSceneIds = courseSceneIds.Distinct().ToList();
var courseScenes = await Db.Queryable<Ghre_CourseScene>().Where(x => courseSceneIds.Contains(x.Id)).ToListAsync();
@ -172,11 +177,23 @@ public class Ghre_CourseServices : BaseServices<Ghre_Course, Ghre_CourseDto, Ins
x.IsOPenLabel = x.IsOpen == "1" ? "是" : "否";
var courseClass = classs.Where(a => x.CourseClassId.Contains(a.Id.ToString())).ToList();
x.CourseClassName = string.Join(",", courseClass.Select(a => a.ClassName + " (" + a.ClassNo + ")"));
if (x.CourseSceneIds.IsNotEmptyOrNull())
{
var courseScene = courseScenes.Where(a => x.CourseSceneIds.Contains(a.Id.ToString())).ToList();
x.CourseSceneIds1 = JsonConvert.DeserializeObject<List<long>>(x.CourseSceneIds);
if (x.CourseSceneIds1.Any())
{
var courseScene = courseScenes.Where(a => x.CourseSceneIds1.Contains(a.Id)).ToList();
x.CourseSceneName = string.Join(",", courseScene.Select(a => a.SceneName + " (" + a.SceneNo + ")"));
}
}
else if (x.CourseSceneId != null)
{
var courseScene = courseScenes.Where(a => a.Id == x.CourseSceneId).ToList();
x.CourseSceneName = string.Join(",", courseScene.Select(a => a.SceneName + " (" + a.SceneNo + ")"));
}
});
return new ServicePageResult<Ghre_CourseDto>(filter.pageNum, totalCount, filter.pageSize, data);

Loading…
Cancel
Save