课程场景下课程新增排序

master
xiaochanghai 5 months ago
parent 4520a040ed
commit 001f8b6b2f
  1. 12
      Tiobon.Core.Api/Controllers/Ghre/Ghre_CourseController.cs
  2. 2
      Tiobon.Core.IServices/Ghre/IGhre_CourseServices.cs
  3. 26
      Tiobon.Core.Services/Ghre/Ghre_CourseServices.cs

@ -80,4 +80,16 @@ public class Ghre_CourseController : BaseController<IGhre_CourseServices, Ghre_C
{ {
return await _service.QueryPublic(body); return await _service.QueryPublic(body);
} }
[HttpPost, Route("QueryBySceneId/{courseSceneId}")]
public async Task<ServiceResult<List<Ghre_CourseDto>>> QueryBySceneId(long courseSceneId)
{
return await _service.QueryBySceneId(courseSceneId);
}
[HttpPost, Route("ModifyCourseSortNo")]
public async Task<ServiceResult> ModifyCourseSortNo([FromBody] List<Ghre_Course> courses)
{
return await _service.ModifyCourseSortNo(courses);
}
} }

@ -23,5 +23,7 @@ public interface IGhre_CourseServices : IBaseServices<Ghre_Course, Ghre_CourseDt
Task<ServiceResult<CoursePublicSearch>> QueryPublicSearchFields(QueryBody body); Task<ServiceResult<CoursePublicSearch>> QueryPublicSearchFields(QueryBody body);
Task<ServicePageResult<CoursePublic>> QueryPublic(QueryBody filter); Task<ServicePageResult<CoursePublic>> QueryPublic(QueryBody filter);
Task<ServiceResult<List<Ghre_CourseDto>>> QueryBySceneId(long courseSceneId);
Task<ServiceResult> ModifyCourseSortNo(List<Ghre_Course> courses);
} }

@ -1130,4 +1130,30 @@ public class Ghre_CourseServices : BaseServices<Ghre_Course, Ghre_CourseDto, Ins
return new ServicePageResult<CoursePublic>(filter.pageNum, totalCount, filter.pageSize, data); return new ServicePageResult<CoursePublic>(filter.pageNum, totalCount, filter.pageSize, data);
} }
#endregion #endregion
#region 场景ID获取课程
public async Task<ServiceResult<List<Ghre_CourseDto>>> QueryBySceneId(long courseSceneId)
{
var entitys = await base.Query(x => x.CourseSceneId == courseSceneId);
var courseWareIds = entitys.Select(x => x.CourseWareId).Distinct().ToList();
var attachments = await Db.Queryable<Ghre_CourseWareAttachment>().Where(x => courseWareIds.Contains(x.CourseWareId)).ToListAsync();
//var attachments = await _ghre_CourseWareAttachmentServices.Query(x => x.CourseWareId != null && attachmentIds.Contains(x.CourseWareId.Value));
var entitys1 = Mapper.Map(entitys).ToANew<List<Ghre_CourseDto>>();
entitys1.ForEach(x =>
{
x.CourseWareName = string.Join(",", attachments.Where(o => o.CourseWareId == x.CourseWareId).OrderBy(x => x.SortNo).Select(o => o.AttachmentName));
});
return ServiceResult<List<Ghre_CourseDto>>.OprateSuccess("查询成功", entitys1);
}
#endregion
#region 修改场景下课程顺序
public async Task<ServiceResult> ModifyCourseSortNo(List<Ghre_Course> courses)
{
await Db.Updateable(courses).UpdateColumns(it => new { it.SortNo }).ExecuteCommandAsync();
return ServiceResult.OprateSuccess("执行成功!");
}
#endregion
} }
Loading…
Cancel
Save