ソースを参照

考生信息导入

haogh 1 年間 前
コミット
d17dc903bc

+ 34 - 0
src/main/java/com/qmth/exam/reserve/bean/studentimport/StudentImportTaskVO.java

@@ -0,0 +1,34 @@
+package com.qmth.exam.reserve.bean.studentimport;
+
+import com.qmth.exam.reserve.bean.IModel;
+import com.qmth.exam.reserve.enums.ImportStatus;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class StudentImportTaskVO implements IModel {
+
+    private static final long serialVersionUID = 6720458613472861727L;
+
+    @ApiModelProperty("ID")
+    private Long id;
+
+    @ApiModelProperty("任务名称")
+    private String name;
+
+    @ApiModelProperty("上传文件名称")
+    private String fileName;
+
+    @ApiModelProperty("状态")
+    private ImportStatus status;
+
+    @ApiModelProperty("异常信息")
+    private String message;
+
+    @ApiModelProperty("上传时间")
+    private Long uploadTime;
+
+}

+ 10 - 0
src/main/java/com/qmth/exam/reserve/controller/admin/StudentImportTaskController.java

@@ -7,6 +7,7 @@ import javax.servlet.http.HttpServletResponse;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
@@ -14,8 +15,11 @@ import org.springframework.web.multipart.MultipartFile;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.qmth.boot.api.annotation.Aac;
 import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.boot.core.collection.PageResult;
 import com.qmth.boot.core.exception.StatusException;
+import com.qmth.exam.reserve.bean.PagerReq;
 import com.qmth.exam.reserve.bean.login.LoginUser;
+import com.qmth.exam.reserve.bean.studentimport.StudentImportTaskVO;
 import com.qmth.exam.reserve.controller.BaseController;
 import com.qmth.exam.reserve.entity.StudentImportTaskEntity;
 import com.qmth.exam.reserve.enums.ImportStatus;
@@ -35,6 +39,12 @@ public class StudentImportTaskController extends BaseController {
     @Autowired
     private StudentImportTaskService studentImportService;
 
+    @ApiOperation(value = "考生信息导入分页列表")
+    @PostMapping(value = "/page")
+    public PageResult<StudentImportTaskVO> page(@RequestBody PagerReq req) {
+        return studentImportService.page(req);
+    }
+
     @ApiOperation(value = "考生信息模版下载")
     @GetMapping(value = "/import/template")
     public void downloadTemplate(HttpServletResponse response) {

+ 7 - 0
src/main/java/com/qmth/exam/reserve/dao/StudentImportTaskDao.java

@@ -1,8 +1,15 @@
 package com.qmth.exam.reserve.dao;
 
+import org.apache.ibatis.annotations.Param;
+
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmth.exam.reserve.bean.PagerReq;
+import com.qmth.exam.reserve.bean.studentimport.StudentImportTaskVO;
 import com.qmth.exam.reserve.entity.StudentImportTaskEntity;
 
 public interface StudentImportTaskDao extends BaseMapper<StudentImportTaskEntity> {
 
+    IPage<StudentImportTaskVO> page(Page<StudentImportTaskVO> page, @Param(value = "req") PagerReq req);
 }

+ 4 - 0
src/main/java/com/qmth/exam/reserve/enums/ImportStatus.java

@@ -23,4 +23,8 @@ public enum ImportStatus {
         }
         return null;
     }
+
+    public static void main(String[] args) {
+        System.out.println(ImportStatus.SUCCESS.name);
+    }
 }

+ 5 - 0
src/main/java/com/qmth/exam/reserve/service/StudentImportTaskService.java

@@ -3,10 +3,15 @@ package com.qmth.exam.reserve.service;
 import java.io.InputStream;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.qmth.boot.core.collection.PageResult;
+import com.qmth.exam.reserve.bean.PagerReq;
+import com.qmth.exam.reserve.bean.studentimport.StudentImportTaskVO;
 import com.qmth.exam.reserve.entity.StudentImportTaskEntity;
 
 public interface StudentImportTaskService extends IService<StudentImportTaskEntity> {
 
     void importStudent(Long operateId, String filePath, InputStream inputStream);
 
+    PageResult<StudentImportTaskVO> page(PagerReq req);
+
 }

+ 13 - 0
src/main/java/com/qmth/exam/reserve/service/impl/StudentImportTaskServiceImpl.java

@@ -6,12 +6,17 @@ import java.util.List;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qmth.boot.core.collection.PageResult;
 import com.qmth.boot.core.exception.StatusException;
 import com.qmth.boot.tools.excel.ExcelReader;
 import com.qmth.boot.tools.excel.enums.ExcelType;
 import com.qmth.boot.tools.excel.model.DataMap;
+import com.qmth.exam.reserve.bean.PagerReq;
+import com.qmth.exam.reserve.bean.studentimport.StudentImportTaskVO;
 import com.qmth.exam.reserve.dao.StudentImportTaskDao;
 import com.qmth.exam.reserve.entity.ApplyTaskEntity;
 import com.qmth.exam.reserve.entity.StudentImportTaskEntity;
@@ -20,6 +25,7 @@ import com.qmth.exam.reserve.enums.ImportType;
 import com.qmth.exam.reserve.service.ApplyTaskService;
 import com.qmth.exam.reserve.service.StudentImportAsyncService;
 import com.qmth.exam.reserve.service.StudentImportTaskService;
+import com.qmth.exam.reserve.util.PageUtil;
 
 @Service
 public class StudentImportTaskServiceImpl extends ServiceImpl<StudentImportTaskDao, StudentImportTaskEntity>
@@ -60,4 +66,11 @@ public class StudentImportTaskServiceImpl extends ServiceImpl<StudentImportTaskD
         asyncImportService.asyncImportStudent(studentTask, task.getOrgId(), lineList);
     }
 
+    @Override
+    public PageResult<StudentImportTaskVO> page(PagerReq req) {
+        IPage<StudentImportTaskVO> page = this.baseMapper
+                .page(new Page<StudentImportTaskVO>(req.getPageNumber(), req.getPageSize()), req);
+        return PageUtil.of(page);
+    }
+
 }

+ 6 - 0
src/main/resources/mapper/StudentImportTaskMapper.xml

@@ -1,5 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.qmth.exam.reserve.dao.StudentImportTaskDao">
+	<select id="page"
+            resultType="com.qmth.exam.reserve.bean.studentimport.StudentImportTaskVO">
+            select st.id,t.name,file_path fileName,status,message,st.create_time uploadTime 
+            from t_student_import_task st, t_apply_task t where st.apply_task_id=t.id
+        	order by st.create_time desc
+    </select>
 
 </mapper>