修复学生端虚拟实验教学实验列表及实验报告

hehai
rong.liu 4 years ago
parent 782775acdb
commit 69589a20d6
  1. 103
      src/main/java/com/msdw/tms/controller/ClassTeachingController.java
  2. 2
      src/main/java/com/msdw/tms/controller/ProjectRecordController.java
  3. 15
      src/main/java/com/msdw/tms/dao/ProjectRecordDao.java
  4. 89
      src/main/java/com/msdw/tms/entity/resp/GetByUserRecordResp.java
  5. 16
      src/main/java/com/msdw/tms/service/ProjectRecordService.java
  6. 29
      src/main/java/com/msdw/tms/service/impl/ExperimentalReportServiceImpl.java
  7. 22
      src/main/java/com/msdw/tms/service/impl/ProjectRecordServiceImpl.java
  8. 774
      src/main/resources/mapper/tms/AchievementManagementDao.xml
  9. 148
      src/main/resources/mapper/tms/ExperimentalReportDao.xml
  10. 188
      src/main/resources/mapper/tms/ProjectRecordDao.xml

@ -32,6 +32,7 @@ public class ClassTeachingController implements ClassTeachingApi {
/**
* 用户端查看班级实验列表
*
* @param page
* @param size
* @param month
@ -43,58 +44,61 @@ public class ClassTeachingController implements ClassTeachingApi {
*/
@Override
@GetMapping("userRecord")
public R queryTestRecord(@RequestParam Integer page, @RequestParam Integer size, Integer month,String startTime,String endTime,
String condition, @RequestParam Integer status,@RequestParam Integer schoolId){
public R queryTestRecord(@RequestParam Integer page, @RequestParam Integer size, Integer month, String startTime, String endTime,
String condition, @RequestParam Integer status, @RequestParam Integer schoolId) {
ProjectRecordVo recordVo = new ProjectRecordVo();
if (status==1||status==2||status==3) {//限定实验状态
recordVo.setStatus(status);
}else{//不限定实验状态
recordVo.setStatus(null);
}
if(!StringUtils.isEmpty(condition)){
recordVo.setCondition(condition);
if (status == 1 || status == 2 || status == 3) {//限定实验状态
recordVo.setStatus(status);
} else {//不限定实验状态
recordVo.setStatus(null);
}
if (!StringUtils.isEmpty(condition)) {
recordVo.setCondition(condition);
}
if (!StringUtils.isEmpty(month)) {
recordVo.setMonth(month);
} else {
recordVo.setMonth(null);
if (!StringUtils.isEmpty(startTime)) {
recordVo.setStartTime(startTime);
}
if(!StringUtils.isEmpty(month)) {
recordVo.setMonth(month);
}else {
recordVo.setMonth(null);
if(!StringUtils.isEmpty(startTime)) {
recordVo.setStartTime(startTime);
}if(!StringUtils.isEmpty(endTime)) {
recordVo.setEndTime(endTime);
}
if (!StringUtils.isEmpty(endTime)) {
recordVo.setEndTime(endTime);
}
recordVo.setSchoolId(schoolId);
PageUtils page1 = classTeachingService.queryClassRecord(page,size,recordVo);
return R.ok().put("page", page1);
}
recordVo.setSchoolId(schoolId);
PageUtils page1 = classTeachingService.queryClassRecord(page, size, recordVo);
return R.ok().put("page", page1);
}
/**
* 校验是否需要输入邀请码
*
* @param userId
* @param projectId
* @return
*/
@Override
@GetMapping("/checkInvitationCode")
public R check(@RequestParam Integer userId,@RequestParam("id") Integer projectId){
List o = experimentalStudentService.queryIsCode(userId,projectId);
if (o.size()>0){
public R check(@RequestParam Integer userId, @RequestParam("id") Integer projectId) {
List o = experimentalStudentService.queryIsCode(userId, projectId);
if (o.size() > 0) {
return R.ok();
}else{
return R.error(200,"false");
} else {
return R.error(200, "false");
}
}
/**
* 通过邀请码进入实验
*
* @param
* @return
*/
@Override
@Transactional
@PostMapping("/joinPractice")
public R joinPractice(@RequestBody ExperimentalTeachingEntity entity1){
public R joinPractice(@RequestBody ExperimentalTeachingEntity entity1) {
//获取参数
Integer projectId = entity1.getProjectId();
Integer id = entity1.getId();
@ -106,58 +110,61 @@ public class ClassTeachingController implements ClassTeachingApi {
// Integer ICode = experimentalStudentService.queryIsCode(userId);//获取iscode信息,
//if (isCode==0)
if (invitationCode!=null){
entity.setId(id);
if (invitationCode != null) {
entity.setId(id);
// entity.setProjectId(projectId);
ExperimentalTeachingEntity result= classTeachingService.queryInvitationcode(entity);//邀请码唯一
Integer code = result.getInvitationCode();
if (invitationCode.equals(code)==true){
ExperimentalStudentEntity student = studentEntity.setUserId(userId).setProjectId(id);
experimentalStudentService.saveCode(student);
return R.ok();
}else{
return R.error("邀请码错误,验证失败!!!");
}
}else{
return R.error(400,"邀请码格式错误!!!");
ExperimentalTeachingEntity result = classTeachingService.queryInvitationcode(entity);//邀请码唯一
Integer code = result.getInvitationCode();
if (invitationCode.equals(code) == true) {
ExperimentalStudentEntity student = studentEntity.setUserId(userId).setProjectId(id);
experimentalStudentService.saveCode(student);
return R.ok();
} else {
return R.error("邀请码错误,验证失败!!!");
}
} else {
return R.error(400, "邀请码格式错误!!!");
}
}
/**
* 查看虚拟仿真课程列表信息
*
* @param page
* @param size
* @return
*/
@Override
@GetMapping("/simulationPlayList")
public R querySimulationPlayList(@RequestParam Integer page,@RequestParam Integer size){
PageUtils page1 = classTeachingService.querySimulationPlayList(page,size);
return R.ok().put("data",page1);
public R querySimulationPlayList(@RequestParam Integer page, @RequestParam Integer size) {
PageUtils page1 = classTeachingService.querySimulationPlayList(page, size);
return R.ok().put("data", page1);
}
/**
* 学生查看实验报告
* 学生查看实验报告(教学)
*
* @param
* @return
*/
@Override
@GetMapping("/queryExperimentalReport")
public R queryExperimentalReport(@RequestParam Integer studentId,@RequestParam Integer projectId,@RequestParam Integer recordId,@RequestParam Integer reportId){
public R queryExperimentalReport(@RequestParam Integer studentId, @RequestParam Integer projectId, @RequestParam Integer recordId, @RequestParam Integer reportId) {
ExperimentalReportVo entity = new ExperimentalReportVo();
R result = experimentalReportService.queryReport(studentId,projectId,recordId,reportId);
R result = experimentalReportService.queryReport(studentId, projectId, recordId, reportId);
return result;
}
/**
* 学生查看虚拟实验报告
* 学生查看虚拟实验报告(虚仿)
*
* @param
* @return
*/
@Override
@GetMapping("/queryVirtualReport")
public R queryVirtualReport(@RequestParam Integer recordId){
public R queryVirtualReport(@RequestParam Integer recordId) {
R result = experimentalReportService.queryVirtualReport(recordId);
return result;
}

@ -64,7 +64,7 @@ public class ProjectRecordController implements ProjectRcordControllerApi {
@Override
@GetMapping("/user/record")
public R queryUserRecord(@RequestParam Integer page,@RequestParam Integer size,@RequestParam Integer userId,@RequestParam Integer projectPermissions){
PageUtils page1 = projectRecordService.queryPage(page,size,userId,projectPermissions);
PageUtils page1 = projectRecordService.queryPage(page,size,userId);
return R.ok().put("data", page1);
}

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.msdw.tms.entity.ExperimentalProjectEntity;
import com.msdw.tms.entity.ExperimentalReportEntity;
import com.msdw.tms.entity.ProjectRecordEntity;
import com.msdw.tms.entity.resp.GetByUserRecordResp;
import com.msdw.tms.entity.vo.ProjectRecordExportVo;
import com.msdw.tms.entity.vo.ProjectRecordVo;
import com.msdw.tms.entity.vo.RecordVo;
@ -15,26 +16,24 @@ import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
*
*
* @author
* @email
* @author
* @email
* @date 2020-08-19 16:07:02
*/
@Mapper
public interface ProjectRecordDao extends BaseMapper<ProjectRecordEntity> {
IPage<ProjectRecordVo> getByUserRecord(Page page,@Param("pro") ProjectRecordEntity projectRecordEntity,Integer projectPermissions);
IPage<GetByUserRecordResp> getByUserRecord(Page page, @Param("userId") Integer userId);
IPage<ProjectRecordVo> getByUserExperimentRecord(Page page,@Param("pro") ProjectRecordEntity projectRecordEntity);
IPage<ProjectRecordVo> getByUserExperimentRecord(Page page, @Param("pro") ProjectRecordEntity projectRecordEntity);
List<ProjectRecordExportVo> getByUserRecordImport(ProjectRecordEntity projectRecordEntity);
ProjectRecordVo getByUserScore(@Param("userid") Integer userId,@Param("isdel") Integer isdel);
ProjectRecordVo getByUserScore(@Param("userid") Integer userId, @Param("isdel") Integer isdel);
ProjectRecordVo queryScore(@Param("userId") Integer userId);
IPage<ProjectRecordVo> getBySchoolRecord(Page page,@Param("pro") ProjectRecordVo projectRecord);
IPage<ProjectRecordVo> getBySchoolRecord(Page page, @Param("pro") ProjectRecordVo projectRecord);
boolean updateUserRecord(ProjectRecordEntity projectRecord);

@ -0,0 +1,89 @@
package com.msdw.tms.entity.resp;
import lombok.Data;
/**
* @ProjectName: tms
* @Package: com.msdw.tms.entity.resp
* @ClassName: GetByUserRecordResp
* @Description: java类作用描述
* @Author: Maureen.Rong
* @CreateDate: 2021/2/25 15:26
* @UpdateDate: 2021/2/25 15:26
* @Version: 1.0
*/
public class GetByUserRecordResp {
private String projectName;
private Integer recordId;
private Integer score;
private Integer codeId;
private String startingTime;
private String submitTime;
private Integer timeSum;
private Integer userId;
public String getProjectName() {
return projectName;
}
public void setProjectName(String projectName) {
this.projectName = projectName;
}
public Integer getRecordId() {
return recordId;
}
public void setRecordId(Integer recordId) {
this.recordId = recordId;
}
public Integer getScore() {
return score;
}
public void setScore(Integer score) {
this.score = score;
}
public Integer getCodeId() {
return codeId;
}
public void setCodeId(Integer codeId) {
this.codeId = codeId;
}
public String getStartingTime() {
return startingTime;
}
public void setStartingTime(String startingTime) {
this.startingTime = startingTime;
}
public String getSubmitTime() {
return submitTime;
}
public void setSubmitTime(String submitTime) {
this.submitTime = submitTime;
}
public Integer getTimeSum() {
return timeSum;
}
public void setTimeSum(Integer timeSum) {
this.timeSum = timeSum;
}
public Integer getUserId() {
return userId;
}
public void setUserId(Integer userId) {
this.userId = userId;
}
}

@ -11,27 +11,25 @@ import java.util.HashMap;
import java.util.List;
/**
*
*
* @author
* @email
* @author
* @email
* @date 2020-08-19 16:07:02
*/
public interface ProjectRecordService extends IService<ProjectRecordEntity> {
PageUtils queryPage(Integer page,Integer size,Integer userId,Integer projectPermissions);
PageUtils queryPage(Integer page, Integer size, Integer userId);
PageUtils queryExperimentPage(Integer page,Integer size,Integer userid);
PageUtils queryExperimentPage(Integer page, Integer size, Integer userid);
ProjectRecordVo queryUserScore(Integer userId);
ProjectRecordVo queryScore(Integer userId);
void exportProjectRecord(HttpServletResponse response, Integer userId)throws Exception;
void exportProjectRecord(HttpServletResponse response, Integer userId) throws Exception;
void exportExperimentProjectRecord(HttpServletResponse response, Integer userId)throws Exception;
void exportExperimentProjectRecord(HttpServletResponse response, Integer userId) throws Exception;
PageUtils querySchoolRecord(Integer page,Integer size,ProjectRecordVo projectRecord);
PageUtils querySchoolRecord(Integer page, Integer size, ProjectRecordVo projectRecord);
boolean updateUserRecord(ProjectRecordEntity projectRecord);

@ -15,7 +15,7 @@ import java.util.HashMap;
import java.util.List;
@Service
public class ExperimentalReportServiceImpl extends ServiceImpl<ExperimentalReportDao,ExperimentalReportEntity> implements ExperimentalReportService {
public class ExperimentalReportServiceImpl extends ServiceImpl<ExperimentalReportDao, ExperimentalReportEntity> implements ExperimentalReportService {
@Autowired
private ExperimentalReportDao reportDao;
@ -24,36 +24,37 @@ public class ExperimentalReportServiceImpl extends ServiceImpl<ExperimentalRepor
private AchievementManagementDao achievementManagementDao;
@Override
public R queryReport(Integer studentId,Integer projectId,Integer recordId,Integer reportId) {
Integer systemId =reportDao.querySystemId(recordId);
public R queryReport(Integer studentId, Integer projectId, Integer recordId, Integer reportId) {
Integer systemId = reportDao.querySystemId(recordId);
ExperimentalReportVo entity = new ExperimentalReportVo();
entity.setRecordId(recordId).setStudentId(studentId).setProjectId(projectId).setReportId(reportId);
ExperimentalReportVo result = reportDao.queryReport(entity);
//python实验
HashMap<String, Object> map = new HashMap<>();
map.put("report",result);
if(systemId==1|systemId==4|systemId==5){
map.put("report", result);
if (systemId == 1 | systemId == 4 | systemId == 5) {
List<AchievementManagementVO> data = achievementManagementDao.queryPythonTest(recordId);
map.put("data",data);
return R.ok().put("data",map);
map.put("data", data);
return R.ok().put("data", map);
}
return R.ok().put("data",map);
return R.ok().put("data", map);
}
//虚拟实验
@Override
public R queryVirtualReport(Integer recordId) {
ExperimentalReportVo result = reportDao.queryVirtualReport(recordId);
Integer systemId =reportDao.querySystemId(recordId);
Integer systemId = reportDao.querySystemId(recordId);
//python实验
if(systemId==1|systemId==4|systemId==5){
if (systemId == 1 | systemId == 4 | systemId == 5) {
List<AchievementManagementVO> data = achievementManagementDao.queryPythonTest(recordId);
HashMap<String, Object> map = new HashMap<>();
map.put("data",data);
map.put("report",result);
return R.ok().put("data",map);
map.put("data", data);
map.put("report", result);
return R.ok().put("data", map);
}
return R.ok().put("data",result);
return R.ok().put("data", result);
}
}

@ -12,6 +12,7 @@ import com.msdw.tms.entity.ExperimentalReportEntity;
import com.msdw.tms.entity.ProjectRecordEntity;
import com.msdw.tms.entity.request.ExperimentProjectRecordImportRequest;
import com.msdw.tms.entity.request.ProjectRecordImportRequest;
import com.msdw.tms.entity.resp.GetByUserRecordResp;
import com.msdw.tms.entity.vo.ProjectRecordExportVo;
import com.msdw.tms.entity.vo.ProjectRecordVo;
import com.msdw.tms.service.ProjectRecordService;
@ -37,14 +38,15 @@ public class ProjectRecordServiceImpl extends ServiceImpl<ProjectRecordDao, Proj
@Override
public PageUtils queryPage(Integer page,Integer size,Integer userId,Integer projectPermissions) {
public PageUtils queryPage(Integer page, Integer size, Integer userId) {
ProjectRecordEntity projectRecord = new ProjectRecordEntity().setUserid(userId);
/*GetByUserRecordResp projectRecord = new GetByUserRecordResp();
projectRecord.setUserId(userId);*/
//分页对象
Page<T> page1 = new Page<>(page, size);
IPage<ProjectRecordVo> projectRecordVos = this.baseMapper.getByUserRecord(page1,projectRecord,projectPermissions);
IPage<GetByUserRecordResp> projectRecordVos = this.baseMapper.getByUserRecord(page1, userId);
PageUtils questionsPage = new PageUtils(projectRecordVos);
@ -59,7 +61,7 @@ public class ProjectRecordServiceImpl extends ServiceImpl<ProjectRecordDao, Proj
//分页对象
Page<T> page1 = new Page<>(page, size);
IPage<ProjectRecordVo> projectRecordVos = this.baseMapper.getByUserExperimentRecord(page1,projectRecord);
IPage<ProjectRecordVo> projectRecordVos = this.baseMapper.getByUserExperimentRecord(page1, projectRecord);
PageUtils questionsPage = new PageUtils(projectRecordVos);
@ -70,9 +72,9 @@ public class ProjectRecordServiceImpl extends ServiceImpl<ProjectRecordDao, Proj
public ProjectRecordVo queryUserScore(Integer userId) {
Integer isdel = Constant.IsDel.NOT_DEL.getType();
ProjectRecordVo projectRecordVo = this.baseMapper.getByUserScore(userId ,isdel);
ProjectRecordVo projectRecordVo = this.baseMapper.getByUserScore(userId, isdel);
Double totalTime = projectRecordVo.getTotalTime();
if (totalTime!=null) {
if (totalTime != null) {
DecimalFormat df = new DecimalFormat("0.00");
double time = totalTime / 60;
String format = df.format(time);
@ -80,17 +82,17 @@ public class ProjectRecordServiceImpl extends ServiceImpl<ProjectRecordDao, Proj
}
return projectRecordVo;
return projectRecordVo;
}
@Override
public ProjectRecordVo queryScore(Integer userId) {
ProjectRecordVo projectRecordVo = this.baseMapper.queryScore(userId);
return projectRecordVo;
return projectRecordVo;
}
@Override
public void exportProjectRecord(HttpServletResponse response,Integer userId)throws Exception{
public void exportProjectRecord(HttpServletResponse response, Integer userId) throws Exception {
//获取数据
ProjectRecordEntity projectRecord = new ProjectRecordEntity().setUserid(userId).setIsdel(Constant.IsDel.NOT_DEL.getType());
@ -122,7 +124,7 @@ public class ProjectRecordServiceImpl extends ServiceImpl<ProjectRecordDao, Proj
* 导出个人教学试验记录
*/
@Override
public void exportExperimentProjectRecord(HttpServletResponse response,Integer userId)throws Exception{
public void exportExperimentProjectRecord(HttpServletResponse response, Integer userId) throws Exception {
//获取数据
ProjectRecordEntity projectRecord = new ProjectRecordEntity().setUserid(userId).setIsdel(Constant.IsDel.NOT_DEL.getType());

@ -2,378 +2,442 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.msdw.tms.dao.AchievementManagementDao">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.msdw.tms.entity.ExperimentalReportEntity">
<id column="reportId" property="reportId"/>
<result column="projectId" property="projectId"/>
<result column="principle" property="principle"/>
<result column="content" property="content"/>
<result column="data" property="data"/>
<result column="analysis" property="analysis"/>
<result column="conclusion" property="conclusion"/>
<result column="summarize" property="summarize"/>
<result column="purpose" property="purpose"/>
<result column="improvement" property="improvement"/>
<result column="comment" property="comment"/>
<result column="studentId" property="studentId"/>
<result column="teacherName" property="teacherName"/>
<result column="period" property="period"/>
<result column="laboratory" property="laboratory"/>
<result column="equipment" property="equipment"/>
<result column="score" property="score"/>
<result column="timeConsuming" property="timeConsuming"/>
<result column="startTime" property="startTime"/>
<result column="creationTime" property="creationTime"/>
<result column="className" property="className"/>
<result column="steps1" property="steps1"/>
<result column="steps2" property="steps2"/>
<result column="steps3" property="steps3"/>
<result column="steps4" property="steps4"/>
<result column="steps5" property="steps5"/>
<result column="steps6" property="steps6"/>
<result column="steps7" property="steps7"/>
<result column="steps8" property="steps8"/>
<result column="steps9" property="steps9"/>
<result column="steps10" property="steps10"/>
<result column="projectName" property="projectName"/>
<result column="workNumber" property="workNumber"/>
</resultMap>
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.msdw.tms.entity.ExperimentalReportEntity">
<id column="reportId" property="reportId"/>
<result column="projectId" property="projectId"/>
<result column="principle" property="principle"/>
<result column="content" property="content"/>
<result column="data" property="data"/>
<result column="analysis" property="analysis"/>
<result column="conclusion" property="conclusion"/>
<result column="summarize" property="summarize"/>
<result column="purpose" property="purpose"/>
<result column="improvement" property="improvement"/>
<result column="comment" property="comment"/>
<result column="studentId" property="studentId"/>
<result column="teacherName" property="teacherName"/>
<result column="period" property="period"/>
<result column="laboratory" property="laboratory"/>
<result column="equipment" property="equipment"/>
<result column="score" property="score"/>
<result column="timeConsuming" property="timeConsuming"/>
<result column="startTime" property="startTime"/>
<result column="creationTime" property="creationTime"/>
<result column="className" property="className"/>
<result column="steps1" property="steps1"/>
<result column="steps2" property="steps2"/>
<result column="steps3" property="steps3"/>
<result column="steps4" property="steps4"/>
<result column="steps5" property="steps5"/>
<result column="steps6" property="steps6"/>
<result column="steps7" property="steps7"/>
<result column="steps8" property="steps8"/>
<result column="steps9" property="steps9"/>
<result column="steps10" property="steps10"/>
<result column="projectName" property="projectName"/>
<result column="workNumber" property="workNumber"/>
</resultMap>
<select id="getReport" resultMap="BaseResultMap" parameterType="com.msdw.tms.entity.ExperimentalReportEntity">
SELECT her.*,pm.projectName,s.workNumber FROM
hr_experimental_report her,hr_project_management pm,student s
WHERE her.reportId = #{reportId} and her.studentId = #{studentId} and her.projectId = pm.projectId and her.studentId = s.userId
<select id="getReport" resultMap="BaseResultMap" parameterType="com.msdw.tms.entity.ExperimentalReportEntity">
SELECT her.*, pm.projectName, s.workNumber
FROM hr_experimental_report her,
hr_project_management pm,
student s
WHERE her.reportId = #{reportId}
and her.studentId = #{studentId}
and her.projectId = pm.projectId
and her.studentId = s.userId
</select>
<select id="getScore" resultType="com.msdw.tms.entity.vo.UserScoreVO" parameterType="com.msdw.tms.entity.vo.UserScoreVO">
SELECT id,score,tradingJudgmentPointsId,projectId,systemId,userId,isCorrect,reportId,userAnswers
FROM hr_user_score WHERE reportId = #{reportId} and userId = #{userId}
</select>
<select id="getScore" resultType="com.msdw.tms.entity.vo.UserScoreVO"
parameterType="com.msdw.tms.entity.vo.UserScoreVO">
SELECT id,
score,
tradingJudgmentPointsId,
projectId,
systemId,
userId,
isCorrect,
reportId,
userAnswers
FROM hr_user_score
WHERE reportId = #{reportId}
and userId = #{userId}
</select>
<!-- <resultMap id="achievementMap" type="com.msdw.tms.entity.ExperimentalReportEntity">-->
<!-- <result property="experimentalClassName" column="experimental_class_name"></result>-->
<!-- </resultMap>-->
<insert id="addReport" useGeneratedKeys="true" keyProperty="reportId">
INSERT INTO hr_experimental_report( projectId, content, principle, step, analysis, summarize, improvement,
commentId, studentId, period,laboratory,className,steps1,steps2,steps3,steps4,steps5,steps6,steps7,steps8,steps9,steps10,timeConsuming,startTime,creationTime,purpose,teacherName)
VALUES
(#{projectId},#{content}, #{principle}, #{step}, #{analysis}, #{summarize}, #{improvement}, #{commentId}, #{studentId},
#{period}, #{laboratory},#{className},#{steps1},#{steps2},#{steps3},#{steps4},#{steps5},#{steps6},#{steps7},#{steps8},#{steps9},#{steps10},#{timeConsuming},#{startTime},#{creationTime},#{purpose},#{teacherName})
<!-- <resultMap id="achievementMap" type="com.msdw.tms.entity.ExperimentalReportEntity">-->
<!-- <result property="experimentalClassName" column="experimental_class_name"></result>-->
<!-- </resultMap>-->
<insert id="addReport" useGeneratedKeys="true" keyProperty="reportId">
INSERT INTO hr_experimental_report(projectId, content, principle, step, analysis, summarize, improvement,
commentId, studentId, period, laboratory, className, steps1, steps2, steps3,
steps4, steps5, steps6, steps7, steps8, steps9, steps10, timeConsuming,
startTime, creationTime, purpose, teacherName)
VALUES (#{projectId}, #{content}, #{principle}, #{step}, #{analysis}, #{summarize}, #{improvement},
#{commentId}, #{studentId},
#{period}, #{laboratory}, #{className}, #{steps1}, #{steps2}, #{steps3}, #{steps4}, #{steps5},
#{steps6}, #{steps7}, #{steps8}, #{steps9}, #{steps10}, #{timeConsuming}, #{startTime}, #{creationTime},
#{purpose}, #{teacherName})
</insert>
<update id="deleteReport">
UPDATE tms_project_record tpr,hr_experimental_report tcr SET tpr.isdel = 1 , tcr.isdel = 1 WHERE tpr.recordId = tcr.eventId AND tcr.reportId = #{reportId}
<update id="deleteReport">
UPDATE tms_project_record tpr,hr_experimental_report tcr
SET tpr.isdel = 1, tcr.isdel = 1
WHERE tpr.recordId = tcr.eventId AND tcr.reportId = #{reportId}
</update>
<update id="updateComment">
UPDATE tms_experimental_report
SET `comment` = #{comment}
WHERE reportId = #{reportId}
</update>
<update id="updateComment">
UPDATE tms_experimental_report SET `comment` = #{comment} WHERE reportId = #{reportId}
</update>
<update id="updateSignatrue">
UPDATE tms_experimental_report SET isSignature = #{isSignature} , signatureId = #{signatureId}, `comment` = #{comment} WHERE reportId = #{reportId}
</update>
<select id="queryReport" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT
ter.reportId,
IFNULL( ter.`comment`, ( SELECT `comment` FROM tms_comment WHERE id = commentId ) ) AS comment,
ter.projectId,
ter.principle,
ter.content,
ter.step,
ter.`data`,
ter.analysis,
ter.conclusion,
ter.summarize,
ter.improvement,
ter.commentId,
ter.studentId,
ter.teacherName,
ter.period,
ter.laboratory,
ter.eventId,
ter.isSignature,
ter.signatureId,
ter.isdel ,
hpm.projectName,
hpm.systemId,
ts.signature_name AS signatureName,
ts.signature_url AS signatureUrl,
tc.`level`
FROM
tms_experimental_report ter
LEFT JOIN tms_signature ts ON signatureId = ts.id
LEFT JOIN tms_comment tc ON commentId = tc.id
LEFT JOIN tms_project_record AS tpr ON tpr.recordId = ter.eventId
LEFT JOIN hr_project_management AS hpm ON hpm.projectId = tpr.projectId
WHERE
reportId = #{reportId}
<update id="updateSignatrue">
UPDATE tms_experimental_report
SET isSignature = #{isSignature},
signatureId = #{signatureId},
`comment` = #{comment}
WHERE reportId = #{reportId}
</update>
<select id="queryReport" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT ter.reportId,
IFNULL(ter.`comment`, (SELECT `comment` FROM tms_comment WHERE id = commentId)) AS comment,
ter.projectId,
ter.principle,
ter.content,
ter.step,
ter.`data`,
ter.analysis,
ter.conclusion,
ter.summarize,
ter.improvement,
ter.commentId,
ter.studentId,
ter.teacherName,
ter.period,
ter.laboratory,
ter.eventId,
ter.isSignature,
ter.signatureId,
ter.isdel,
hpm.projectName,
hpm.systemId,
ts.signature_name AS signatureName,
ts.signature_url AS signatureUrl,
tc.`level`
FROM tms_experimental_report ter
LEFT JOIN tms_signature ts ON signatureId = ts.id
LEFT JOIN tms_comment tc ON commentId = tc.id
LEFT JOIN tms_project_record AS tpr ON tpr.recordId = ter.eventId
LEFT JOIN hr_project_management AS hpm ON hpm.projectId = tpr.projectId
WHERE reportId = #{reportId}
</select>
<select id="queryEvaluationReport" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT
u.userName,
sch.schoolName,
s.workNumber,
tpr.score,
tpr.submitTime,
tpr.recordId,
tcr.reportId
FROM
hr_project_management hpm,
hr_user_info u,
student s,
tms_project_record tpr,
tms_experimental_report tcr,
school sch
WHERE
hpm.projectId = tpr.projectId
AND tpr.userId = u.userId
AND u.userId = s.userId
AND sch.schoolId = u.schoolId
AND tcr.eventId = tpr.recordId
AND tpr.isdel = 0
AND tcr.isdel = 0
AND u.isdel = 0
AND tpr.projectId = #{projectId}
<if test="searchContant!=null and searchContant!=''">AND (sch.schoolName LIKE CONCAT('%',#{searchContant},'%')
OR u.userName LIKE CONCAT('%',#{searchContant},'%') )
</if>
GROUP BY
tcr.reportId
ORDER BY tpr.submitTime DESC
</select>
<select id="queryAchievement" resultType="com.msdw.tms.entity.request.AchievementImportRequest">
SELECT
u.userName,
sch.schoolName,
s.workNumber,
tpr.score,
tpr.submitTime,
tpr.recordId,
tcr.reportId
FROM
hr_project_management hpm,
hr_user_info u,
student s,
tms_project_record tpr,
tms_experimental_report tcr,
school sch
WHERE
hpm.projectId = tpr.projectId
AND tpr.userId = u.userId
AND u.userId = s.userId
AND sch.schoolId = u.schoolId
AND tcr.eventId = tpr.recordId
AND tpr.isdel = 0
AND tcr.isdel = 0
AND u.isdel = 0
<if test="ids.size()>0">
AND recordId IN (
<foreach collection="ids" separator="," item="recordId">
#{recordId}
</foreach>
)
</if>
GROUP BY
tcr.reportId
ORDER BY tpr.submitTime DESC
</select>
<select id="queryFictitiousRecord" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT
hpm.projectName,
hpm.creationTime AS creationtime,
hpm.projectPermissions,
count( tcr.reportId ) AS reportNumber,
tcr.projectId,
tcr.reportId,
tpr.recordId
FROM
hr_project_management hpm
LEFT JOIN tms_project_record tpr ON hpm.projectId = tpr.projectId
LEFT JOIN tms_experimental_report tcr ON tpr.recordId = tcr.eventId
WHERE
tpr.isdel = 0
AND tcr.isdel = 0
AND hpm.projectPermissions = 0
<if test="systemId!=null and systemId!=''">AND hpm.systemId = #{systemId}</if>
<if test="searchContant!=null and searchContant!=''">and hpm.projectName like concat('%',#{searchContant},'%')
</if>
<if test="startingtime!=null and startingtime!='' and endtime!=null and endtime != ''">and hpm.creationTime
between #{endtime} and #{startingtime}
</if>
<if test="month!=null and month != ''">and DATE_SUB(CURDATE(), INTERVAL #{month} month ) &lt;=
date(hpm.creationTime)
</if>
<if test="projectIds.size!=null">
AND tpr.projectId IN (
<foreach collection="projectIds" separator="," item="projectId">
#{projectId}
</foreach>
)
</if>
GROUP BY
tcr.reportId
ORDER BY
creationtime DESC,tcr.reportId DESC
</select>
<select id="queryEvaluationReport" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT
u.userName,
sch.schoolName,
s.workNumber,
tpr.score,
tpr.submitTime,
tpr.recordId,
tcr.reportId
FROM
hr_project_management hpm,
hr_user_info u,
student s,
tms_project_record tpr,
tms_experimental_report tcr,
school sch
WHERE
hpm.projectId = tpr.projectId
AND tpr.userId = u.userId
AND u.userId = s.userId
AND sch.schoolId = u.schoolId
AND tcr.eventId = tpr.recordId
AND tpr.isdel = 0
AND tcr.isdel = 0
AND u.isdel = 0
AND tpr.projectId = #{projectId}
<if test="searchContant!=null and searchContant!=''"> AND (sch.schoolName LIKE CONCAT('%',#{searchContant},'%') OR u.userName LIKE CONCAT('%',#{searchContant},'%') )</if>
GROUP BY
tcr.reportId
ORDER BY tpr.submitTime DESC
</select>
<select id="queryEducationRecord" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT
hpm.projectName,
hpm.creationTime AS creationtime,
tet.experimental_class_name,
hpm.projectPermissions,
tcr.projectId,
tcr.reportId,
tpr.recordId,
count( tcr.reportId ) AS reportNumber
FROM
hr_project_management hpm
LEFT JOIN tms_experimental_teaching tet ON tet.project_id = hpm.projectId
LEFT JOIN tms_project_record tpr ON tet.project_id = tpr.projectId
LEFT JOIN tms_experimental_report tcr ON tcr.projectId = tet.id
WHERE
tpr.isdel = 0
AND hpm.projectPermissions = 1
AND tcr.isdel = 0
<if test="systemId!=null and systemId!=''">AND hpm.systemId = #{systemId}</if>
<if test="searchContant!=null and searchContant!=''">and (hpm.projectName like concat('%',#{searchContant},'%')
OR tet.experimental_class_name like concat('%',#{searchContant},'%') )
</if>
<if test="startingtime!=null and startingtime!='' and endtime!=null and endtime != ''">and hpm.creationTime
between #{endtime} and #{startingtime}
</if>
<if test="month!=null and month != ''">and DATE_SUB(CURDATE(), INTERVAL #{month} month ) &lt;=
date(creation_time)
</if>
<if test="projectIds.size!=null">
AND tet.id IN (
<foreach collection="projectIds" separator="," item="projectId">
#{projectId}
</foreach>
)
</if>
GROUP BY
tcr.reportId
ORDER BY
creationtime DESC,tcr.reportId DESC
</select>
<select id="queryFictitiousReport" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT
u.userName,
sch.schoolName,
s.workNumber,
tpr.score,
tpr.submitTime,
tpr.recordId,
tcr.reportId
FROM
hr_project_management hpm,
hr_user_info u,
student s,
tms_project_record tpr,
tms_experimental_report tcr,
school sch
WHERE
hpm.projectId = tpr.projectId
AND tpr.userId = u.userId
AND u.userId = s.userId
AND sch.schoolId = u.schoolId
AND tcr.eventId = tpr.recordId
AND tpr.isdel = 0
AND tcr.isdel = 0
AND u.isdel = 0
AND tpr.projectId = #{projectId}
<if test="searchContant!=null and searchContant!=''">AND (sch.schoolName LIKE CONCAT('%',#{searchContant},'%')
OR u.userName LIKE CONCAT('%',#{searchContant},'%') )
</if>
GROUP BY
tcr.reportId
ORDER BY tpr.submitTime DESC
</select>
<select id="countEducationProjectId" resultType="java.lang.Integer">
SELECT ter.projectId
FROM tms_experimental_report ter
LEFT JOIN tms_experimental_teaching tet ON tet.id = ter.projectId
LEFT JOIN hr_project_management hpm ON tet.project_id = hpm.projectId
WHERE ter.isdel = 0
AND hpm.projectPermissions = 1
AND ter.projectId IS NOT NULL
GROUP BY ter.projectId
</select>
<select id="countFictitiousProjectId" resultType="java.lang.Integer">
SELECT tpr.projectId
FROM tms_project_record tpr
LEFT JOIN hr_project_management hpm ON tpr.projectId = hpm.projectId
WHERE tpr.isdel = 0
AND hpm.projectPermissions = 0
GROUP BY tpr.projectId
</select>
<select id="queryEvaluationName" resultType="java.lang.String">
SELECT project_name AS evaluationName
FROM tms_experimental_teaching
WHERE project_id = #{projectId}
</select>
<select id="queryPythonTest" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT hec.`code` AS userAnswer,
hec.codeId,
IF
(p.rightAndWrong = 0, hsi.score, 0) AS codeScore,
hjp.judgmentPointsName,
hjp.experimentcode AS answer
FROM hr_experiment_code AS hec,
hr_score_index AS hsi,
hr_judgment_points AS hjp,
pointrecord p
WHERE hjp.judgmentPointsId = hsi.judgmentPointsId
AND hjp.judgmentPointsId = hec.judgmentPointsId
AND p.codeId = hec.codeId
<select id="queryAchievement" resultType="com.msdw.tms.entity.request.AchievementImportRequest">
SELECT
u.userName,
sch.schoolName,
s.workNumber,
tpr.score,
tpr.submitTime,
tpr.recordId,
tcr.reportId
FROM
hr_project_management hpm,
hr_user_info u,
student s,
tms_project_record tpr,
tms_experimental_report tcr,
school sch
WHERE
hpm.projectId = tpr.projectId
AND tpr.userId = u.userId
AND u.userId = s.userId
AND sch.schoolId = u.schoolId
AND tcr.eventId = tpr.recordId
AND tpr.isdel = 0
AND tcr.isdel = 0
AND u.isdel = 0
<if test="ids.size()>0">
AND recordId IN (
<foreach collection="ids" separator="," item="recordId">
#{recordId}
</foreach>
)
</if>
GROUP BY
tcr.reportId
ORDER BY tpr.submitTime DESC
</select>
<select id="queryFictitiousRecord" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT
hpm.projectName,
hpm.creationTime AS creationtime,
hpm.projectPermissions,
count( tcr.reportId ) AS reportNumber,
tcr.projectId,
tcr.reportId,
tpr.recordId
FROM
hr_project_management hpm
LEFT JOIN tms_project_record tpr ON hpm.projectId = tpr.projectId
LEFT JOIN tms_experimental_report tcr ON tpr.recordId = tcr.eventId
WHERE
tpr.isdel = 0
AND tcr.isdel = 0
AND hpm.projectPermissions = 0
<if test="systemId!=null and systemId!=''"> AND hpm.systemId = #{systemId} </if>
<if test="searchContant!=null and searchContant!=''"> and hpm.projectName like concat('%',#{searchContant},'%')</if>
<if test="startingtime!=null and startingtime!='' and endtime!=null and endtime != ''"> and hpm.creationTime between #{endtime} and #{startingtime}</if>
<if test="month!=null and month != ''">and DATE_SUB(CURDATE(), INTERVAL #{month} month ) &lt;= date(hpm.creationTime)</if>
<if test="projectIds.size!=null">
AND tpr.projectId IN (
<foreach collection="projectIds" separator="," item="projectId">
#{projectId}
</foreach>
) </if>
GROUP BY
tcr.reportId
ORDER BY
creationtime DESC,tcr.reportId DESC
</select>
<select id="queryEducationRecord" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT
hpm.projectName,
hpm.creationTime AS creationtime,
tet.experimental_class_name,
hpm.projectPermissions,
tcr.projectId,
tcr.reportId,
tpr.recordId,
count( tcr.reportId ) AS reportNumber
FROM
hr_project_management hpm
LEFT JOIN tms_experimental_teaching tet ON tet.project_id = hpm.projectId
LEFT JOIN tms_project_record tpr ON tet.project_id = tpr.projectId
LEFT JOIN tms_experimental_report tcr ON tcr.projectId = tet.id
WHERE
tpr.isdel = 0
AND hpm.projectPermissions = 1
AND tcr.isdel = 0
<if test="systemId!=null and systemId!=''"> AND hpm.systemId = #{systemId} </if>
<if test="searchContant!=null and searchContant!=''"> and (hpm.projectName like concat('%',#{searchContant},'%') OR tet.experimental_class_name like concat('%',#{searchContant},'%') )</if>
<if test="startingtime!=null and startingtime!='' and endtime!=null and endtime != ''"> and hpm.creationTime between #{endtime} and #{startingtime}</if>
<if test="month!=null and month != ''">and DATE_SUB(CURDATE(), INTERVAL #{month} month ) &lt;= date(creation_time)</if>
<if test="projectIds.size!=null">
AND tet.id IN (
<foreach collection="projectIds" separator="," item="projectId">
#{projectId}
</foreach>
) </if>
GROUP BY
tcr.reportId
ORDER BY
creationtime DESC,tcr.reportId DESC
</select>
<select id="queryFictitiousReport" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT
u.userName,
sch.schoolName,
s.workNumber,
tpr.score,
tpr.submitTime,
tpr.recordId,
tcr.reportId
FROM
hr_project_management hpm,
hr_user_info u,
student s,
tms_project_record tpr,
tms_experimental_report tcr,
school sch
WHERE
hpm.projectId = tpr.projectId
AND tpr.userId = u.userId
AND u.userId = s.userId
AND sch.schoolId = u.schoolId
AND tcr.eventId = tpr.recordId
AND tpr.isdel = 0
AND tcr.isdel = 0
AND u.isdel = 0
AND tpr.projectId = #{projectId}
<if test="searchContant!=null and searchContant!=''"> AND (sch.schoolName LIKE CONCAT('%',#{searchContant},'%') OR u.userName LIKE CONCAT('%',#{searchContant},'%') )</if>
GROUP BY
tcr.reportId
ORDER BY tpr.submitTime DESC
</select>
<select id="countEducationProjectId" resultType="java.lang.Integer">
SELECT
ter.projectId
FROM
tms_experimental_report ter
LEFT JOIN tms_experimental_teaching tet ON tet.id = ter.projectId
LEFT JOIN hr_project_management hpm ON tet.project_id = hpm.projectId
WHERE
ter.isdel = 0
AND hpm.projectPermissions = 1
AND ter.projectId IS NOT NULL
GROUP BY
ter.projectId
</select>
<select id="countFictitiousProjectId" resultType="java.lang.Integer">
SELECT
tpr.projectId
FROM
tms_project_record tpr
LEFT JOIN hr_project_management hpm ON tpr.projectId = hpm.projectId
WHERE
tpr.isdel = 0
AND hpm.projectPermissions = 0
GROUP BY
tpr.projectId
</select>
<select id="queryEvaluationName" resultType="java.lang.String">
SELECT project_name AS evaluationName FROM tms_experimental_teaching WHERE project_id = #{projectId}
</select>
<select id="queryPythonTest" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT
hec.`code` AS userAnswer,
hec.codeId,
if(p.rightAndWrong=0,hsi.score,0) AS codeScore,
hjp.judgmentPointsName,
hjp.experimentcode AS answer
FROM
hr_experiment_code AS hec,
hr_score_index AS hsi,
hr_judgment_points AS hjp,
pointrecord p
WHERE
hjp.judgmentPointsId = hsi.judgmentPointsId
AND hjp.judgmentPointsId = hec.judgmentPointsId
AND p.codeId = hec.codeId
AND hsi.isdel = 0
AND hjp.isdel = 0
AND hec.recordId = #{recordId}
GROUP BY
hec.codeId
ORDER BY
hec.codeId ASC
</select>
AND hjp.isdel = 0
AND hec.recordId = #{recordId}
GROUP BY hec.codeId
</select>
<select id="list" resultType="com.msdw.tms.entity.ResultsEntity">
SELECT hpm.creationTime,hpm.projectId,hpm.projectName,hpm.projectPermissions,hpm.systemId,(SELECT count(*) FROM hr_experimental_report her where hpm.projectId = her.projectId ) as number
FROM hr_project_management hpm WHERE systemId = #{systemId}
AND hpm.isdel = 0
<if test="projectPermissions!=null and projectPermissions!=''"> AND hpm.projectPermissions = #{projectPermissions} </if>
<if test="searchContant!=null and searchContant!=''"> and hpm.projectName like concat('%',#{searchContant},'%')</if>
<if test="startTime!=null and startTime!='' and endTime!=null and endTime != ''"> and hpm.creationTime between #{endTime} and #{startTime}</if>
<if test="month!=null and month != ''">and DATE_SUB(CURDATE(), INTERVAL #{month} month ) &lt;= date(hpm.creationTime)</if>
ORDER BY hpm.creationTime DESC
</select>
SELECT hpm.creationTime,hpm.projectId,hpm.projectName,hpm.projectPermissions,hpm.systemId,(SELECT count(*) FROM
hr_experimental_report her where hpm.projectId = her.projectId ) as number
FROM hr_project_management hpm WHERE systemId = #{systemId}
AND hpm.isdel = 0
<if test="projectPermissions!=null and projectPermissions!=''">AND hpm.projectPermissions =
#{projectPermissions}
</if>
<if test="searchContant!=null and searchContant!=''">and hpm.projectName like concat('%',#{searchContant},'%')
</if>
<if test="startTime!=null and startTime!='' and endTime!=null and endTime != ''">and hpm.creationTime between
#{endTime} and #{startTime}
</if>
<if test="month!=null and month != ''">and DATE_SUB(CURDATE(), INTERVAL #{month} month ) &lt;=
date(hpm.creationTime)
</if>
ORDER BY hpm.creationTime DESC
</select>
<select id="newList" resultType="com.msdw.tms.entity.ResultsEntity">
SELECT et.id,et.experimental_class_name as experimentalClassName,et.experimental_name as experimentalName,et.project_id as projectId,
pm.projectName,pm.projectPermissions,et.creation_time as creationTime,(SELECT count(*) FROM hr_experimental_report her where et.project_id = her.projectId ) as number
FROM tms_experimental_teaching et,hr_project_management pm
WHERE user_id = #{userId}
AND et.project_id = pm.projectId
AND pm.isdel = 0
<if test="searchContant!=null and searchContant!=''"> and et.experimental_class_name like concat('%',#{searchContant},'%') or et.experimental_name like concat('%',#{searchContant},'%') or pm.projectName like concat('%',#{searchContant},'%') </if>
<if test="startTime!=null and startTime!='' and endTime!=null and endTime != ''"> and et.creation_time between #{endTime} and #{startTime}</if>
<if test="month!=null and month != ''">and DATE_SUB(CURDATE(), INTERVAL #{month} month ) &lt;= date(et.creation_time)</if>
ORDER BY et.creation_time DESC
</select>
<select id="newList" resultType="com.msdw.tms.entity.ResultsEntity">
SELECT et.id,et.experimental_class_name as experimentalClassName,et.experimental_name as
experimentalName,et.project_id as projectId,
pm.projectName,pm.projectPermissions,et.creation_time as creationTime,(SELECT count(*) FROM
hr_experimental_report her where et.project_id = her.projectId ) as number
FROM tms_experimental_teaching et,hr_project_management pm
WHERE user_id = #{userId}
AND et.project_id = pm.projectId
AND pm.isdel = 0
<if test="searchContant!=null and searchContant!=''">and et.experimental_class_name like
concat('%',#{searchContant},'%') or et.experimental_name like concat('%',#{searchContant},'%') or
pm.projectName like concat('%',#{searchContant},'%')
</if>
<if test="startTime!=null and startTime!='' and endTime!=null and endTime != ''">and et.creation_time between
#{endTime} and #{startTime}
</if>
<if test="month!=null and month != ''">and DATE_SUB(CURDATE(), INTERVAL #{month} month ) &lt;=
date(et.creation_time)
</if>
ORDER BY et.creation_time DESC
</select>
<select id="reportList" resultType="com.msdw.tms.entity.ReportEntity">
SELECT hui.userId,her.reportId,hui.userName as studentName,s.schoolName,stu.workNumber,her.score,her.creationTime
FROM hr_experimental_report her,hr_user_info hui,school s,student stu
WHERE her.projectId = #{projectId}
AND her.studentId = hui.userId
AND her.studentId = stu.userId
AND hui.schoolId = s.schoolId
AND her.isdel = 0
<if test="searchContant!=null and searchContant!=''"> AND (hui.userName LIKE CONCAT('%',#{searchContant},'%') OR s.schoolName LIKE CONCAT('%',#{searchContant},'%') )</if>
ORDER BY her.creationTime desc
</select>
<select id="reportList" resultType="com.msdw.tms.entity.ReportEntity">
SELECT hui.userId,her.reportId,hui.userName as
studentName,s.schoolName,stu.workNumber,her.score,her.creationTime
FROM hr_experimental_report her,hr_user_info hui,school s,student stu
WHERE her.projectId = #{projectId}
AND her.studentId = hui.userId
AND her.studentId = stu.userId
AND hui.schoolId = s.schoolId
AND her.isdel = 0
<if test="searchContant!=null and searchContant!=''">AND (hui.userName LIKE CONCAT('%',#{searchContant},'%') OR
s.schoolName LIKE CONCAT('%',#{searchContant},'%') )
</if>
ORDER BY her.creationTime desc
</select>
<select id="getTeacher" resultType="java.lang.String">
SELECT hui.userName FROM hr_project_management pm,hr_user_info hui
WHERE pm.projectId = #{projectId} and pm.userId = hui.userId
</select>
<select id="getTeacher" resultType="java.lang.String">
SELECT hui.userName
FROM hr_project_management pm,
hr_user_info hui
WHERE pm.projectId = #{projectId}
and pm.userId = hui.userId
</select>
<select id="queryTradingJudgmentPointsId" resultType="java.lang.Integer">
SELECT tradingJudgmentPointsId FROM hr_user_score
SELECT tradingJudgmentPointsId
FROM hr_user_score
WHERE reportId = #{reportId}
</select>
<select id="getUserAnswers" resultType="com.msdw.tms.entity.vo.JudgmentPointsRuleVO">
SELECT tjp.judgment_points_name as judgmentPointsName,ru.type,ru.id,ru.level_one as levelOne,ru.level_two as levelTwo,ru.level_three as levelThree,ru.level_four as levelFour,ru.trading_judgment_points_id as tradingJudgmentPointsId
FROM hr_trading_judgment_points_rule ru,hr_trading_judgment_points tjp
WHERE ru.trading_judgment_points_id = #{tradingJudgmentPointsId} and ru.trading_judgment_points_id = tjp.id
</select>
<select id="getUserAnswers" resultType="com.msdw.tms.entity.vo.JudgmentPointsRuleVO">
SELECT tjp.judgment_points_name as judgmentPointsName,
ru.type,
ru.id,
ru.level_one as levelOne,
ru.level_two as levelTwo,
ru.level_three as levelThree,
ru.level_four as levelFour,
ru.trading_judgment_points_id as tradingJudgmentPointsId
FROM hr_trading_judgment_points_rule ru,
hr_trading_judgment_points tjp
WHERE ru.trading_judgment_points_id = #{tradingJudgmentPointsId}
and ru.trading_judgment_points_id = tjp.id
</select>
</mapper>

@ -1,85 +1,75 @@
<?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.msdw.tms.dao.ExperimentalReportDao">
<resultMap id="reportMap" type="com.msdw.tms.entity.vo.ExperimentalReportVo">
<result property="experimentalClassName" column="experimental_class_name"></result>
<result property="startTime" column="start_time"></result>
<result property="experimentGoal" column="experiment_goal"></result>
<result property="projectName" column="project_name"></result>
</resultMap>
<resultMap id="reportMap" type="com.msdw.tms.entity.vo.ExperimentalReportVo">
<result property="experimentalClassName" column="experimental_class_name"></result>
<result property="startTime" column="start_time"></result>
<result property="experimentGoal" column="experiment_goal"></result>
<result property="projectName" column="project_name"></result>
</resultMap>
<select id="queryReport" resultType="com.msdw.tms.entity.vo.ExperimentalReportVo">
SELECT
u.userId,
u.userName,
stu.workNumber,
tet.project_name,
tet.id AS experimentId,
tet.experimental_class_name,
hpm.experimentalGoal AS experiment_goal,
tpr.submitTime,
tpr.score,
ter.teacherName,
ter.period,
ter.laboratory,
ter.principle,
ter.content,
ter.step,
ter.`data`,
ter.analysis,
ter.conclusion,
ter.summarize,
ter.improvement,
IFNULL( ter.`comment`, ( SELECT `comment` FROM tms_comment WHERE id = commentId ) ) AS comment
FROM
hr_user_info u,
student stu,
tms_experimental_report ter,
hr_project_management hpm,
tms_experimental_teaching tet,
tms_project_record tpr
WHERE
u.userId = stu.userId
AND stu.studentId = ter.studentId
AND hpm.projectId = tet.project_id
AND ter.projectId = tet.id
AND stu.userId = tpr.userId
AND ter.studentId = #{studentId}
AND ter.isdel = 0
AND tpr.isdel = 0
AND tpr.recordId = #{recordId}
AND ter.projectId = #{projectId}
SELECT u.userId,
u.userName,
stu.workNumber,
tet.project_name,
tet.id AS experimentId,
tet.experimental_class_name,
hpm.experimentalGoal AS experiment_goal,
tpr.submitTime,
tpr.score,
ter.period,
ter.laboratory,
ter.principle,
ter.content,
ter.step,
ter.`data`,
ter.analysis,
ter.conclusion,
ter.summarize,
ter.improvement,
IFNULL(ter.`comment`, (SELECT `comment` FROM tms_comment WHERE id = commentId)) AS comment
FROM hr_user_info u,
student stu,
tms_experimental_report ter,
hr_project_management hpm,
tms_experimental_teaching tet,
tms_project_record tpr
WHERE u.userId = stu.userId
AND stu.studentId = ter.studentId
AND hpm.projectId = tet.project_id
AND ter.projectId = tet.id
AND stu.userId = tpr.userId
AND ter.studentId = #{studentId}
AND ter.isdel = 0
AND tpr.isdel = 0
AND tpr.recordId = #{recordId}
AND ter.projectId = #{projectId}
</select>
<select id="queryVirtualReport" resultType="com.msdw.tms.entity.vo.ExperimentalReportVo">
SELECT tpr.recordId,
u.userId,
u.userName,
stu.workNumber,
hpm.projectName,
hpm.experimentalGoal AS experiment_goal,
tpr.submitTime,
tpr.score
FROM hr_user_info u,
student stu,
hr_project_management hpm,
tms_project_record tpr
WHERE u.userId = stu.userId
AND stu.userId = tpr.userId
AND hpm.projectId = tpr.projectId
AND tpr.isdel = 0
AND tpr.recordId = #{recordId}
</select>
<select id="querySystemId" resultType="java.lang.Integer">
SELECT systemId
FROM hr_project_management hpm,
tms_project_record tpr
WHERE tpr.projectId = hpm.projectId
AND tpr.recordId = #{recordId}
</select>
<select id="queryVirtualReport" resultType="com.msdw.tms.entity.vo.ExperimentalReportVo">
SELECT
tpr.recordId,
u.userId,
u.userName,
stu.workNumber,
hpm.projectName,
hpm.experimentalGoal AS experiment_goal,
tpr.submitTime,
tpr.score
FROM
hr_user_info u,
student stu,
hr_project_management hpm,
tms_project_record tpr
WHERE
u.userId = stu.userId
AND stu.userId = tpr.userId
AND hpm.projectId = tpr.projectId
AND tpr.recordId = #{recordId}
AND tpr.isdel = 0
</select>
<select id="querySystemId" resultType="java.lang.Integer">
SELECT
systemId
FROM
hr_project_management hpm,
tms_project_record tpr
WHERE
tpr.projectId = hpm.projectId
AND tpr.recordId = #{recordId}
</select>
</mapper>

@ -14,16 +14,16 @@
<result property="endtime" column="endTime"/>
<result property="submitTime" column="submitTime"/>
<result property="isdel" column="isdel"/>
<!-- <result property="experimental_class_name" column="experimentalClassName"/>-->
<!-- <result property="experimental_class_name" column="experimentalClassName"/>-->
</resultMap>
<insert id="addReport" useGeneratedKeys="true" keyProperty="eventId" keyColumn="recordId">
INSERT INTO tms_project_record ( userId, projectId, score, startingTime, endTime, timeSum, submitTime )
VALUES
(#{userid}, #{projectid}, #{score}, #{startingtime}, now(), #{timeSum}, now())
INSERT INTO tms_project_record (userId, projectId, score, startingTime, endTime, timeSum, submitTime)
VALUES (#{userid}, #{projectid}, #{score}, #{startingtime}, now(), #{timeSum}, now())
</insert>
<select id="getByUserRecord" resultType="com.msdw.tms.entity.vo.ProjectRecordVo">
SELECT
<!--
SELECT
her.reportId as reportId,
her.projectId,
projectName,
@ -42,85 +42,88 @@ VALUES
AND
tp.projectPermissions = #{projectPermissions}
order by her.creationTime desc
-->
<select id="getByUserRecord" resultType="com.msdw.tms.entity.resp.GetByUserRecordResp"
parameterType="java.lang.Integer">
SELECT projectName,
c.recordId,
r.score,
c.codeId,
r.startingTime,
r.submitTime,
r.timeSum,
c.userId
FROM hr_experiment_code c
INNER JOIN hr_project_management t ON t.projectId = c.projectId
INNER JOIN tms_project_record r ON r.recordId = c.recordId
WHERE c.userId = #{userId}
and r.isdel = 0
ORDER BY c.codeId DESC
</select>
<!-- -->
<select id="getByUserExperimentRecord" resultType="com.msdw.tms.entity.vo.ProjectRecordVo">
SELECT
tet.id,
ter.reportId,
tpr.recordId,
tpr.projectId,
projectName,
score,
timeSum,
startingTime as startTime,
endTime,
recordState,
tet.experimental_class_name as experimentalClassName
FROM
tms_project_record tpr
LEFT JOIN hr_project_management tp ON tpr.projectId = tp.projectId
LEFT JOIN tms_experimental_teaching tet ON tet.project_id = tpr.projectId
LEFT JOIN tms_experimental_report ter ON ter.projectId = tet.id
WHERE
tpr.userId = #{pro.userid}
AND
tpr.isdel = #{pro.isdel}
AND
tp.projectPermissions !=0
<select id="getByUserExperimentRecord" resultType="com.msdw.tms.entity.vo.ProjectRecordVo">
SELECT tet.id,
ter.reportId,
tpr.recordId,
tpr.projectId,
projectName,
score,
timeSum,
startingTime as startTime,
endTime,
recordState,
tet.experimental_class_name as experimentalClassName
FROM tms_project_record tpr
LEFT JOIN hr_project_management tp ON tpr.projectId = tp.projectId
LEFT JOIN tms_experimental_teaching tet ON tet.project_id = tpr.projectId
LEFT JOIN tms_experimental_report ter ON ter.projectId = tet.id
WHERE tpr.userId = #{pro.userid}
AND tpr.isdel = #{pro.isdel}
AND tp.projectPermissions !=0
AND
ter.eventId = tpr.recordId
ORDER BY
tpr.submitTime DESC
tpr.submitTime DESC
</select>
<select id="getByUserRecordImport" resultType="com.msdw.tms.entity.vo.ProjectRecordExportVo">
SELECT
tpr.projectId,
projectName,
score,
timeSum,
startingTime as startTime,
endTime,
recordState,
tet.experimental_class_name
FROM
tms_project_record tpr
LEFT JOIN hr_project_management tp ON tpr.projectId = tp.projectId
LEFT JOIN tms_experimental_teaching tet ON tpr.projectId = tet.project_id
WHERE
tpr.userId = #{userid}
AND
tpr.isdel = #{isdel}
AND
tpr.projectId = tet.project_id
AND
tp.projectPermissions != 0
<select id="getByUserRecordImport" resultType="com.msdw.tms.entity.vo.ProjectRecordExportVo">
SELECT tpr.projectId,
projectName,
score,
timeSum,
startingTime as startTime,
endTime,
recordState,
tet.experimental_class_name
FROM tms_project_record tpr
LEFT JOIN hr_project_management tp ON tpr.projectId = tp.projectId
LEFT JOIN tms_experimental_teaching tet ON tpr.projectId = tet.project_id
WHERE tpr.userId = #{userid}
AND tpr.isdel = #{isdel}
AND tpr.projectId = tet.project_id
AND tp.projectPermissions != 0
ORDER BY
tpr.submitTime DESC
tpr.submitTime DESC
</select>
<!-- 个人实验预览-->
<select id="getByUserScore" resultType="com.msdw.tms.entity.vo.ProjectRecordVo">
SELECT
userName,
count( * ) AS experimentNumber,
sum( timeSum ) AS totalTime,
avg( score ) avgScore
FROM
tms_project_record pr
LEFT JOIN hr_user_info u ON pr.userId = u.userId
WHERE
pr.userId = #{userid}
and
pr.isdel = #{isdel}
and
u.isdel = #{isdel}
SELECT userName,
count(*) AS experimentNumber,
sum(timeSum) AS totalTime,
avg(score) avgScore
FROM tms_project_record pr
LEFT JOIN hr_user_info u ON pr.userId = u.userId
WHERE pr.userId = #{userid}
and pr.isdel = #{isdel}
and u.isdel = #{isdel}
</select>
<!-- 个人实验预览-->
<select id="queryScore" resultType="com.msdw.tms.entity.vo.ProjectRecordVo">
SELECT count(*) as experimentNumber,sum(timeConsuming) as totalTime, avg(score) as avgScore FROM hr_experimental_report where studentId = 547
SELECT count(*) as experimentNumber, sum(timeConsuming) as totalTime, avg(score) as avgScore
FROM hr_experimental_report
where studentId = 547
</select>
<select id="getBySchoolRecord" resultType="com.msdw.tms.entity.vo.ProjectRecordVo">
@ -149,34 +152,35 @@ VALUES
and
sc.isdel = #{pro.isdel}
<if test="pro.month!=null">and DATE_SUB(CURDATE(), INTERVAL #{pro.month} month ) &lt;= date(submitTime)</if>
<if test="pro.startTime!=null and pro.endTime!=null">and submitTime between #{pro.startTime} and #{pro.endTime}</if>
<if test="pro.startTime!=null and pro.endTime!=null">and submitTime between #{pro.startTime} and
#{pro.endTime}
</if>
<if test="pro.recordState!=null">and recordState=#{pro.recordState}</if>
<if test="pro.condition!=null">and ( projectName like concat('%',#{pro.condition},'%') or schoolName like concat('%',#{pro.condition},'%') or userName like concat('%',#{pro.condition},'%') )</if>
<if test="pro.condition!=null">and ( projectName like concat('%',#{pro.condition},'%') or schoolName like
concat('%',#{pro.condition},'%') or userName like concat('%',#{pro.condition},'%') )
</if>
</select>
<select id="getByRecordImport" resultType="com.msdw.tms.entity.vo.ProjectRecordExportVo">
SELECT
tpr.projectId,
projectName,
score,
timeSum,
startingTime as startTime,
endTime,
recordState
FROM
tms_project_record tpr
LEFT JOIN hr_project_management tp ON tpr.projectId = tp.projectId
WHERE
tpr.userId = #{userid}
AND
tpr.isdel = #{isdel}
AND
tp.projectPermissions =0
SELECT tpr.projectId,
projectName,
score,
timeSum,
startingTime as startTime,
endTime,
recordState
FROM tms_project_record tpr
LEFT JOIN hr_project_management tp ON tpr.projectId = tp.projectId
WHERE tpr.userId = #{userid}
AND tpr.isdel = #{isdel}
AND tp.projectPermissions = 0
</select>
<select id="queryReport" resultType="com.msdw.tms.entity.ProjectRecordEntity">
SELECT * FROM tms_project_record WHERE recordId = #{recordId}
SELECT *
FROM tms_project_record
WHERE recordId = #{recordId}
</select>
<update id="updateUserRecord" parameterType="com.msdw.tms.entity.ProjectRecordEntity" >
<update id="updateUserRecord" parameterType="com.msdw.tms.entity.ProjectRecordEntity">
update tms_project_record
set isdel = #{isdel}
<if test="recordstate!=null">,recordstate = #{recordstate}</if>
@ -184,6 +188,8 @@ VALUES
</update>
<update id="updateScore">
UPDATE tms_project_record SET score = #{score} WHERE recordId = #{recordid}
UPDATE tms_project_record
SET score = #{score}
WHERE recordId = #{recordid}
</update>
</mapper>
Loading…
Cancel
Save