Merge remote-tracking branch 'origin/master'

hehai
zhiyong.ning 4 years ago
commit 63c5aac00b
  1. 10
      src/main/java/com/msdw/tms/api/AchievementManagementApi.java
  2. 2
      src/main/java/com/msdw/tms/common/utils/ConstantUtils.java
  3. 26
      src/main/java/com/msdw/tms/controller/AchievementManagementController.java
  4. 3
      src/main/java/com/msdw/tms/controller/ExperimentalTeachingController.java
  5. 3
      src/main/java/com/msdw/tms/dao/AchievementManagementDao.java
  6. 2
      src/main/java/com/msdw/tms/dao/ClassTeachingDao.java
  7. 6
      src/main/java/com/msdw/tms/entity/ExperimentalReportEntity.java
  8. 2
      src/main/java/com/msdw/tms/entity/ResultsEntity.java
  9. 12
      src/main/java/com/msdw/tms/entity/request/AchievementImportRequest.java
  10. 9
      src/main/java/com/msdw/tms/entity/resp/GetByUserRecordResp.java
  11. 12
      src/main/java/com/msdw/tms/entity/response/ResponseResult.java
  12. 3
      src/main/java/com/msdw/tms/entity/vo/AchievementManagementVO.java
  13. 2
      src/main/java/com/msdw/tms/entity/vo/ResultsVo.java
  14. 5
      src/main/java/com/msdw/tms/service/AchievementManagementService.java
  15. 1
      src/main/java/com/msdw/tms/service/ExperimentalTeachingService.java
  16. 53
      src/main/java/com/msdw/tms/service/impl/AchievementManagementServiceImpl.java
  17. 10
      src/main/java/com/msdw/tms/service/impl/ExperimentalTeachingServiceImpl.java
  18. 2
      src/main/java/com/msdw/tms/service/impl/ProjectRecordServiceImpl.java
  19. BIN
      src/main/resources/excel-template/川大成绩管理实验记录导出模板 (1).xlsx
  20. 157
      src/main/resources/mapper/tms/AchievementManagementDao.xml
  21. 7
      src/main/resources/mapper/tms/ClassTeachingDao.xml
  22. 34
      src/main/resources/mapper/tms/ExperimentalReportDao.xml
  23. 52
      src/main/resources/mapper/tms/ExperimentalTeachingDao.xml
  24. 18
      src/main/resources/mapper/tms/ProjectRecordDao.xml

