瀏覽代碼

sql优化

zouxuan 1 年之前
父節點
當前提交
d3d8c4fd46

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java

@@ -2089,7 +2089,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
 
     CourseSchedule findByRoomUid(@Param("roomUid") String roomUid, @Param("type") GroupType type);
 
-    List<ExportCourseIncomeDto> exportCourseIncome(@Param("month") String month);
+    List<ExportCourseIncomeDto> exportCourseIncome(@Param("cutFirstDayOfMonth") String cutFirstDayOfMonth, @Param("cutLastDayOfMonth") String cutLastDayOfMonth);
 
     List<CourseSchedule> getNotStartOnlineNoLive(@Param("beforeTime") Integer beforeTime, @Param("tenantInfoId") Integer tenantInfoId);
 

+ 3 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -6209,7 +6209,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 
     @Override
     public List<ExportCourseIncomeDto> exportCourseIncome(String month) {
-        return courseScheduleDao.exportCourseIncome(month);
+		String cutFirstDayOfMonth = DateUtil.dateToString(DateUtil.getFirstDayOfMonth(DateUtil.stringToDate(month,DateUtil.ISO_YEAR_MONTH_FORMAT)),DateUtil.ISO_EXPANDED_DATE_FORMAT);
+		String cutLastDayOfMonth = DateUtil.dateToString(DateUtil.getLastDayOfMonth(DateUtil.stringToDate(month,DateUtil.ISO_YEAR_MONTH_FORMAT)),DateUtil.ISO_EXPANDED_DATE_FORMAT);
+		return courseScheduleDao.exportCourseIncome(cutFirstDayOfMonth,cutLastDayOfMonth);
     }
 
     @Override

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -4488,7 +4488,7 @@
         select o.name_ organName,cs.id_ courseId,SUM(cssp.actual_price_) amount from course_schedule cs
         left join course_schedule_student_payment cssp ON cs.id_ = cssp.course_schedule_id_
         left join organization o ON o.id_ = cs.organ_id_
-        where DATE_FORMAT(cs.class_date_,'%Y-%m') = #{month} AND cssp.actual_price_ > 0
+        where cs.class_date_ BETWEEN #{cutFirstDayOfMonth} AND #{cutLastDayOfMonth} AND cssp.actual_price_ > 0
           AND cs.del_flag_ = '0' AND cs.is_lock_ = 0 and cs.pre_course_flag_ != 1
           AND cs.tenant_id_ = 1
         group by cs.id_ order by cs.organ_id_;

+ 2 - 2
mec-biz/src/main/resources/config/mybatis/StudentMapper.xml

@@ -1021,10 +1021,10 @@
         </foreach>
     </update>
     <update id="cleanStudentMember">
-        UPDATE student SET member_rank_setting_id_ = NULL WHERE NOW() > membership_end_time_
+        UPDATE student SET member_rank_setting_id_ = NULL WHERE NOW() > membership_end_time_ AND member_rank_setting_id_ IS NOT NULL
     </update>
     <update id="cleanExperienceStudentMember">
-        UPDATE student SET experience_member_rank_setting_id_ = NULL WHERE NOW() > experience_membership_end_time_
+        UPDATE student SET experience_member_rank_setting_id_ = NULL WHERE NOW() > experience_membership_end_time_ AND experience_member_rank_setting_id_ IS NOT NULL
     </update>
     <update id="cleanMember">
         UPDATE student SET member_rank_setting_id_ = NULL,membership_start_time_ = NULL,membership_end_time_ = NULL