xiaofei пре 2 година
родитељ
комит
c2f51870a0

+ 17 - 10
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamDetailServiceImpl.java

@@ -22,14 +22,8 @@ import com.qmth.teachcloud.common.bean.dto.DataPermissionRule;
 import com.qmth.teachcloud.common.bean.dto.MqDto;
 import com.qmth.teachcloud.common.bean.params.BasicStudentExtrasParam;
 import com.qmth.teachcloud.common.contant.SystemConstant;
-import com.qmth.teachcloud.common.entity.BasicAttachment;
-import com.qmth.teachcloud.common.entity.BasicClazz;
-import com.qmth.teachcloud.common.entity.SysUser;
-import com.qmth.teachcloud.common.entity.TBTask;
-import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
-import com.qmth.teachcloud.common.enums.MqTagEnum;
-import com.qmth.teachcloud.common.enums.PdfTypeEnum;
-import com.qmth.teachcloud.common.enums.TaskTypeEnum;
+import com.qmth.teachcloud.common.entity.*;
+import com.qmth.teachcloud.common.enums.*;
 import com.qmth.teachcloud.common.service.*;
 import com.qmth.teachcloud.common.util.ConvertUtil;
 import com.qmth.teachcloud.common.util.RedisUtil;
@@ -88,6 +82,9 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
     @Resource
     private BasicStudentService basicStudentService;
 
+    @Resource
+    private SysOrgService sysOrgService;
+
     @Resource
     TBTaskService tbTaskService;
 
@@ -363,9 +360,14 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
     @Override
     public List<String> findExamPlaceDatasource(String param, List<Long> printPlanIdList) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
+        SysOrg sysOrg = sysOrgService.getById(sysUser.getOrgId());
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
         QueryWrapper<ExamDetail> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(ExamDetail::getSchoolId, schoolId).in(ExamDetail::getOrgId, orgIds);
+        queryWrapper.lambda().eq(ExamDetail::getSchoolId, schoolId);
+        if(sysOrg != null && !OrgTypeEnum.PRINTING_HOUSE.equals(sysOrg.getType())){
+            queryWrapper.lambda().in(ExamDetail::getOrgId, orgIds);
+        }
         if (StringUtils.isNotBlank(param)) {
             queryWrapper.lambda().like(ExamDetail::getExamPlace, SystemConstant.translateSpecificSign(param));
         }
@@ -380,9 +382,14 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
     @Override
     public List<String> findExamRoomDatasource(String param, List<Long> printPlanIdList) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
+        SysOrg sysOrg = sysOrgService.getById(sysUser.getOrgId());
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
         QueryWrapper<ExamDetail> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(ExamDetail::getSchoolId, schoolId).in(ExamDetail::getOrgId, orgIds);
+        queryWrapper.lambda().eq(ExamDetail::getSchoolId, schoolId);
+        if(sysOrg != null && !OrgTypeEnum.PRINTING_HOUSE.equals(sysOrg.getType())){
+            queryWrapper.lambda().in(ExamDetail::getOrgId, orgIds);
+        }
         if (StringUtils.isNotBlank(param)) {
             queryWrapper.lambda().like(ExamDetail::getExamRoom, SystemConstant.translateSpecificSign(param));
         }

+ 3 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskServiceImpl.java

@@ -251,12 +251,14 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     @Override
     public List<String> listPaperNumber(String param, List<Long> printPlanIdList) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
+        SysOrg sysOrg = sysOrgService.getById(sysUser.getOrgId());
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
         if (printPlanIdList.size() == 0) {
             // 查询命题任务中的试卷编号
             QueryWrapper<ExamTask> queryWrapperExamTask = new QueryWrapper<>();
             queryWrapperExamTask.lambda().eq(ExamTask::getSchoolId, schoolId);
-            if (orgIds.size() > 0) {
+            if (sysOrg != null && !OrgTypeEnum.PRINTING_HOUSE.equals(sysOrg.getType()) && orgIds.size() > 0) {
                 queryWrapperExamTask.lambda().in(ExamTask::getOrgId, orgIds);
             }
             List<String> list = new ArrayList<>();

+ 4 - 7
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/PrintCommonServiceImpl.java

@@ -656,6 +656,7 @@ public class PrintCommonServiceImpl implements PrintCommonService {
     public List<BasicCourse> list(String param, List<Long> printPlanIdList, Long teachingRoomId) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        SysOrg sysOrg = sysOrgService.getById(requestUser.getOrgId());
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(teachingRoomId);
 //        DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
         /*if (Objects.nonNull(teachingRoomId)) {
@@ -666,14 +667,10 @@ public class PrintCommonServiceImpl implements PrintCommonService {
         if (CollectionUtils.isEmpty(printPlanIdList)) {
             QueryWrapper<BasicCourse> queryWrapper = new QueryWrapper<>();
             queryWrapper.lambda().eq(BasicCourse::getSchoolId, schoolId)
-                    .eq(BasicCourse::getEnable, true)
-                    .in(BasicCourse::getTeachingRoomId, orgIds);
-            /*if (SystemConstant.longNotNull(dpr.getRequestUserId())) {
-                queryWrapper.lambda().eq(BasicCourse::getCreateId, dpr.getRequestUserId());
+                    .eq(BasicCourse::getEnable, true);
+            if (sysOrg != null && !OrgTypeEnum.PRINTING_HOUSE.equals(sysOrg.getType())) {
+                queryWrapper.lambda().in(BasicCourse::getTeachingRoomId, orgIds);
             }
-            if (dpr.getOrgIdSet() != null && dpr.getOrgIdSet().size() > 0) {
-                queryWrapper.lambda().in(BasicCourse::getOrgId, dpr.getOrgIdSet());
-            }*/
             if (StringUtils.isNotBlank(param)) {
                 queryWrapper.lambda().and(i -> i.like(BasicCourse::getCode, SystemConstant.translateSpecificSign(param))
                         .or().like(BasicCourse::getName, SystemConstant.translateSpecificSign(param)));

+ 1 - 0
distributed-print-business/src/main/resources/mapper/ExamPrintPlanMapper.xml

@@ -345,6 +345,7 @@
                 c.print_plan_id,
                 GROUP_CONCAT(CONCAT(a.course_name, '(', a.course_code, ')')) courseNameCode,
                 GROUP_CONCAT(CONCAT(a.paper_number, ':', a.paper_type)) paperType,
+                GROUP_CONCAT(a.paper_number) paperNumber,
                 GROUP_CONCAT(IFNULL(a.paper_pages_a3, 0) + IFNULL(a.card_pages_a3, 0)) singlePagesA3,
                 SUM(CASE b.is_download
                     WHEN true THEN 0