【新增】 1、判分完成后,上传文件 2、选择题判分 3、获取学生成绩
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
package pc.exam.pp.module.exam.dal.dataobject.student;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.*;
|
||||
import pc.exam.pp.framework.tenant.core.db.TenantBaseDO;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 学生-试卷-分数 DO
|
||||
*
|
||||
* @author rwb
|
||||
*/
|
||||
@TableName("exam_stu_paper_score")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class StuPaperScoreDO extends TenantBaseDO {
|
||||
|
||||
/**
|
||||
* Id
|
||||
*/
|
||||
@TableId
|
||||
private Long id;
|
||||
/**
|
||||
* 学生号
|
||||
*/
|
||||
private Long stuId;
|
||||
/**
|
||||
* 试卷ID
|
||||
*/
|
||||
private String paperId;
|
||||
/**
|
||||
* 总分
|
||||
*/
|
||||
private BigDecimal allScore;
|
||||
}
|
@@ -0,0 +1,23 @@
|
||||
package pc.exam.pp.module.exam.dal.mysql.student;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import pc.exam.pp.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import pc.exam.pp.module.exam.dal.dataobject.student.StuPaperFileDO;
|
||||
import pc.exam.pp.module.exam.dal.dataobject.student.StuPaperScoreDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 学生-试卷-文件 Mapper
|
||||
*
|
||||
* @author rwb
|
||||
*/
|
||||
@Mapper
|
||||
public interface StuPaperScoreMapper extends BaseMapperX<StuPaperScoreDO> {
|
||||
|
||||
List<StuPaperScoreDO> findByStuIdAndPaperId(@Param("stuId") Long stuId, @Param("paperId") String paperId);
|
||||
|
||||
StuScoreVo getStuScore(@Param("stuId") Long stuId, @Param("paperId") String paperId);
|
||||
|
||||
}
|
@@ -0,0 +1,19 @@
|
||||
package pc.exam.pp.module.exam.dal.mysql.student;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
public class StuScoreVo {
|
||||
|
||||
private Long stuId;
|
||||
|
||||
private String nickName;
|
||||
|
||||
private String paperid;
|
||||
|
||||
private BigDecimal score;
|
||||
|
||||
private String stuNumber;
|
||||
}
|
@@ -0,0 +1,23 @@
|
||||
package pc.exam.pp.module.exam.service.stuPaperScore;
|
||||
|
||||
import pc.exam.pp.module.exam.dal.dataobject.student.StuPaperFileDO;
|
||||
import pc.exam.pp.module.exam.dal.dataobject.student.StuPaperScoreDO;
|
||||
import pc.exam.pp.module.exam.dal.mysql.student.StuScoreVo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 学生-试卷-分数 Service 接口
|
||||
*
|
||||
* @author rwb
|
||||
*/
|
||||
public interface StuPaperScoreService {
|
||||
|
||||
List<StuPaperScoreDO> findByStuIDAndPaperId(Long stuID, String paperID);
|
||||
|
||||
void insertStuPaperScore(StuPaperScoreDO stuPaperScoreDO);
|
||||
|
||||
void updateStuPaperScore(StuPaperScoreDO stuPaperScoreDO);
|
||||
|
||||
StuScoreVo getStuScore(Long stuID, String paperID);
|
||||
}
|
@@ -0,0 +1,46 @@
|
||||
package pc.exam.pp.module.exam.service.stuPaperScore;
|
||||
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import pc.exam.pp.module.exam.dal.dataobject.student.StuPaperFileDO;
|
||||
import pc.exam.pp.module.exam.dal.dataobject.student.StuPaperScoreDO;
|
||||
import pc.exam.pp.module.exam.dal.mysql.student.StuPaperFileMapper;
|
||||
import pc.exam.pp.module.exam.dal.mysql.student.StuPaperScoreMapper;
|
||||
import pc.exam.pp.module.exam.dal.mysql.student.StuScoreVo;
|
||||
import pc.exam.pp.module.exam.service.stu_paper_file.StuPaperFileService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 学生-试卷-文件 Service 实现类
|
||||
*
|
||||
* @author rwb
|
||||
*/
|
||||
@Service
|
||||
@Validated
|
||||
public class StuPaperScoreServiceImpl implements StuPaperScoreService {
|
||||
|
||||
@Resource
|
||||
private StuPaperScoreMapper stuPaperScoreMapper;
|
||||
|
||||
@Override
|
||||
public List<StuPaperScoreDO> findByStuIDAndPaperId(Long stuID, String paperID) {
|
||||
return stuPaperScoreMapper.findByStuIdAndPaperId(stuID, paperID);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insertStuPaperScore(StuPaperScoreDO stuPaperScoreDO) {
|
||||
stuPaperScoreMapper.insert(stuPaperScoreDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateStuPaperScore(StuPaperScoreDO stuPaperScoreDO) {
|
||||
stuPaperScoreMapper.updateById(stuPaperScoreDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public StuScoreVo getStuScore(Long stuID, String paperID) {
|
||||
return stuPaperScoreMapper.getStuScore(stuID, paperID);
|
||||
}
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
<?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="pc.exam.pp.module.exam.dal.mysql.student.StuPaperScoreMapper">
|
||||
|
||||
<!--
|
||||
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
|
||||
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
|
||||
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
|
||||
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
||||
-->
|
||||
<select id="findByStuIdAndPaperId" resultType="pc.exam.pp.module.exam.dal.dataobject.student.StuPaperScoreDO">
|
||||
SELECT * FROM exam_stu_paper_score WHERE stu_id = #{stuId} AND paper_id = #{paperId}
|
||||
</select>
|
||||
|
||||
|
||||
<select id="getStuScore" resultType="pc.exam.pp.module.exam.dal.mysql.student.StuScoreVo">
|
||||
SELECT
|
||||
esps.stu_id AS stuId,
|
||||
esps.paper_id AS paperId,
|
||||
esps.all_score AS score,
|
||||
su.username AS stuNumber,
|
||||
su.nickname AS nickName
|
||||
FROM
|
||||
exam_stu_paper_score AS esps
|
||||
LEFT JOIN system_users AS su ON esps.stu_id = su.id
|
||||
WHERE esps.stu_id = #{stuId} AND esps.paper_id = #{paperId}
|
||||
</select>
|
||||
|
||||
</mapper>
|
Reference in New Issue
Block a user