فهرست منبع

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

zouxuan 5 سال پیش
والد
کامیت
49e0f43dfe

+ 4 - 2
edu-user/edu-user-biz/src/main/java/com/keao/edu/user/service/impl/ExamRegistrationServiceImpl.java

@@ -27,6 +27,7 @@ import com.keao.edu.user.service.*;
 import com.keao.edu.util.collection.MapUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Isolation;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
@@ -71,9 +72,9 @@ public class ExamRegistrationServiceImpl extends BaseServiceImpl<Long, ExamRegis
     }
 
     @Override
-    @Transactional(rollbackFor = Exception.class)
+    @Transactional(rollbackFor = Exception.class, isolation = Isolation.READ_COMMITTED)
     public Map<String, Object> addRegistration(ExamRegistration examRegistration) throws Exception {
-        ExaminationBasic examinationBasic = examinationBasicDao.get(examRegistration.getExaminationBasicId());
+        ExaminationBasic examinationBasic = examinationBasicDao.lockExam(examRegistration.getExaminationBasicId());
         if (examinationBasic == null || !examinationBasic.getStatus().equals(ExamStatusEnum.APPLYING)) {
             throw new BizException("项目不在报名中,请核对");
         }
@@ -96,6 +97,7 @@ public class ExamRegistrationServiceImpl extends BaseServiceImpl<Long, ExamRegis
         statusEnumList.add(StudentRegistrationStatusEnum.AUDIT_WAIT);
         statusEnumList.add(StudentRegistrationStatusEnum.AUDIT_REJECT);
         statusEnumList.add(StudentRegistrationStatusEnum.AUDIT_PASS);
+        statusEnumList.add(StudentRegistrationStatusEnum.PAY_WAIT);
 
         ExamRegistration registration = examRegistrationDao.getRegistration(examinationBasic.getId(),
                 examRegistration.getStudentId(), examRegistration.getSubjectId(), examSubjectSong.getLevel(),

+ 26 - 1
edu-user/edu-user-biz/src/main/resources/config/mybatis/ExaminationBasicMapper.xml

@@ -252,7 +252,32 @@
 	</select>
 
     <select id="lockExam" resultMap="ExaminationBasic">
-		SELECT id_,name_ FROM examination_basic WHERE id_=#{examId}
+		SELECT
+			id_,
+			name_,
+			exam_mode_,
+			exam_location_id_list_,
+			status_,
+			enroll_start_time_,
+			enroll_end_time_,
+			expect_exam_start_time_,
+			expect_exam_end_time_,
+			poster_title_,
+			poster_profile_,
+			poster_background_img_,
+			memo_,
+			create_time_,
+			update_time_,
+			tenant_id_,
+			organ_id_,
+			creator_id_,
+			exam_location_name_list_,
+			actual_exam_start_time_,
+			actual_exam_end_time_
+		FROM
+			examination_basic
+		WHERE
+			id_ = #{examId} FOR UPDATE
 	</select>
 
     <select id="getEndExamsWithDayAndStatus" resultMap="ExaminationBasic">