|  | @@ -77,7 +77,7 @@ public class DegreeRegistrationServiceImpl extends BaseServiceImpl<Integer, Degr
 | 
	
		
			
				|  |  |          Student student = studentDao.getLocked(degreeRegistration.getUserId());
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          degreeRegistration.setActivityTag(ACTIVITY_TAG);
 | 
	
		
			
				|  |  | -        DegreeRegistration degree = degreeRegistrationDao.getWithSubjectAndLevel(degreeRegistration);
 | 
	
		
			
				|  |  | +        DegreeRegistration degree = degreeRegistrationDao.getWithLevel(degreeRegistration);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          Date nowDate = new Date();
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -85,7 +85,7 @@ public class DegreeRegistrationServiceImpl extends BaseServiceImpl<Integer, Degr
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          //获取收费项价格
 | 
	
		
			
				|  |  |          SporadicChargeInfo chargeInfo = null;
 | 
	
		
			
				|  |  | -        if(Objects.nonNull(degreeRegistration.getSporadicId())&&Objects.nonNull(degreeRegistration.getTheoryLevel())){
 | 
	
		
			
				|  |  | +        if(Objects.nonNull(degreeRegistration.getSporadicId())){
 | 
	
		
			
				|  |  |              chargeInfo = sporadicChargeInfoDao.get(degreeRegistration.getSporadicId());
 | 
	
		
			
				|  |  |              if (chargeInfo == null || chargeInfo.getDelFlag().equals(1) || chargeInfo.getOpenFlag().equals(1)) {
 | 
	
		
			
				|  |  |                  throw new BizException("你选的考试级别不存在");
 | 
	
	
		
			
				|  | @@ -95,8 +95,11 @@ public class DegreeRegistrationServiceImpl extends BaseServiceImpl<Integer, Degr
 | 
	
		
			
				|  |  |                      && StringUtils.isBlank(degreeRegistration.getTheoryCert())) {
 | 
	
		
			
				|  |  |                  throw new BizException("报考级别为“" + chargeInfo.getTitle() + "”且乐理级别是“免考”时,必须上传证书");
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | +        }else{
 | 
	
		
			
				|  |  | +            degreeRegistration.setMoney(BigDecimal.ZERO);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            degreeRegistration.setActivityTag(ACTIVITY_TAG);
 | 
	
		
			
				|  |  | +        if(Objects.nonNull(degreeRegistration.getTheoryLevel())){
 | 
	
		
			
				|  |  |              degreeRegistration.setLevel(chargeInfo.getTitle());
 | 
	
		
			
				|  |  |              degreeRegistration.setOrderNo(orderNo);
 | 
	
		
			
				|  |  |              BigDecimal theoryMoney = BigDecimal.ZERO;
 | 
	
	
		
			
				|  | @@ -119,6 +122,11 @@ public class DegreeRegistrationServiceImpl extends BaseServiceImpl<Integer, Degr
 | 
	
		
			
				|  |  |                      throw new BizException("您选择的乐理级别不存在,请核对");
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              degreeRegistration.setTheoryMoney(theoryMoney);
 | 
	
		
			
				|  |  | +        }else{
 | 
	
		
			
				|  |  | +            degreeRegistration.setTheoryMoney(BigDecimal.ZERO);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        if(Objects.nonNull(degreeRegistration.getSporadicId())||Objects.nonNull(degreeRegistration.getTheoryLevel())){
 | 
	
		
			
				|  |  |              if (degree == null) {
 | 
	
		
			
				|  |  |                  degreeRegistration.setMoney(chargeInfo.getAmount());
 | 
	
		
			
				|  |  |                  degreeRegistration.setStatus(1);
 | 
	
	
		
			
				|  | @@ -148,9 +156,6 @@ public class DegreeRegistrationServiceImpl extends BaseServiceImpl<Integer, Degr
 | 
	
		
			
				|  |  |                  degreeRegistration.setUpdateTime(nowDate);
 | 
	
		
			
				|  |  |                  degreeRegistrationDao.update(degreeRegistration);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -        }else{
 | 
	
		
			
				|  |  | -            degreeRegistration.setMoney(BigDecimal.ZERO);
 | 
	
		
			
				|  |  | -            degreeRegistration.setTheoryMoney(BigDecimal.ZERO);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          BigDecimal additionCoursePrice = new BigDecimal("0");
 | 
	
	
		
			
				|  | @@ -176,7 +181,6 @@ public class DegreeRegistrationServiceImpl extends BaseServiceImpl<Integer, Degr
 | 
	
		
			
				|  |  |                          degreeRegistration.setMoney(degreeRegistration.getMoney().divide(new BigDecimal(2), CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_DOWN));
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                      highUnitPrice = practiceGroupSellPrice.getHighOnlineTenCourseActivityPriceWithNewUser();
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |                  if(vipMoreThan2&&additionCourseInfo.containsKey(CourseSchedule.CourseScheduleType.HIGH)){
 | 
	
		
			
				|  |  |                      degreeRegistration.setTheoryMoney(BigDecimal.ZERO);
 |