Jelajahi Sumber

Merge branch 'master' of http://git.dayaedu.com/yonge/edu-saas

zouxuan 5 tahun lalu
induk
melakukan
baa7617a28

+ 7 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/ExamRoomController.java

@@ -45,4 +45,11 @@ public class ExamRoomController extends BaseController {
     public HttpResponseResult<ExamRoom> updateExamRoom(@RequestBody ExamRoom examRoom){
         return succeed(examRoomService.updateExamRoom(examRoom));
     }
+
+    @ApiModelProperty("删除教室")
+    @PostMapping(value = "/deleteExamRooms")
+    public HttpResponseResult deleteExamRooms(String examRoomIds){
+        examRoomService.deleteExamRooms(examRoomIds);
+        return succeed();
+    }
 }

+ 11 - 1
edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/ExamRoomDao.java

@@ -4,6 +4,7 @@ package com.keao.edu.user.dao;
 import com.keao.edu.common.dal.BaseDAO;
 import com.keao.edu.user.api.entity.ExamRoom;
 import com.keao.edu.user.dto.ExamRoomDto;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 import java.util.Map;
@@ -24,4 +25,13 @@ public interface ExamRoomDao extends BaseDAO<Long, ExamRoom> {
      * @return
      */
     List<ExamRoomDto> queryExamRoomPage(Map<String, Object> params);
-}
+
+    /**
+     * @describe 删除指定教室
+     * @author Joburgess
+     * @date 2020.06.24
+     * @param examRoomIds:
+     * @return int
+     */
+    int batchDeleteExamRooms(@Param("examRoomIds") List<Long> examRoomIds);
+}

+ 9 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/ExamRoomStudentRelationDao.java

@@ -43,4 +43,13 @@ public interface ExamRoomStudentRelationDao extends BaseDAO<Long, ExamRoomStuden
     int deleteStudentsFromExamRoom(@Param("examRoomId") Long examRoomId,
                                     @Param("studentIds") List<Integer> studentIds);
 
+    /**
+     * @describe 根据班级删除记录
+     * @author Joburgess
+     * @date 2020.06.24
+     * @param examRoomIds:
+     * @return int
+     */
+    int deleteWithExamRooms(@Param("examRoomIds") List<Long> examRoomIds);
+
 }

+ 9 - 8
edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/ExamReview.java

@@ -1,5 +1,6 @@
 package com.keao.edu.user.entity;
 
+import com.keao.edu.user.enums.ExamEvaluationResultEnum;
 import io.swagger.annotations.ApiModelProperty;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
