xiaofei hai 10 meses
pai
achega
6a569bf565

+ 2 - 0
paper-library-business/src/main/java/com/qmth/paper/library/business/mapper/PictureManageMapper.java

@@ -24,4 +24,6 @@ public interface PictureManageMapper {
             @Param(value = "param") String param, @Param(value = "minScore") Double minScore,
             @Param(value = "maxScore") Double maxScore, @Param(value = "pictureSymbol") String pictureSymbol,
             @Param(value = "pictureCount") Integer pictureCount);
+
+    List<PictureManageDetailResult> pageDataByStudentIds(@Param("studentIds") List<Long> studentIds);
 }

+ 2 - 15
paper-library-business/src/main/java/com/qmth/paper/library/business/service/impl/PictureManageServiceImpl.java

@@ -77,21 +77,8 @@ public class PictureManageServiceImpl implements PictureManageService {
 
     @Override
     public List<PictureManageDetailResult> listPictureResult(DownloadPictureParams params) {
-        List<Long> semesterIds = params.getSemesterIds();
-        List<Long> examIds = params.getExamIds();
-        List<String> courseCodes = params.getCourseCodes();
-        List<String> collegeNames = params.getCollegeNames();
-        List<String> majorNames = params.getMajorNames();
-        List<String> classNames = params.getClassNames();
-        String teacher = params.getTeacher();
-        String teachClass = params.getTeachClass();
-        String param = params.getParam();
-        Double minScore = params.getMinScore();
-        Double maxScore = params.getMaxScore();
-        String pictureSymbol = params.getPictureSymbol();
-        Integer pictureCount = params.getPictureCount();
-        List<PictureManageDetailResult> pictureList = pictureManageMapper.pageData(semesterIds, examIds, courseCodes, collegeNames, majorNames,
-                classNames, teacher, teachClass, param, minScore, maxScore, pictureSymbol, pictureCount);
+        List<Long> studentIds = params.getStudentIds();
+        List<PictureManageDetailResult> pictureList = pictureManageMapper.pageDataByStudentIds(studentIds);
         for (PictureManageDetailResult result : pictureList) {
             //一个考生 可能会存在多个批次号
             List<String> batchNoList = paperLibraryService.listBatchNo(result.getStudentId());

+ 30 - 0
paper-library-business/src/main/resources/mapper/PictureManageMapper.xml

@@ -74,5 +74,35 @@
         </if>
         order by es.student_code
     </select>
+    <select id="pageDataByStudentIds" resultType="com.qmth.paper.library.business.bean.result.PictureManageDetailResult">
+        SELECT
+            es.id studentId,
+            es.exam_id examId,
+            es.student_name studentName,
+            es.student_code studentCode,
+            bs.NAME semesterName,
+            ea.NAME examName,
+            es.course_code courseCode,
+            es.course_name courseName,
+            es.teacher,
+            es.teach_class teachClass,
+            es.college_name collegeName,
+            es.major_name majorName,
+            es.class_name className,
+            es.exam_room examRoom,
+            es.score,
+            es.remark,
+            es.bind_count bindCount
+        FROM
+            exam_student es
+            left join basic_exam ea on es.exam_id = ea.id
+            left join basic_semester bs on es.semester_id = bs.id
+        WHERE es.bind_count>0
+        AND es.id in
+        <foreach collection="studentIds" separator="," open="(" close=")" item="studentId">
+            #{studentId}
+        </foreach>
+        order by es.student_code
+    </select>
 
 </mapper>

+ 6 - 139
paper-library-common/src/main/java/com/qmth/paper/library/common/bean/params/DownloadPictureParams.java

@@ -12,147 +12,14 @@ public class DownloadPictureParams implements Serializable {
 
     private static final long serialVersionUID = 1L;
 
-    @ApiModelProperty("学期IDS")
-    private List<Long> semesterIds;
+    @ApiModelProperty("考生ID集合")
+    private List<Long> studentIds;
 
-    @ApiModelProperty("考试IDS")
-    private List<Long> examIds;
-
-    @ApiModelProperty("课程代码")
-    private List<String> courseCodes;
-
-    @ApiModelProperty("学院")
-    private List<String> collegeNames;
-
-    @ApiModelProperty("专业")
-    private List<String> majorNames;
-
-    @ApiModelProperty("班级")
-    private List<String> classNames;
-
-    @ApiModelProperty("任课老师")
-    private String teacher;
-
-    @ApiModelProperty("教学班")
-    private String teachClass;
-
-    @ApiModelProperty("姓名或学号")
-    private String param;
-
-    @ApiModelProperty("成绩(小)")
-    private Double minScore;
-
-    @ApiModelProperty("成绩(大)")
-    private Double maxScore;
-
-    @ApiModelProperty("大于、等于、小于、不等于")
-    private String pictureSymbol;
-
-    @ApiModelProperty("图片张数")
-    private Integer pictureCount;
-
-    public List<Long> getSemesterIds() {
-        return semesterIds;
-    }
-
-    public void setSemesterIds(List<Long> semesterIds) {
-        this.semesterIds = semesterIds;
-    }
-
-    public List<Long> getExamIds() {
-        return examIds;
+    public List<Long> getStudentIds() {
+        return studentIds;
     }
 
-    public void setExamIds(List<Long> examIds) {
-        this.examIds = examIds;
+    public void setStudentIds(List<Long> studentIds) {
+        this.studentIds = studentIds;
     }
-
-    public List<String> getCourseCodes() {
-        return courseCodes;
-    }
-
-    public void setCourseCodes(List<String> courseCodes) {
-        this.courseCodes = courseCodes;
-    }
-
-    public List<String> getCollegeNames() {
-        return collegeNames;
-    }
-
-    public void setCollegeNames(List<String> collegeNames) {
-        this.collegeNames = collegeNames;
-    }
-
-    public List<String> getMajorNames() {
-        return majorNames;
-    }
-
-    public void setMajorNames(List<String> majorNames) {
-        this.majorNames = majorNames;
-    }
-
-    public List<String> getClassNames() {
-        return classNames;
-    }
-
-    public void setClassNames(List<String> classNames) {
-        this.classNames = classNames;
-    }
-
-    public String getTeacher() {
-        return teacher;
-    }
-
-    public void setTeacher(String teacher) {
-        this.teacher = teacher;
-    }
-
-    public String getTeachClass() {
-        return teachClass;
-    }
-
-    public void setTeachClass(String teachClass) {
-        this.teachClass = teachClass;
-    }
-
-    public String getParam() {
-        return param;
-    }
-
-    public void setParam(String param) {
-        this.param = param;
-    }
-
-    public Double getMinScore() {
-        return minScore;
-    }
-
-    public void setMinScore(Double minScore) {
-        this.minScore = minScore;
-    }
-
-    public Double getMaxScore() {
-        return maxScore;
-    }
-
-    public void setMaxScore(Double maxScore) {
-        this.maxScore = maxScore;
-    }
-
-    public String getPictureSymbol() {
-        return pictureSymbol;
-    }
-
-    public void setPictureSymbol(String pictureSymbol) {
-        this.pictureSymbol = pictureSymbol;
-    }
-
-    public Integer getPictureCount() {
-        return pictureCount;
-    }
-
-    public void setPictureCount(Integer pictureCount) {
-        this.pictureCount = pictureCount;
-    }
-
 }

+ 5 - 0
paper-library/src/main/java/com/qmth/paper/library/api/PictureManageController.java

@@ -11,12 +11,14 @@ import com.qmth.paper.library.common.contant.ApiPrefixConstant;
 import com.qmth.paper.library.common.contant.SystemConstant;
 import com.qmth.paper.library.common.entity.SysUser;
 import com.qmth.paper.library.common.entity.TBTask;
+import com.qmth.paper.library.common.enums.ExceptionResultEnum;
 import com.qmth.paper.library.common.enums.TaskTypeEnum;
 import com.qmth.paper.library.common.service.TBTaskService;
 import com.qmth.paper.library.common.util.Result;
 import com.qmth.paper.library.common.util.ResultUtil;
 import com.qmth.paper.library.common.util.ServletUtil;
 import io.swagger.annotations.*;
+import org.apache.commons.collections4.CollectionUtils;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -96,6 +98,9 @@ public class PictureManageController {
     @PostMapping("/download")
     @ApiResponses({ @ApiResponse(code = 200, message = "下载成功", response = EditResult.class) })
     public Result download(DownloadPictureParams params) {
+        if(CollectionUtils.isEmpty(params.getStudentIds())){
+            throw ExceptionResultEnum.ERROR.exception("请选择要下载数据");
+        }
         String pictureParams = JSON.toJSONString(params);
         Map<String, Object> map = tbTaskService.saveTask(TaskTypeEnum.PICTURE_DOWNLOAD, pictureParams, (SysUser) ServletUtil.getRequestUser());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());