Accept Merge Request #52: (hyc -> master)

Merge Request: 【新增】学生选择题答案文件重复判断

Created By: @华允传
Accepted By: @华允传
URL: https://g-iswv8783.coding.net/p/education/d/pengchen-exam-java/git/merge/52?initial=true
This commit is contained in:
华允传
2025-05-07 14:54:47 +08:00
committed by Coding
4 changed files with 28 additions and 7 deletions

View File

@@ -17,4 +17,5 @@ import java.util.List;
public interface StuPaperFileMapper extends BaseMapperX<StuPaperFileDO> { public interface StuPaperFileMapper extends BaseMapperX<StuPaperFileDO> {
List<StuPaperFileDO> findByStuIdAndPaperId(@Param("stuId") Long stuId, @Param("paperId") String paperId); List<StuPaperFileDO> findByStuIdAndPaperId(@Param("stuId") Long stuId, @Param("paperId") String paperId);
List<StuPaperFileDO> findOneByStuIdAndPaperId(@Param("stuId")Long stuId, @Param("paperId")String paperId,@Param("type") int type);
} }

View File

@@ -11,5 +11,9 @@
<select id="findByStuIdAndPaperId" resultType="pc.exam.pp.module.exam.dal.dataobject.student.StuPaperFileDO"> <select id="findByStuIdAndPaperId" resultType="pc.exam.pp.module.exam.dal.dataobject.student.StuPaperFileDO">
SELECT * FROM exam_stu_paper_fileurl WHERE stu_id = #{stuId} AND paper_id = #{paperId} SELECT * FROM exam_stu_paper_fileurl WHERE stu_id = #{stuId} AND paper_id = #{paperId}
</select> </select>
<select id="findOneByStuIdAndPaperId"
resultType="pc.exam.pp.module.exam.dal.dataobject.student.StuPaperFileDO">
SELECT * FROM exam_stu_paper_fileurl WHERE stu_id = #{stuId} AND paper_id = #{paperId} and type =#{type}
</select>
</mapper> </mapper>

View File

@@ -12,7 +12,7 @@ public class testServiceImpl implements testservice {
@Override @Override
public boolean test() { public boolean test() {
String s = endStuMonitorUtils.endStuMonitor("160", "78f7496a68ae48e0bfb0c288549485d8"); String s = endStuMonitorUtils.endStuMonitor("160", "78f7496a68ae48e0bfb0c288549485d8");
endStuMonitorUtils.endStuMonitor("160","78f7496a68ae48e0bfb0c288549485d8",20.0); endStuMonitorUtils.endStuMonitor("160","78f7496a68ae48e0bfb0c288549485d8",20.0);

View File

@@ -22,6 +22,8 @@ import pc.exam.pp.module.infra.service.file.FileService;
import java.io.FileWriter; import java.io.FileWriter;
import java.io.IOException; import java.io.IOException;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.List;
@Component @Component
public class EndStuMonitorUtils { public class EndStuMonitorUtils {
@Resource @Resource
@@ -68,12 +70,26 @@ public class EndStuMonitorUtils {
fileurl = fileService.createFile(fileName, path, bytes); fileurl = fileService.createFile(fileName, path, bytes);
System.out.println(fileurl); System.out.println(fileurl);
redisTemplate.delete(keychoice); redisTemplate.delete(keychoice);
StuPaperFileDO stuPaperFileDO = new StuPaperFileDO();
stuPaperFileDO.setStuId(Long.valueOf(stuId));
stuPaperFileDO.setPaperId(paperId); List<StuPaperFileDO> stuPaperFileDOList = stuPaperFileMapper.findOneByStuIdAndPaperId(Long.valueOf(stuId), paperId,1);
stuPaperFileDO.setType(1); //如果有则修改
stuPaperFileDO.setUrl(fileurl); if (stuPaperFileDOList!=null&&stuPaperFileDOList.size()>0){
stuPaperFileMapper.insert(stuPaperFileDO); for (StuPaperFileDO paperFileDO : stuPaperFileDOList) {
paperFileDO.setUrl(fileurl);
stuPaperFileMapper.updateById(paperFileDO);
}
}else {
//没有就新增
StuPaperFileDO stuPaperFileDO = new StuPaperFileDO();
stuPaperFileDO.setStuId(Long.valueOf(stuId));
stuPaperFileDO.setPaperId(paperId);
stuPaperFileDO.setType(1);
stuPaperFileDO.setUrl(fileurl);
stuPaperFileMapper.insert(stuPaperFileDO);
}
} catch (IOException e) { } catch (IOException e) {