Bladeren bron

Merge remote-tracking branch 'origin/master'

周箭河 5 jaren geleden
bovenliggende
commit
54321b89b2

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentBuyPracticeDto.java

@@ -11,6 +11,9 @@ public class StudentBuyPracticeDto {
     //学员名称
     private String studentName;
 
+    //老师名
+    private String teacherName;
+
     //分部
     private String organName;
 
@@ -29,6 +32,14 @@ public class StudentBuyPracticeDto {
     //时间差
     private int intervalDay;
 
+    public String getTeacherName() {
+        return teacherName;
+    }
+
+    public void setTeacherName(String teacherName) {
+        this.teacherName = teacherName;
+    }
+
     public Long getStudentId() {
         return studentId;
     }

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

@@ -626,8 +626,8 @@
 		LEFT JOIN vip_group vg ON (vg.id_ = ts.music_group_id_ AND ts.group_type_ = 'VIP')
 		LEFT JOIN vip_group_activity vga ON vg.vip_group_activity_id_ = vga.id_
 		LEFT JOIN organization vgo ON vgo.id_ = vg.organ_id_
-		WHERE cs.class_date_ BETWEEN #{firstDayOfMonth} AND #{lastDayOfMonth} AND cs.`del_flag_` != 1
-		AND cs.group_type_ = 'VIP' AND ts.settlement_time_ IS NOT NULL AND vg.organ_id_ != 41
+		WHERE vg.organ_id_ != 41 AND cs.class_date_ BETWEEN #{firstDayOfMonth} AND #{lastDayOfMonth} AND cs.`del_flag_` != 1
+		AND cs.group_type_ = 'VIP' AND ts.settlement_time_ IS NOT NULL
 		GROUP BY ts.id_,ta.id_
 	</select>
 	<select id="querySettlementScheduleId" resultType="java.lang.Long">

+ 13 - 7
mec-biz/src/main/resources/config/mybatis/PracticeGroupMapper.xml

@@ -411,6 +411,7 @@
         <result property="phone" column="phone_"/>
         <result property="studentId" column="student_id_"/>
         <result property="studentName" column="student_name_"/>
+        <result property="teacherName" column="teacher_name_"/>
         <result property="firstBuyTime" column="first_buy_time_"/>
         <result property="intervalDay" column="interval_day_"/>
         <result property="lastClassDate" column="last_class_date_"/>
@@ -422,21 +423,26 @@
         b.lastClassDate last_class_date_,c.firstBuyTime first_buy_time_,
         CASE WHEN DATEDIFF(c.firstBuyTime,b.lastClassDate) &lt; 0 THEN 0 ELSE DATEDIFF(c.firstBuyTime,b.lastClassDate)
         END interval_day_,
-        CASE WHEN c.firstBuyTime IS NULL THEN 0 ELSE 1 END buy_practice_
+        CASE WHEN c.firstBuyTime IS NULL THEN 0 ELSE 1 END buy_practice_,d.teacher_name_
         FROM
         (SELECT DISTINCT(pg.`student_id_`),pg.`organ_id_` FROM `practice_group` pg WHERE pg.`group_status_` in
         ('NORMAL','FINISH')) a
         LEFT JOIN (SELECT pg.`student_id_` ,max(concat(cs.`class_date_`,' ',cs.`end_class_time_` )) lastClassDate FROM
         `practice_group` pg
-        LEFT JOIN `course_schedule` cs on cs.`music_group_id_` = pg.`id_` and cs.`group_type_` = 'PRACTICE'
+        LEFT JOIN `course_schedule` cs on cs.`music_group_id_` = pg.`id_`
         WHERE pg.`buy_months_` IS NULL AND cs.`group_type_` = 'PRACTICE'
         GROUP BY pg.`student_id_` ) b on a.student_id_ = b.student_id_
         left join (SELECT pg.`student_id_` ,min(pg.`create_time_`) firstBuyTime
-        FROM `practice_group` pg WHERE pg.`buy_months_` IS NOT NULL AND pg.`group_status_` in ('NORMAL','FINISH') GROUP
-        BY pg.`student_id_` ) c
-        on a.student_id_ = c.student_id_
-        left join `sys_user` u on u.`id_` = a.student_id_
-        left join `organization` o on o.`id_` = a.organ_id_
+        FROM `practice_group` pg
+        WHERE pg.`buy_months_` IS NOT NULL AND pg.`group_status_` IN ('NORMAL','FINISH') GROUP
+        BY pg.`student_id_` ) c ON a.student_id_ = c.student_id_
+        LEFT JOIN (SELECT GROUP_CONCAT(DISTINCT su.real_name_) teacher_name_,pg.student_id_
+        FROM `practice_group` pg
+        LEFT JOIN `course_schedule` cs ON cs.`music_group_id_` = pg.`id_`
+        LEFT JOIN sys_user su ON su.id_ = cs.actual_teacher_id_
+        WHERE cs.`group_type_` = 'PRACTICE' AND pg.`group_status_` IN ('NORMAL','FINISH') GROUP BY pg.`student_id_` ) d ON a.student_id_ = d.student_id_
+        LEFT JOIN `sys_user` u ON u.`id_` = a.student_id_
+        LEFT JOIN `organization` o ON o.`id_` = a.organ_id_
         <include refid="queryStudentBuysSql"/>
         <include refid="global.limit"/>
     </select>

+ 2 - 2
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -104,9 +104,9 @@ public class ExportController extends BaseController {
         }
         List<StudentBuyPracticeDto> rows = practiceGroupService.studentBuys(queryInfo).getRows();
         try {
-            HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"学员编号", "学员名称", "所属分部", "购买网管课",
+            HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"学员编号", "学员名称", "所属分部","老师名称", "购买网管课",
                     "免费课结束日期", "首次购买日期", "时间差"}, new String[]{
-                    "studentId", "studentName", "organName", "buyPractice.msg",
+                    "studentId", "studentName", "organName","teacherName" ,"buyPractice.msg",
                     "lastClassDate", "firstBuyTime", "intervalDay"}, rows);
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");