@ -8,6 +8,7 @@ import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.RequestParam;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@Api(value = "成绩管理", tags = "成绩管理")
public interface AchievementManagementApi {
@ -79,8 +80,10 @@ public interface AchievementManagementApi {
@ApiOperation(value = "发布成绩", notes = "发布成绩--修改教师签名")
R updateSignatrue(@ApiParam(value = "实验报告主键reportId + 是否使用教师签名isSignature + 教师签名id signatureId + 教师评语comment") ExperimentalReportEntity entity);
@ApiOperation(value = "成绩管理删除项目",notes = "将项目管理表isdel置1")
R deleteReportByProjectId(@ApiParam(value = "项目id",required = true) Integer projectId);
@ApiOperation(value = "成绩管理批量删除项目", notes = "将项目管理下的成绩管理批量删除")
R deleteReportByIds(@ApiParam(value = "项目id", required = true) List<Integer> projectIds,
@ApiParam(value = "项目类型(0练习,1考核)", required = true) Integer projectPermissions,
@ApiParam(value = "教学实验id",required = false) List<Integer> ids);
@ApiOperation(value = "成绩管理:虚拟仿真实验成绩管理", notes = "成绩管理:虚拟仿真实验成绩管理")
@ -89,4 +92,7 @@ public interface AchievementManagementApi {
@ApiOperation(value = "成绩管理:实验教学成绩管理", notes = "成绩管理:实验教学成绩管理")
R getTeachAchievement(@RequestParam(required = true) Integer id);
@ApiOperation(value = "成绩管理:编辑实验报告", notes = "成绩管理:编辑实验报告")
R modify(@ApiParam(value = "要修改的字段") ExperimentalReportEntity entity);
}

@ -32,5 +32,5 @@ public class ConstantUtils {
//用户初始密码
public static final String INITIAL_PASSWORD = "huoran123";
public static final String INITIAL_PASSWORD = "111aaa";
}

@ -27,8 +27,10 @@ public class AchievementManagementController implements AchievementManagementApi
@Autowired
private ProjectRecordService projectRecordService;
/**
* 查询用户实验报告
*
* @param projectId
* @param
* @return
@ -42,6 +44,7 @@ public class AchievementManagementController implements AchievementManagementApi
/**
* 查询用户实验报告
*
* @param userId
* @param reportId
* @param
@ -55,7 +58,6 @@ public class AchievementManagementController implements AchievementManagementApi
}
/**
* 查询实验记录
*/
@ -190,6 +192,7 @@ public class AchievementManagementController implements AchievementManagementApi
/**
* 需求删除实验记录====管理端删除但是学生端仍需保留
* 将isdel属性设置为0
*
* @param reportId
* @return
*/
@ -203,6 +206,7 @@ public class AchievementManagementController implements AchievementManagementApi
/**
* 班级实验报告列表查询
*
* @param searchContant
* @return
*/
@ -218,6 +222,7 @@ public class AchievementManagementController implements AchievementManagementApi
/**
* 班级实验成绩导出
*
* @param response
* @param ids (idsrecordId)
* @throws Exception
@ -243,6 +248,7 @@ public class AchievementManagementController implements AchievementManagementApi
/**
* 修改评语
*
* @param entity
* @return
*/
@ -256,6 +262,7 @@ public class AchievementManagementController implements AchievementManagementApi
/**
* 发布成绩
* 修改教师签名+修改教师评语
*
* @param entity isSignaturesignatureIdreportIdcomment
* @return
*/
@ -268,14 +275,15 @@ public class AchievementManagementController implements AchievementManagementApi
/**
* 删除成绩管理中的项目
* @param projectId
* 批量删除成绩管理中的项目
*
* @return
*/
@Override
@PostMapping("/deleteReportById")
public R deleteReportByProjectId(@RequestParam Integer projectId) {
return service.deleteReportByProjectId(projectId);
public R deleteReportByIds(@RequestParam List<Integer> projectIds,@RequestParam Integer projectPermissions,
@RequestParam(required = false) List<Integer> ids) {
return service.deleteReportById(projectIds,projectPermissions,ids);
}
/**
@ -297,4 +305,12 @@ public class AchievementManagementController implements AchievementManagementApi
List<AchievementManagementVO> result = service.getTeachAchievement(id);
return R.ok().put("data", result);
}
@Override
@PostMapping("/modify")
public R modify(@RequestBody ExperimentalReportEntity entity) {
Integer code = service.modify(entity);
return R.ok();
}
}

@ -124,7 +124,8 @@ public class ExperimentalTeachingController implements ExperimentalTeachingContr
@Override
@PostMapping("/delete")
public R delete(@RequestBody Integer[] ids){
experimentalTeachingService.removeByIds(Arrays.asList(ids));
//改为假删除tms_experimental_teaching
experimentalTeachingService.deleteTeachByIds(Arrays.asList(ids));
return R.ok();
}

@ -79,4 +79,7 @@ public interface AchievementManagementDao extends BaseMapper<ExperimentalReportE
List<AchievementManagementVO> getImitationAchievement(Integer projectId);
List<AchievementManagementVO> getTeachAchievement(Integer id);
//编辑实验报告
Integer modify(ExperimentalReportEntity entity);
}

@ -26,4 +26,6 @@ public interface ClassTeachingDao {
int updateExperimentalNumber(Integer number, Integer id);
void updateIsDel(Integer id);
}

@ -119,6 +119,12 @@ public class ExperimentalReportEntity {
@ApiModelProperty(value = "步骤10", name = "steps10", required = false)
private String steps10;
@ApiModelProperty(value = "指导老师", name = "instructor", required = false)
private String instructor;
@ApiModelProperty(value = "项目名称", name = "proName", required = false)
private String proName;
private transient String projectName;
private transient String workNumber;

@ -48,6 +48,8 @@ public class ResultsEntity{
//实验名称
private String experimentalName;
private Integer isdel;
}

@ -15,24 +15,24 @@ public class AchievementImportRequest {
@ExcelAttribute(sort = 0)
private String schoolName;
//实验班级
/* //实验班级
@ExcelAttribute(sort = 1)
private String experimentalClassName;
private String experimentalClassName;*/
//学生姓名
@ExcelAttribute(sort = 2)
@ExcelAttribute(sort = 1)
private String userName;
//学号
@ExcelAttribute(sort = 3)
@ExcelAttribute(sort = 2)
private String workNumber;
//分数
@ExcelAttribute(sort = 4)
@ExcelAttribute(sort = 3)
private String score;
//提交时间
@ExcelAttribute(sort = 5)
@ExcelAttribute(sort = 4)
private String submitTime;
}

@ -23,6 +23,7 @@ public class GetByUserRecordResp {
private Integer timeSum;
private Integer userId;
private Integer systemId;
private Integer reportId;
public Integer getSystemId() {
return systemId;
@ -95,4 +96,12 @@ public class GetByUserRecordResp {
public void setUserId(Integer userId) {
this.userId = userId;
}
public Integer getReportId() {
return reportId;
}
public void setReportId(Integer reportId) {
this.reportId = reportId;
}
}

@ -24,7 +24,7 @@ public class ResponseResult<T> {
/**
* 状态码
*/
private int code;
private int status;
/**
* 返回的数据
@ -36,15 +36,15 @@ public class ResponseResult<T> {
*/
private String message;
public ResponseResult(boolean success, int code, String message) {
public ResponseResult(boolean success, int status, String message) {
this.success = success;
this.code = code;
this.status = status;
this.message = message;
}
public ResponseResult(ResultCode resultCode) {
this.success = resultCode.success();
this.code = resultCode.code();
this.status = resultCode.code();
this.message = resultCode.message();
}
@ -68,8 +68,8 @@ public class ResponseResult<T> {
return new ResponseResult(CommonCode.FAIL);
}
public static ResponseResult FAIL(int code, String message) {
return new ResponseResult<>(false, code, null, message);
public static ResponseResult FAIL(int status, String message) {
return new ResponseResult<>(false, status, null, message);
}
}

@ -20,6 +20,9 @@ public class AchievementManagementVO extends ExperimentalReportEntity {
//实验班级
private String experimentalClassName;
//实验名称
private String experimentalName;
//学生姓名
private String userName;

@ -40,4 +40,6 @@ public class ResultsVo {
//用户id
private Integer userId;
private Integer isdel;
}

@ -44,9 +44,12 @@ public interface AchievementManagementService extends IService<ExperimentalRepor
void updateSignatrue(ExperimentalReportEntity entity);
R deleteReportByProjectId(Integer projectId);
R deleteReportById(List<Integer> projectId,Integer projectPermissions, List<Integer> id);
List<AchievementManagementVO> getImitationAchievement(Integer projectId);
List<AchievementManagementVO> getTeachAchievement(Integer id);
//编辑实验报告
Integer modify(ExperimentalReportEntity entity);
}

@ -16,4 +16,5 @@ public interface ExperimentalTeachingService extends IService<ExperimentalTeachi
PageUtils queryExperimentalTeaching(Integer page, Integer size, ExperimentalTeachingVO vo);
void deleteTeachByIds(List<Integer> asList);
}

@ -78,9 +78,26 @@ public class AchievementManagementServiceImpl extends ServiceImpl<AchievementMan
return R.ok().put("name", name);
}
/**
* 虚拟仿真列表
*
* @param vo
* @param page
* @param size
* @return
*/
@Override
public List<ResultsEntity> list(ResultsVo vo, Integer page, Integer size) {
List<ResultsEntity> list = achievementManagementDao.list(vo);
for (ResultsEntity entity : list) {
Integer number = achievementManagementDao.getImitationAchievement(entity.getProjectId()).size();
entity.setNumber(number);
}
return list;
}
@ -93,6 +110,10 @@ public class AchievementManagementServiceImpl extends ServiceImpl<AchievementMan
@Override
public List<ResultsEntity> newList(ResultsVo vo, Integer page, Integer size) {
List<ResultsEntity> newList = achievementManagementDao.newList(vo);
for (ResultsEntity entity : newList) {
Integer number = achievementManagementDao.getTeachAchievement(entity.getId()).size();
entity.setNumber(number);
}
return newList;
}
@ -199,7 +220,7 @@ public class AchievementManagementServiceImpl extends ServiceImpl<AchievementMan
List<AchievementImportRequest> achievement = achievementManagementDao.queryAchievement(list);
//2.加载模板流数据
ClassPathResource resource = new ClassPathResource("excel-template/川大成绩管理实验记录导出模板.xlsx");
ClassPathResource resource = new ClassPathResource("excel-template/川大成绩管理实验记录导出模板 (1).xlsx");
InputStream inputStream = resource.getInputStream();
//3、通过工具类下载文件
@ -283,11 +304,29 @@ public class AchievementManagementServiceImpl extends ServiceImpl<AchievementMan
}
@Override
public R deleteReportByProjectId(Integer projectId) {
public R deleteReportById(List<Integer> projectIds,Integer projectPermissions, List<Integer> ids) {
if (projectPermissions == 1){//实验教学
for (Integer id: ids) {
List<AchievementManagementVO> teachAchievements = achievementManagementDao.getTeachAchievement(id);
for (AchievementManagementVO teachAchievement : teachAchievements) {
Integer reportId = teachAchievement.getReportId();
Integer recordId = teachAchievement.getRecordId();
achievementManagementDao.deleteReport(reportId, recordId);
}
}
}else {
for (Integer projectId: projectIds) {//虚仿实验
List<AchievementManagementVO> imitationAchievements = achievementManagementDao.getImitationAchievement(projectId);
for (AchievementManagementVO imitationAchievement: imitationAchievements) {
Integer reportId = imitationAchievement.getReportId();
Integer recordId = imitationAchievement.getRecordId();
achievementManagementDao.deleteReport(reportId,recordId);
}
}
}
achievementManagementDao.deleteReportById(projectId);
return R.ok();
}
@ -296,6 +335,7 @@ public class AchievementManagementServiceImpl extends ServiceImpl<AchievementMan
public List<AchievementManagementVO> getImitationAchievement(Integer projectId) {
List<AchievementManagementVO> list = achievementManagementDao.getImitationAchievement(projectId);
return list;
}
@ -304,4 +344,9 @@ public class AchievementManagementServiceImpl extends ServiceImpl<AchievementMan
return achievementManagementDao.getTeachAchievement(id);
}
@Override
public Integer modify(ExperimentalReportEntity entity) {
return achievementManagementDao.modify(entity);
}
}

@ -15,6 +15,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Service("experimentalTeachingService")
public class ExperimentalTeachingServiceImpl extends ServiceImpl<ExperimentalTeachingDao, ExperimentalTeachingEntity> implements ExperimentalTeachingService {
@ -50,4 +52,12 @@ public class ExperimentalTeachingServiceImpl extends ServiceImpl<ExperimentalTea
return pageUtils;
}
@Override
public void deleteTeachByIds(List<Integer> asList) {
int size = asList.size();
for (int i = 0; i < size; i++) {
classTeachingDao.updateIsDel(asList.get(i));
}
}
}

@ -90,7 +90,7 @@ public class ProjectRecordServiceImpl extends ServiceImpl<ProjectRecordDao, Proj
ProjectRecordVo projectRecordVo = this.baseMapper.getByUserScore(userId, isdel);
Double totalTime = projectRecordVo.getTotalTime();
if (totalTime != null) {
DecimalFormat df = new DecimalFormat("0.0");
DecimalFormat df = new DecimalFormat("0.00");
double time = totalTime / 60;
String format = df.format(time);
projectRecordVo.setTotalTime(Double.parseDouble(format));

@ -84,7 +84,8 @@
<update id="deleteReport">
UPDATE tms_project_record tpr,tms_experimental_report ter
SET tpr.isdel = 1, ter.isdel = 1
WHERE tpr.recordId = #{recordId} AND ter.reportId = #{reportId}
WHERE tpr.recordId = #{recordId}
AND ter.reportId = #{reportId}
</update>
<update id="updateComment">
UPDATE tms_experimental_report
@ -390,15 +391,35 @@
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
<!--SELECT hpm.creationTime,hpm.projectId,hpm.projectName,hpm.projectPermissions,hpm.systemId,(SELECT count(*) FROM
tms_project_record her where hpm.projectId = her.projectId and her.isdel = 0 ) as number
FROM hr_project_management hpm
WHERE systemId = #{systemId}
AND hpm.isdel = 0
<if test="projectPermissions!=null and projectPermissions!=''">AND hpm.projectPer missions =
#{projectPermissions}
AND hpm.projectPermissions = #{projectPermissions}
<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 id="list" resultType="com.msdw.tms.entity.ResultsEntity">
SELECT
hpm.projectId,
hpm.projectName,
hpm.projectPermissions,
hpm.systemId,
hpm.creationTime,
hpm.isdel
FROM
hr_project_management hpm
WHERE systemId = #{systemId}
AND hpm.projectPermissions = #{projectPermissions}
<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
@ -410,13 +431,52 @@
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 tms_experimental_report her WHERE et.id = her.projectId AND her.isdel = 0 ) AS number,-->
<!-- et.is_del-->
<!-- 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
tms_project_record her where et.project_id = her.projectId and her.isdel = 0 ) as number
FROM tms_experimental_teaching et,hr_project_management pm
WHERE user_id = #{userId}
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,
et.is_del
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
@ -431,7 +491,6 @@
</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
@ -503,8 +562,8 @@
AND re.isdel = 0;
</select>
<select id="getTeachAchievement" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT r.recordId, schoolName,tet.experimental_class_name, userName, workNumber, score, submitTime, ter.reportId
<!--SELECT r.recordId, schoolName,tet.experimental_class_name, userName, workNumber, score, submitTime, ter.reportId
from tms_project_record r
inner join student s on s.userId = r.userId
inner join hr_user_info u on u.userId = r.userId
@ -518,8 +577,76 @@
AND u.isdel = 0
AND sch.isdel = 0
AND ter.isdel = 0
AND tet.is_del = 0
AND tet.is_del = 0-->
<!-- <select id="getTeachAchievement" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">-->
<!-- SELECT schoolName,-->
<!-- experimental_class_name,-->
<!-- userName,-->
<!-- workNumber,-->
<!-- r.score,-->
<!-- r.recordId,-->
<!-- report.reportId,-->
<!-- r.submitTime,-->
<!-- stu.studentId,-->
<!-- t.id as projectId-->
<!-- FROM tms_experimental_teaching t-->
<!-- INNER JOIN tms_experimental_report report ON report.projectId = t.id-->
<!-- INNER JOIN tms_project_record r ON r.recordId = report.eventId-->
<!-- INNER JOIN hr_user_info u ON u.userId = r.userId-->
<!-- INNER JOIN school s ON s.schoolId = u.schoolId-->
<!-- INNER JOIN student stu ON stu.userId = u.userId-->
<!-- WHERE t.id = #{id}-->
<!-- AND t.is_del = 0-->
<!-- AND report.isdel = 0-->
<!-- </select>-->
<select id="getTeachAchievement" resultType="com.msdw.tms.entity.vo.AchievementManagementVO">
SELECT schoolName,
experimental_class_name,
userName,
workNumber,
r.score,
r.recordId,
report.reportId,
r.submitTime,
stu.studentId,
t.id as projectId,
experimental_name as experimentalName
FROM tms_experimental_teaching t
INNER JOIN tms_experimental_report report ON report.projectId = t.id
INNER JOIN tms_project_record r ON r.recordId = report.eventId
INNER JOIN hr_user_info u ON u.userId = r.userId
INNER JOIN school s ON s.schoolId = u.schoolId
INNER JOIN student stu ON stu.userId = u.userId
WHERE t.id = #{id}
AND report.isdel = 0
</select>
<update id="modify" parameterType="com.msdw.tms.entity.ExperimentalReportEntity">
UPDATE tms_experimental_report
<set>
<if test="instructor != null">
instructor=#{instructor, jdbcType=VARCHAR},
</if>
<if test="period != null">
period=#{period, jdbcType=INTEGER},
</if>
<if test="proName != null">
proName=#{proName, jdbcType=VARCHAR},
</if>
<if test="purpose != null">
purpose=#{purpose, jdbcType=VARCHAR},
</if>
<if test="summarize != null">
summarize=#{summarize, jdbcType=VARCHAR},
</if>
</set>
WHERE reportId = #{reportId}
</update>
</mapper>

