fix:【FCJDFDXTXS-190】报名记录导出接口,添加在学习记录中添加单独查询字段signUpAid,只查询有报名数据aid的用户

This commit is contained in:
miaowenbo
2025-12-18 18:35:59 +08:00
parent 9b0d5ada4d
commit ef30ee17c3
2 changed files with 15 additions and 0 deletions

View File

@@ -404,6 +404,16 @@ public class StudyCourseApi extends ApiBaseController{
}
}
// 3.查询课程学习记录信息并拼接导出信息
// 25.12.28新增逻辑:要求管理页面-报名记录,删除报名记录后,学习记录和资源学习情况需要删除,并可以恢复
// 实现方案是仅查询已报名aid的学习记录信息
// 查询报名记录
StudySignup studySignup = new StudySignup();
studySignup.setCourseId(sc.getCourseId());
List<StudySignup> signRecordList = signupService.findList(studySignup, null);
if (signRecordList != null && !signRecordList.isEmpty()) {
// 转为逗号分隔格式
sc.setSignUpAid(signRecordList.stream().map(StudySignup::getAid).collect(Collectors.joining(",")));
}
List<StudyCourse> studyCourses = service.findList(sc, null, null);
// 通过studyCourses中的人员id集合(去重),调用用户中心接口获取人员信息,填充部门字段
List<String> userIds = studyCourses.stream().map(StudyCourse::getAid).filter(Objects::nonNull).collect(Collectors.toList());

View File

@@ -864,6 +864,11 @@ public class StudyCourseServiceImpl implements IStudyCourseService{
if (StringUtils.isNotBlank(sc.getAid())) {
query.addFilter(FieldFilters.eq("aid", sc.getAid()));
}
//25.12.11新增添加根据用户aid通过逗号分隔查询
if (StringUtils.isNotBlank(sc.getSignUpAid())) {
String signUpAid = sc.getSignUpAid();
query.addFilter(FieldFilters.in("aid", signUpAid.split(",")));
}
}
if (isFinish != null) {
if (isFinish) {