Browse Source

Merge branch 'master' into test

Joburgess 4 years ago
parent
commit
13293939e5

+ 8 - 5
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -2762,11 +2762,15 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
             studentRegistrationDao.batchInsert(studentRegistrationList);
         }
         //0元的和学校缴费的默认缴费
+        boolean autoPay = false;
         MusicGroupPaymentCalender regCalender = musicGroupPaymentCalenderService.findByMusicGroupRegCalender(musicGroupId);
-        if (regCalender == null || regCalender.getPayUserType().equals(MusicGroupPaymentCalender.PayUserType.SCHOOL) ||
-                regCalender.getPaymentAmount().compareTo(BigDecimal.ZERO) == 0) {
-            List<MusicGroupPaymentCalenderCourseSettings> musicGroupRegCalenderCourseSettings = musicGroupPaymentCalenderCourseSettingsDao.getMusicGroupRegCalenderCourseSettings(musicGroupId);
-            List<Integer> courseSettings = musicGroupRegCalenderCourseSettings.stream().filter(e -> !e.getIsStudentOptional()).map(MusicGroupPaymentCalenderCourseSettings::getId).collect(Collectors.toList());
+        List<MusicGroupPaymentCalenderCourseSettings> musicGroupRegCalenderCourseSettings = musicGroupPaymentCalenderCourseSettingsDao.getMusicGroupRegCalenderCourseSettings(musicGroupId);
+        BigDecimal courseSettingsPrice = musicGroupRegCalenderCourseSettings.stream().map(MusicGroupPaymentCalenderCourseSettings::getCourseCurrentPrice).reduce(BigDecimal.ZERO, BigDecimal::add);
+        if (regCalender == null || courseSettingsPrice.compareTo(BigDecimal.ZERO) == 0) {
+            autoPay = true;
+        }
+        if (autoPay) {
+            List<Integer> courseSettings = musicGroupRegCalenderCourseSettings.stream().map(MusicGroupPaymentCalenderCourseSettings::getId).collect(Collectors.toList());
             RegisterPayDto registerPayDto = new RegisterPayDto();
             registerPayDto.setAmount(BigDecimal.ZERO);
             registerPayDto.setNewCourse(courseSettings);
@@ -2774,7 +2778,6 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
                 registerPayDto.setRegisterId(studentRegistration.getId().intValue());
                 Map payMap = this.pay(registerPayDto);
             }
-
         }
 
         //修改乐团信息

+ 4 - 3
mec-biz/src/main/resources/config/mybatis/IndexBaseMonthDataMapper.xml

@@ -237,7 +237,7 @@
 			su.organ_id_,
 			#{dayStr} month_,
 			COUNT( DISTINCT stu.user_id_ ) total_num_,
-			COUNT( DISTINCT spo.user_id_ ) activate_num_,
+			COUNT( DISTINCT (CASE WHEN DATE_FORMAT( spo.create_time_, '%Y-%m-%d' ) &lt;= #{dayStr} THEN spo.user_id_ ELSE NULL END) ) activate_num_,
 			TRUNCATE(COUNT(DISTINCT spo.user_id_)/COUNT(DISTINCT stu.user_id_)*100, 2) percent_
 		FROM
 			student stu
@@ -245,8 +245,9 @@
 			LEFT JOIN student_payment_order spo ON stu.user_id_=spo.user_id_ AND status_='SUCCESS' AND actual_amount_>0
 		WHERE
 			su.del_flag_=0
-		  AND su.organ_id_ IS NOT NULL
-		  AND su.user_type_ LIKE '%STUDENT%'
+			  AND su.organ_id_ IS NOT NULL
+			  AND su.user_type_ LIKE '%STUDENT%'
+			  AND DATE_FORMAT(su.create_time_, '%Y-%m-%d')&lt;=#{dayStr}
 		GROUP BY organ_id_
 		ORDER BY organ_id_;
 	</select>