@ -117,4 +117,11 @@
WHERE
id = #{id}
</update>
<update id="updateIsDel">
UPDATE tms_experimental_teaching
SET is_del = 1
WHERE
id = #{id}
</update>
</mapper>

@ -12,7 +12,7 @@
SELECT u.userId,
u.userName,
stu.workNumber,
tet.project_name,
ter.proName,
tet.id AS experimentId,
tet.experimental_class_name,
hpm.experimentalGoal AS experiment_goal,
@ -28,7 +28,9 @@
ter.conclusion,
ter.summarize,
ter.improvement,
IFNULL(ter.`comment`, (SELECT `comment` FROM tms_comment WHERE id = commentId)) AS comment
IFNULL(ter.`comment`, (SELECT `comment` FROM tms_comment WHERE id = commentId)) AS comment,
ter.instructor,
ter.purpose
FROM hr_user_info u,
student stu,
tms_experimental_report ter,
@ -47,23 +49,27 @@
AND ter.projectId = #{projectId}
</select>
<select id="queryVirtualReport" resultType="com.msdw.tms.entity.vo.ExperimentalReportVo">
SELECT tpr.recordId,
SELECT
tpr.recordId,
u.userId,
u.userName,
stu.workNumber,
hpm.projectName,
ter.proName,
ter.purpose,
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}
tpr.score,
ter.instructor,
ter.period,
ter.summarize
FROM
tms_experimental_report ter
INNER JOIN student stu ON ter.studentId = stu.studentId
INNER JOIN hr_user_info u ON u.userId = stu.userId
INNER JOIN tms_project_record tpr ON tpr.recordId = ter.eventId
INNER JOIN hr_project_management hpm ON hpm.projectId = tpr.projectId
WHERE
tpr.recordId = #{recordId}
</select>
<select id="querySystemId" resultType="java.lang.Integer">
SELECT systemId