@@ -28,7 +29,7 @@ public class ExamReview {
 	
 	/** 结果 */
 	@ApiModelProperty(value = "结果")
-	private String evaluationResult;
+	private ExamEvaluationResultEnum evaluationResult;
 	
 	private java.util.Date createTime;
 	
@@ -86,15 +87,15 @@ public class ExamReview {
 	public String getEvaluationContent(){
 		return this.evaluationContent;
 	}
-			
-	public void setEvaluationResult(String evaluationResult){
-		this.evaluationResult = evaluationResult;
+
+	public ExamEvaluationResultEnum getEvaluationResult() {
+		return evaluationResult;
 	}
-	
-	public String getEvaluationResult(){
-		return this.evaluationResult;
+
+	public void setEvaluationResult(ExamEvaluationResultEnum evaluationResult) {
+		this.evaluationResult = evaluationResult;
 	}
-			
+
 	public void setCreateTime(java.util.Date createTime){
 		this.createTime = createTime;
 	}

+ 40 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/enums/ExamEvaluationResultEnum.java

@@ -0,0 +1,40 @@
+package com.keao.edu.user.enums;
+
+import com.keao.edu.common.enums.BaseEnum;
+
+/**
+ * @Author Joburgess
+ * @Date 2020.06.24
+ **/
+public enum ExamEvaluationResultEnum implements BaseEnum<String, ExamEvaluationResultEnum> {
+
+    EXCELLENT("excellent", "优秀"),
+    WELL("WELL", "良好"),
+    PASS("PASS", "及格"),
+    FAIL("FAIL", "不及格");
+
+    private String code;
+
+    private String msg;
+
+    ExamEvaluationResultEnum(String code, String msg) {
+        this.code = code;
+        this.msg = msg;
+    }
+
+    @Override
+    public String getCode() {
+        return code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public String getMsg() {
+        return msg;
+    }
+
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }}

+ 9 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/ExamRoomService.java

@@ -33,4 +33,13 @@ public interface ExamRoomService extends BaseService<Long, ExamRoom> {
      * @return com.keao.edu.user.api.entity.ExamRoom
      */
     ExamRoom updateExamRoom(ExamRoom examRoom);
+
+    /**
+     * @describe 删除教室
+     * @author Joburgess
+     * @date 2020.06.24
+     * @param examRoomIds:
+     * @return void
+     */
+    void deleteExamRooms(String examRoomIds);
 }

+ 14 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamRoomServiceImpl.java

@@ -8,6 +8,7 @@ import com.keao.edu.common.service.impl.BaseServiceImpl;
 import com.keao.edu.common.tenant.TenantContextHolder;
 import com.keao.edu.user.api.entity.ExamRoom;
 import com.keao.edu.user.dao.ExamRoomDao;
+import com.keao.edu.user.dao.ExamRoomStudentRelationDao;
 import com.keao.edu.user.dto.ExamRoomDto;
 import com.keao.edu.user.enums.ExamModeEnum;
 import com.keao.edu.user.page.ExamRoomQueryInfo;
@@ -18,12 +19,15 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.*;
+import java.util.stream.Collectors;
 
 @Service
 public class ExamRoomServiceImpl extends BaseServiceImpl<Long, ExamRoom> implements ExamRoomService {
 	
 	@Autowired
 	private ExamRoomDao examRoomDao;
+	@Autowired
+	private ExamRoomStudentRelationDao examRoomStudentRelationDao;
 
 	@Override
 	public BaseDAO<Long, ExamRoom> getDAO() {
@@ -80,4 +84,14 @@ public class ExamRoomServiceImpl extends BaseServiceImpl<Long, ExamRoom> impleme
 		examRoomDao.update(examRoom);
 		return examRoom;
 	}
+
+	@Override
+	public void deleteExamRooms(String examRoomIdsStr) {
+		if(StringUtils.isBlank(examRoomIdsStr)){
+			return;
+		}
+		List<Long> examRoomIds = Arrays.asList(examRoomIdsStr.split(",")).stream().map(e -> Long.valueOf(e)).collect(Collectors.toList());
+		examRoomDao.batchDeleteExamRooms(examRoomIds);
+		examRoomStudentRelationDao.deleteWithExamRooms(examRoomIds);
+	}
 }

+ 23 - 24
edu-user/edu-user-server/src/main/resources/config/mybatis/ExamReviewMapper.xml

@@ -12,7 +12,7 @@
 		<result column="teacher_id_" property="teacherId" />
 		<result column="student_id_" property="studentId" />
 		<result column="evaluation_content_" property="evaluationContent" />
-		<result column="evaluation_result_" property="evaluationResult" />
+		<result column="evaluation_result_" property="evaluationResult" typeHandler="com.keao.edu.common.dal.CustomEnumTypeHandler"/>
 		<result column="create_time_" property="createTime" />
 		<result column="update_time_" property="updateTime" />
 		<result column="tenant_id_" property="tenantId" />
@@ -34,33 +34,32 @@
 		INSERT INTO exam_review (id_,examination_basic_id_,teacher_id_,student_id_,evaluation_content_,
 		evaluation_result_,create_time_,update_time_,tenant_id_)
 		VALUES(#{id},#{examinationBasicId},#{teacherId},#{studentId},#{evaluationContent},
-		#{evaluationResult},NOW(),NOW(),#{tenantId})
+		#{evaluationResult,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},NOW(),NOW(),#{tenantId})
 	</insert>
 	
 	<!-- 根据主键查询一条记录 -->
 	<update id="update" parameterType="com.keao.edu.user.entity.ExamReview">
-		UPDATE exam_review <set>
-		<if test="examinationBasicId != null">
-		examination_basic_id_ = #{examinationBasicId},
-		</if>
-		<if test="teacherId != null">
-		teacher_id_ = #{teacherId},
-		</if>
-		<if test="evaluationResult != null">
-		evaluation_result_ = #{evaluationResult},
-		</if>
-		<if test="tenantId != null">
-		tenant_id_ = #{tenantId},
-		</if>
-		<if test="updateTime != null">
-		update_time_ = #{updateTime},
-		</if>
-		<if test="studentId != null">
-		student_id_ = #{studentId},
-		</if>
-		<if test="evaluationContent != null">
-		evaluation_content_ = #{evaluationContent},
-		</if>
+		UPDATE exam_review
+		<set>
+			<if test="examinationBasicId != null">
+				examination_basic_id_ = #{examinationBasicId},
+			</if>
+			<if test="teacherId != null">
+				teacher_id_ = #{teacherId},
+			</if>
+			<if test="evaluationResult != null">
+				evaluation_result_ = #{evaluationResult,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},
+			</if>
+			<if test="tenantId != null">
+				tenant_id_ = #{tenantId},
+			</if>
+			<if test="studentId != null">
+				student_id_ = #{studentId},
+			</if>
+			<if test="evaluationContent != null">
+				evaluation_content_ = #{evaluationContent},
+			</if>
+				update_time_ = NOW()
 		</set> WHERE id_ = #{id}
 	</update>
 	

+ 8 - 1
edu-user/edu-user-server/src/main/resources/config/mybatis/ExamRoomMapper.xml

@@ -78,7 +78,14 @@
 	<delete id="delete" >
 		DELETE FROM exam_room WHERE id_ = #{id} 
 	</delete>
-	
+
+	<delete id="batchDeleteExamRooms">
+		DELETE FROM exam_room WHERE id_ IN
+		<foreach collection="examRoomIds" item="examRoomId" separator="," open="(" close=")">
+			#{examRoomId}
+		</foreach>
+	</delete>
+
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="ExamRoom" parameterType="map">
 		SELECT * FROM exam_room ORDER BY id_ <include refid="global.limit"/>

+ 8 - 0
edu-user/edu-user-server/src/main/resources/config/mybatis/ExamRoomStudentRelationMapper.xml

@@ -89,6 +89,14 @@
 		</foreach>
 	</delete>
 
+	<delete id="deleteWithExamRooms">
+		DELETE FROM exam_room_student_relation
+		WHERE exam_room_id_ IN
+		<foreach collection="examRoomIds" item="examRoomId" separator="," open="(" close=")">
+			#{examRoomId}
+		</foreach>
+	</delete>
+
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="ExamRoomStudentRelation" parameterType="map">
 		SELECT * FROM exam_room_student_relation ORDER BY id_ <include refid="global.limit"/>