Эх сурвалжийг харах

3.2.2-查询考试增加模式条件

xiaof 2 жил өмнө
parent
commit
c104222f37

+ 5 - 4
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/BasicExamService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.distributed.print.business.bean.dto.BasicExamDto;
 import com.qmth.teachcloud.common.entity.BasicExam;
+import com.qmth.teachcloud.common.enums.ExamModelEnum;
 
 import java.util.List;
 
@@ -33,10 +34,11 @@ public interface BasicExamService extends IService<BasicExam> {
     /**
      * 查询学期
      *
-     * @param semesterId
-     * @param inUsed 是否当前使用考试
+     * @param semesterId 学期ID
+     * @param examModels 需要查询的模式集合
+     * @param inUsed     是否当前使用考试
      */
-    List<BasicExam> query(Long semesterId, Boolean inUsed);
+    List<BasicExam> query(Long semesterId, List<ExamModelEnum> examModels, Boolean inUsed);
 
     /**
      * 设置当前使用考试
@@ -57,7 +59,6 @@ public interface BasicExamService extends IService<BasicExam> {
 
     /**
      * 启用/禁用
-     *
      */
     boolean enable(Long id, Boolean enable);
 }

+ 5 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/BasicExamServiceImpl.java

@@ -13,6 +13,7 @@ import com.qmth.distributed.print.business.service.ExamPrintPlanService;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.entity.BasicExam;
 import com.qmth.teachcloud.common.entity.SysUser;
+import com.qmth.teachcloud.common.enums.ExamModelEnum;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
 import com.qmth.teachcloud.common.util.ServletUtil;
 import org.apache.commons.lang3.StringUtils;
@@ -91,12 +92,15 @@ public class BasicExamServiceImpl extends ServiceImpl<BasicExamMapper, BasicExam
     }
 
     @Override
-    public List<BasicExam> query(Long semesterId, Boolean inUsed) {
+    public List<BasicExam> query(Long semesterId, List<ExamModelEnum> examModels, Boolean inUsed) {
         Long schoolId = SystemConstant.convertIdToLong(ServletUtil.getRequestHeaderSchoolId().toString());
         QueryWrapper<BasicExam> queryWrapper = new QueryWrapper<>();
         queryWrapper.lambda().eq(BasicExam::getSchoolId, schoolId)
                 .eq(BasicExam::getSemesterId, semesterId)
                 .eq(BasicExam::getEnable, true);
+        if (Objects.nonNull(examModels) && !examModels.isEmpty()) {
+            queryWrapper.lambda().in(BasicExam::getExamModel, examModels);
+        }
         if (Objects.nonNull(inUsed)) {
             queryWrapper.lambda().eq(BasicExam::getInUsed, inUsed);
         }

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

@@ -21,6 +21,7 @@
         SELECT
             ed.id examDetailId,
             ed.school_id schoolId,
+            ed.exam_id examId,
             a.id examDetailCourseId,
             a.course_code courseCode,
             a.course_name courseName,

+ 4 - 1
distributed-print/src/main/java/com/qmth/distributed/print/api/BasicExamController.java

@@ -6,6 +6,7 @@ import com.qmth.distributed.print.business.bean.result.EditResult;
 import com.qmth.distributed.print.business.service.BasicExamService;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.entity.BasicExam;
+import com.qmth.teachcloud.common.enums.ExamModelEnum;
 import com.qmth.teachcloud.common.util.Result;
 import com.qmth.teachcloud.common.util.ResultUtil;
 import io.swagger.annotations.*;
@@ -16,6 +17,7 @@ import javax.annotation.Resource;
 import javax.validation.Valid;
 import javax.validation.constraints.Max;
 import javax.validation.constraints.Min;
+import java.util.List;
 
 /**
  * <p>
@@ -56,8 +58,9 @@ public class BasicExamController {
     @RequestMapping(value = "/query", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
     public Result query(@RequestParam(value = "semesterId", required = false) Long semesterId,
+                        @RequestParam(value = "examModel", required = false) List<ExamModelEnum> examModels,
                         @RequestParam(value = "inUsed", required = false) Boolean inUsed) {
-        return ResultUtil.ok(basicExamService.query(semesterId, inUsed));
+        return ResultUtil.ok(basicExamService.query(semesterId, examModels, inUsed));
     }
 
     /**