package com.qmth.distributed.print.api; import com.baomidou.mybatisplus.core.metadata.IPage; import com.qmth.boot.api.constant.ApiConstant; import com.qmth.distributed.print.business.entity.ExamPaperStructure; import com.qmth.distributed.print.business.service.DataSyncService; import com.qmth.distributed.print.business.service.ExamPaperStructureService; import com.qmth.teachcloud.common.contant.SystemConstant; import com.qmth.teachcloud.common.util.Result; import com.qmth.teachcloud.common.util.ResultUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import javax.validation.constraints.Max; import javax.validation.constraints.Min; import java.util.List; import java.util.Map; /** *

* 试卷结构 前端控制器 *

* * @author xf */ @Api(tags = "试卷结构Controller") @RestController @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.exam}/structure") public class ExamPaperStructureController { @Autowired private ExamPaperStructureService examPaperStructureService; @Autowired private DataSyncService dataSyncService; /** * 查询 * * @return */ @ApiOperation(value = "查询") @RequestMapping(value = "/list", method = RequestMethod.POST) public Result list(@RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber, @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) { IPage examPaperStructureIPage = examPaperStructureService.listByPropositionTeacherId(pageNumber, pageSize, null); return ResultUtil.ok(examPaperStructureIPage); } /** * 上传 * * @param md5 文件md5 * @param files 文件数组 * @return */ @ApiOperation(value = "上传试卷结构、标答") @RequestMapping(value = "/upload", method = RequestMethod.POST) public Result upload(@RequestParam("examPaperStructure") String examPaperStructure, @RequestParam("md5") String md5, @RequestParam("files") MultipartFile[] files) { ExamPaperStructure examPaper = examPaperStructureService.upload(examPaperStructure, md5, files); // 推送云阅卷 dataSyncService.syncPaperStructure(examPaper); return ResultUtil.ok(String.valueOf(examPaper.getId()), null); } /** * 试卷结构预览 * * @param id id * @return */ @ApiOperation(value = "试卷结构预览") @RequestMapping(value = "/preview_structure", method = RequestMethod.POST) public Result preStructure(@RequestParam("id") Long id) { List list = examPaperStructureService.preStructure(id); return ResultUtil.ok(list); } }