@ -3,15 +3,14 @@
<mapper namespace="com.msdw.tms.dao.ExperimentalTeachingDao">
<select id="queryExperimentalTeaching" resultType="com.msdw.tms.entity.ExperimentalTeachingEntity">
SELECT
<!--SELECT
id,
experimental_class_name,
experimental_name,
project_id,
project_name,
(select count(*)
from tms_project_record WHERE projectId = project_id) as experimental_number,
from tms_project_record WHERE projectId = project_id AND tms_project_record.isdel = 0) as experimental_number,
experiment_duration,
type,
start_time,
@ -48,6 +47,53 @@
AND (user_id in (select userId FROM staff WHERE schoolId = #{exp.schoolId} AND isdel = 0 AND FIND_IN_SET(roleId,'1,2,3') )
OR user_id IN ( SELECT userId FROM hr_user_info WHERE disableAccount = 0 AND isdel = 0 AND FIND_IN_SET( roleId, '1' ) ) )
</if>
order by creation_time desc-->
<select id="queryExperimentalTeaching" resultType="com.msdw.tms.entity.ExperimentalTeachingEntity">
SELECT
id,
experimental_class_name,
experimental_name,
project_id,
project_name,
( SELECT count( * ) FROM tms_project_record WHERE projectId = project_id AND tms_project_record.isdel = 0 ) AS experimental_number,
experiment_duration,
type,
start_time,
stop_time,
STATUS,
invitation_code,
is_code,
user_id,
creation_time,
surplus_time ,
systemId
FROM
tms_experimental_teaching t
inner join hr_project_management m on m.projectId = t.project_id
WHERE
t.is_del = 0
<if test="exp.type!=null">
AND `type`=#{exp.type,jdbcType=INTEGER}
</if>
<if test="exp.status!=null">
AND `status`=#{exp.status,jdbcType=INTEGER}
</if>
<if test="exp.systemId!=null">
AND `system_id`=#{exp.systemId,jdbcType=INTEGER}
</if>
<if test='exp.startTime!=null and exp.stopTime!=null'>
AND creation_time between #{exp.startTime} and #{exp.stopTime}
</if>
<if test="exp.searchContent!=null">
AND (experimental_name like concat('%',#{exp.searchContent},'%') or experimental_class_name like concat('%',#{exp.searchContent},'%') )
</if>
<if test="exp.month!=null">
AND DATE_SUB(CURDATE(), INTERVAL #{exp.month} month ) &lt;= date(creation_time)
</if>
<if test='exp.schoolId!=null and exp.schoolId!=null'>
AND (user_id in (select userId FROM staff WHERE schoolId = #{exp.schoolId} AND isdel = 0 AND FIND_IN_SET(roleId,'1,2,3') )
OR user_id IN ( SELECT userId FROM hr_user_info WHERE disableAccount = 0 AND isdel = 0 AND FIND_IN_SET( roleId, '1' ) ) )
</if>
order by creation_time desc
</select>

@ -47,7 +47,8 @@
<select id="getByUserRecord" resultType="com.msdw.tms.entity.resp.GetByUserRecordResp"
parameterType="java.lang.Integer">
SELECT projectName,
SELECT re.reportId,
projectName,
c.recordId,
r.score,
c.codeId,
@ -59,6 +60,7 @@
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
INNER JOIN tms_experimental_report re ON re.eventId = r.recordId
WHERE c.userId = #{userId}
-- 教师端逻辑删除,学生端不做判断
-- and r.isdel = 0
@ -73,7 +75,7 @@
ter.reportId,
tpr.recordId,
tpr.projectId,
projectName,
tp.projectName,
score,
timeSum,
startingTime as startTime,
@ -85,7 +87,6 @@
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}
-- 教师端逻辑删除,学生端不做判断(下面这行删掉报错,用>=来表示不管0,1都让通过)
AND tpr.isdel >= #{pro.isdel}
AND tp.projectPermissions !=0
AND
@ -114,6 +115,15 @@
tpr.submitTime DESC
</select>
<!--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 id="getByUserScore" resultType="com.msdw.tms.entity.vo.ProjectRecordVo">
SELECT userName,
@ -123,8 +133,6 @@
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">

Loading…
Cancel
Save