|
|
@@ -1,9 +1,11 @@
|
|
|
package cn.iselab.mooctest.site.service.impl;
|
|
|
|
|
|
import cn.iselab.mooctest.site.common.constant.SubsiteConstants;
|
|
|
+import cn.iselab.mooctest.site.common.constant.ThirdPartConstants;
|
|
|
import cn.iselab.mooctest.site.dao.Exam2PaperDao;
|
|
|
import cn.iselab.mooctest.site.dao.PaperDao;
|
|
|
import cn.iselab.mooctest.site.dao.Task2CaseDao;
|
|
|
+import cn.iselab.mooctest.site.dao.UserDao;
|
|
|
import cn.iselab.mooctest.site.models.*;
|
|
|
import cn.iselab.mooctest.site.service.BaseService;
|
|
|
import cn.iselab.mooctest.site.service.PaperService;
|
|
|
@@ -45,6 +47,8 @@ public class PaperServiceImpl extends BaseService implements PaperService {
|
|
|
TaskService taskService;
|
|
|
@Autowired
|
|
|
private CaseBlockVOWrapper caseBlockVOWrapper;
|
|
|
+ @Autowired
|
|
|
+ private UserDao userDao;
|
|
|
|
|
|
@Override
|
|
|
public Paper getById(long paperId) {
|
|
|
@@ -168,6 +172,7 @@ public class PaperServiceImpl extends BaseService implements PaperService {
|
|
|
}
|
|
|
|
|
|
private Specification<Paper> getWhereClause(Long ownerId, String keyword) {
|
|
|
+ User thirdUser = userDao.findByEmail(ThirdPartConstants.THIRDEMAIL);
|
|
|
return new Specification<Paper>() {
|
|
|
@Override
|
|
|
public Predicate toPredicate(Root<Paper> a, CriteriaQuery<?> q, CriteriaBuilder cb) {
|
|
|
@@ -176,6 +181,12 @@ public class PaperServiceImpl extends BaseService implements PaperService {
|
|
|
predicate.getExpressions().add(
|
|
|
cb.equal(a.<Long>get("ownerId"), ownerId)
|
|
|
);
|
|
|
+ }else {
|
|
|
+ if(thirdUser!=null) {
|
|
|
+ predicate.getExpressions().add(
|
|
|
+ cb.notEqual(a.get("ownerId"), thirdUser.getId())
|
|
|
+ );
|
|
|
+ }
|
|
|
}
|
|
|
if(keyword!=null) {
|
|
|
predicate.getExpressions().add(
|