Browse Source

update 学生增加服务指标,运营指标标记

周箭河 5 years ago
parent
commit
42eb25fc94

+ 12 - 9
mec-biz/src/main/resources/config/mybatis/CourseScheduleEvaluateMapper.xml

@@ -348,7 +348,8 @@
                  LEFT JOIN vip_group vg ON cssp.music_group_id_ = vg.id_ AND cssp.group_type_ = 'VIP'
                  LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
                  LEFT JOIN student s ON s.user_id_ = cssp.user_id_
-        WHERE s.operating_tag_ = 0
+        WHERE vg.organ_id_ >= 1
+          AND s.operating_tag_ = 0
           AND cs.teach_mode_ = 'ONLINE'
         GROUP BY vg.organ_id_
     </select>
@@ -356,29 +357,31 @@
     <select id="getVipBuyNums" resultMap="practice4Organ">
         SELECT vg.organ_id_, COUNT(DISTINCT cssp.user_id_) vip_num_, GROUP_CONCAT(DISTINCT cssp.user_id_) student_ids_
         FROM course_schedule_student_payment cssp
-                 LEFT JOIN vip_group vg ON cssp.music_group_id_ = vg.id_ AND cssp.group_type_ = 'VIP'
-                 LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
-        WHERE CONCAT(cs.class_date_, ' ', cs.end_class_time_) >= #{classDate}
+        LEFT JOIN vip_group vg ON cssp.music_group_id_ = vg.id_ AND cssp.group_type_ = 'VIP'
+        LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
+        WHERE vg.organ_id_ >= 1
+        AND CONCAT(cs.class_date_, ' ', cs.end_class_time_) >= #{classDate}
         <if test="endDate != null">
             <![CDATA[AND CONCAT(cs.class_date_, ' ', cs.end_class_time_) < #{endDate}]]>
         </if>
-          AND cs.teach_mode_ = 'ONLINE'
+        AND cs.teach_mode_ = 'ONLINE'
         GROUP BY vg.organ_id_
     </select>
 
     <select id="getPracticeBuyNums" resultMap="practice4Organ">
         SELECT pg.organ_id_, COUNT(DISTINCT cssp.user_id_) practice_num_
         FROM course_schedule_student_payment cssp
-                 LEFT JOIN practice_group pg ON cssp.music_group_id_ = pg.id_ AND cssp.group_type_ = 'PRACTICE'
-                 LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
-        WHERE CONCAT(cs.class_date_, ' ', cs.end_class_time_) >= #{classDate}
+        LEFT JOIN practice_group pg ON cssp.music_group_id_ = pg.id_ AND cssp.group_type_ = 'PRACTICE'
+        LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
+        WHERE pg.organ_id_ >= 1
+        AND CONCAT(cs.class_date_, ' ', cs.end_class_time_) >= #{classDate}
         <if test="endDate != null">
             <![CDATA[AND CONCAT(cs.class_date_, ' ', cs.end_class_time_) < #{endDate}]]>
         </if>
         <if test="studentIds != null">
             AND FIND_IN_SET(cssp.user_id_,#{studentIds})
         </if>
-          AND pg.buy_months_ >= 1
+        AND pg.buy_months_ >= 1
         GROUP BY pg.organ_id_
     </select>
 </mapper>

+ 9 - 6
mec-student/src/main/java/com/ym/mec/student/controller/StudentOrderController.java

@@ -503,8 +503,9 @@ public class StudentOrderController extends BaseController {
         List<Practice4OrganDto> vipBuyNums = courseScheduleEvaluateDao.getVipBuyNums(new Date(), null);
 
         List<Practice4OrganDto> practiceAndVipBuyNums = new ArrayList<>();
-        if(vipBuyNums.size() >0 ) {
-            studentIds = vipBuyNums.stream().filter(practice4OrganDto -> practice4OrganDto.getOrganId() != null).map(Practice4OrganDto::getStudentIds).collect(Collectors.joining(","));
+
+        studentIds = vipBuyNums.stream().filter(practice4OrganDto -> practice4OrganDto.getOrganId() != null).map(Practice4OrganDto::getStudentIds).collect(Collectors.joining(","));
+        if (!studentIds.isEmpty()) {
             practiceAndVipBuyNums = courseScheduleEvaluateDao.getPracticeBuyNums(new Date(), null, studentIds);
         }
         Date startTime = DateUtil.getFirstDayOfMonth(new Date());
@@ -520,8 +521,9 @@ public class StudentOrderController extends BaseController {
         List<Practice4OrganDto> nowMonthPracticeBuyNums = courseScheduleEvaluateDao.getPracticeBuyNums(startTime, null, null);
         List<Practice4OrganDto> nowMonthVipBuyNums = courseScheduleEvaluateDao.getVipBuyNums(startTime, null);
         List<Practice4OrganDto> nowMonthPracticeAndVipBuyNums = new ArrayList<>();
-        if(nowMonthVipBuyNums.size()>0) {
-            studentIds = vipBuyNums.stream().filter(practice4OrganDto -> practice4OrganDto.getOrganId() != null).map(Practice4OrganDto::getStudentIds).collect(Collectors.joining(","));
+
+        studentIds = vipBuyNums.stream().filter(practice4OrganDto -> practice4OrganDto.getOrganId() != null).map(Practice4OrganDto::getStudentIds).collect(Collectors.joining(","));
+        if (!studentIds.isEmpty()) {
             nowMonthPracticeAndVipBuyNums = courseScheduleEvaluateDao.getPracticeBuyNums(startTime, null, studentIds);
         }
 
@@ -530,8 +532,9 @@ public class StudentOrderController extends BaseController {
         List<Practice4OrganDto> lastMonthPracticeBuyNums = courseScheduleEvaluateDao.getPracticeBuyNums(lastMonthStartTime, startTime, null);
         List<Practice4OrganDto> lastMonthVipBuyNums = courseScheduleEvaluateDao.getVipBuyNums(lastMonthStartTime, startTime);
         List<Practice4OrganDto> lastMonthPracticeAndVipBuyNums = new ArrayList<>();
-        if(lastMonthVipBuyNums.size() >0) {
-            studentIds = vipBuyNums.stream().filter(practice4OrganDto -> practice4OrganDto.getOrganId() != null).map(Practice4OrganDto::getStudentIds).collect(Collectors.joining(","));
+
+        studentIds = vipBuyNums.stream().filter(practice4OrganDto -> practice4OrganDto.getOrganId() != null).map(Practice4OrganDto::getStudentIds).collect(Collectors.joining(","));
+        if (!studentIds.isEmpty()) {
             lastMonthPracticeAndVipBuyNums = courseScheduleEvaluateDao.getPracticeBuyNums(lastMonthStartTime, startTime, studentIds);
         }