mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-07 01:46:47 +08:00
课程权限学习路径图保持一致
This commit is contained in:
@@ -262,7 +262,10 @@ public class CourseServiceImpl implements ICourseService {
|
||||
public PageList<Course> findPage(int pageIndex, int pageSize, CourseQueryDto dto) {
|
||||
List<IFieldFilter> filters = createFilters(dto);
|
||||
List<IFieldFilter> filters2 = createFilters(dto);
|
||||
List<String> list = getStrings(dto);
|
||||
List<String> list1 = getProject(dto);
|
||||
List<String> list2 = getRouter(dto);
|
||||
Set<String> list = new HashSet<>(list1);
|
||||
list.addAll(list2);
|
||||
//有权限的查询,也同时查询出创建人的数据,在权限上
|
||||
if(TempFilterConfig.Manager_CourseFile_ByOrgIds) {
|
||||
if(dto.getIsSystemAdmin()==null || !dto.getIsSystemAdmin()) {
|
||||
@@ -347,7 +350,72 @@ public class CourseServiceImpl implements ICourseService {
|
||||
return rs;
|
||||
}
|
||||
|
||||
private List<String> getStrings(CourseQueryDto dto) {
|
||||
private List<String> getRouter(CourseQueryDto dto) {
|
||||
List<Long> list=new ArrayList<>();
|
||||
if(StringUtil.isNotBlank(dto.getOrgIds())){
|
||||
if(dto.getOrgIds().contains(",")){
|
||||
String[] split = dto.getOrgIds().split(",");
|
||||
List<String> strings = Arrays.asList(split);
|
||||
String sql = "SELECT DISTINCT\n" +
|
||||
"rt.course_id\n" +
|
||||
"FROM\n" +
|
||||
"boe.student s INNER JOIN boe.router_task rt on s.pid=rt.router_id inner join boe_base.boe_course c on c.id=rt.course_id\n" +
|
||||
"\n" +
|
||||
"WHERE\n" +
|
||||
"\n" +
|
||||
"s.deleted = 0 \n" +
|
||||
"and rt.deleted=0\n" +
|
||||
"and rt.type=1\n" +
|
||||
"and c.deleted=0\n" +
|
||||
"AND s.type =2 \n" +
|
||||
"AND s.student_id = ?1\n" +
|
||||
"and c.org_id not in(?2)\n" +
|
||||
"and c.sys_create_aid !=?3";
|
||||
list = courseTeacherDao.sqlFindList(sql, dto.getOrgAid(),strings,dto.getOrgAid());
|
||||
}
|
||||
else {
|
||||
String sql = "SELECT DISTINCT\n" +
|
||||
"rt.course_id\n" +
|
||||
"FROM\n" +
|
||||
"boe.student s INNER JOIN boe.router_task rt on s.pid=rt.router_id inner join boe_base.boe_course c on c.id=rt.course_id\n" +
|
||||
"\n" +
|
||||
"WHERE\n" +
|
||||
"\n" +
|
||||
"s.deleted = 0 \n" +
|
||||
"and rt.deleted=0\n" +
|
||||
"and rt.type=1\n" +
|
||||
"and c.deleted=0\n" +
|
||||
"AND s.type =2 \n" +
|
||||
"AND s.student_id = ?1\n" +
|
||||
"and c.org_id !=?2\n" +
|
||||
"and c.sys_create_aid !=?3";
|
||||
list = courseTeacherDao.sqlFindList(sql, dto.getOrgAid(), dto.getOrgIds(),dto.getOrgAid());
|
||||
}
|
||||
}else {
|
||||
String sql = "SELECT DISTINCT\n" +
|
||||
"rt.course_id\n" +
|
||||
"FROM\n" +
|
||||
"boe.student s INNER JOIN boe.router_task rt on s.pid=rt.router_id inner join boe_base.boe_course c on c.id=rt.course_id\n" +
|
||||
"\n" +
|
||||
"WHERE\n" +
|
||||
"\n" +
|
||||
"s.deleted = 0 \n" +
|
||||
"and rt.deleted=0\n" +
|
||||
"and rt.type=1\n" +
|
||||
"and c.deleted=0\n" +
|
||||
"AND s.type =2 \n" +
|
||||
"AND s.student_id = ?1\n" +
|
||||
"and c.sys_create_aid !=?2";
|
||||
list = courseTeacherDao.sqlFindList(sql, dto.getOrgAid(),dto.getOrgAid());
|
||||
}
|
||||
List<String>list1=new ArrayList<>();
|
||||
for (Object obj : list) {
|
||||
list1.add(obj.toString());
|
||||
}
|
||||
|
||||
return list1;
|
||||
}
|
||||
private List<String> getProject(CourseQueryDto dto) {
|
||||
List<Long> list=new ArrayList<>();
|
||||
if(StringUtil.isNotBlank(dto.getOrgIds())){
|
||||
if(dto.getOrgIds().contains(",")){
|
||||
@@ -362,8 +430,9 @@ public class CourseServiceImpl implements ICourseService {
|
||||
"\n" +
|
||||
"s.deleted = 0 \n" +
|
||||
"and pt.deleted=0\n" +
|
||||
"and pt.type=1\n" +
|
||||
"and c.deleted=0\n" +
|
||||
"AND s.type in (1,2) \n" +
|
||||
"AND s.type =1 \n" +
|
||||
"AND s.student_id = ?1\n" +
|
||||
"and c.org_id not in(?2)\n" +
|
||||
"and c.sys_create_aid !=?3";
|
||||
@@ -379,8 +448,9 @@ public class CourseServiceImpl implements ICourseService {
|
||||
"\n" +
|
||||
"s.deleted = 0 \n" +
|
||||
"and pt.deleted=0\n" +
|
||||
"and pt.type=1\n" +
|
||||
"and c.deleted=0\n" +
|
||||
"AND s.type in (1,2) \n" +
|
||||
"AND s.type =1 \n" +
|
||||
"AND s.student_id = ?1\n" +
|
||||
"and c.org_id !=?2\n" +
|
||||
"and c.sys_create_aid !=?3";
|
||||
@@ -396,20 +466,20 @@ public class CourseServiceImpl implements ICourseService {
|
||||
"\n" +
|
||||
"s.deleted = 0 \n" +
|
||||
"and pt.deleted=0\n" +
|
||||
"and pt.type=1\n" +
|
||||
"and c.deleted=0\n" +
|
||||
"AND s.type in (1,2) \n" +
|
||||
"AND s.type =1 \n" +
|
||||
"AND s.student_id = ?1\n" +
|
||||
"and c.sys_create_aid !=?2";
|
||||
list = courseTeacherDao.sqlFindList(sql, dto.getOrgAid(),dto.getOrgAid());
|
||||
}
|
||||
List<String>list1=new ArrayList<>();
|
||||
List<String>list1=new ArrayList<>();
|
||||
for (Object obj : list) {
|
||||
list1.add(obj.toString());
|
||||
}
|
||||
|
||||
return list1;
|
||||
}
|
||||
|
||||
public static <T> List<T> paginate(List<T> list, int pageNumber, int pageSize) {
|
||||
if (list == null || list.isEmpty() || pageNumber <= 0 || pageSize <= 0) {
|
||||
return null;
|
||||
|
||||
Reference in New Issue
Block a user