Browse Source

Merge branch 'online1' of http://git.dayaedu.com/yonge/mec

zouxuan 4 years ago
parent
commit
f44d0a8449

+ 18 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/ExportTeacherSalaryDto.java

@@ -1,9 +1,13 @@
 package com.ym.mec.biz.dal.dto;
 
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+
 public class ExportTeacherSalaryDto{
 
     //课时编号
-    private Integer courseScheduleId;
+    private Long courseScheduleId;
 
     //老师编号
     private  Integer teacherId;
@@ -109,6 +113,17 @@ public class ExportTeacherSalaryDto{
     //实际上课学员
     private int realStudentNum;
 
+    @ApiModelProperty(value = "课程收入")
+    private BigDecimal courseIncome;
+
+    public BigDecimal getCourseIncome() {
+        return courseIncome;
+    }
+
+    public void setCourseIncome(BigDecimal courseIncome) {
+        this.courseIncome = courseIncome;
+    }
+
     public String getDeductionReason() {
         return deductionReason;
     }
@@ -221,11 +236,11 @@ public class ExportTeacherSalaryDto{
         this.courseScheduleEndTime = courseScheduleEndTime;
     }
 
-    public Integer getCourseScheduleId() {
+    public Long getCourseScheduleId() {
         return courseScheduleId;
     }
 
-    public void setCourseScheduleId(Integer courseScheduleId) {
+    public void setCourseScheduleId(Long courseScheduleId) {
         this.courseScheduleId = courseScheduleId;
     }
 

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/IndexBaseMonthData.java

@@ -22,13 +22,13 @@ public class IndexBaseMonthData {
 	private Integer organId;
 	
 	/** 总数量 */
-	private BigDecimal totalNum;
+	private BigDecimal totalNum = BigDecimal.ZERO;
 	
 	/** 有效数量 */
-	private BigDecimal activateNum;
+	private BigDecimal activateNum = BigDecimal.ZERO;
 	
 	/** 最终结果 */
-	private BigDecimal percent;
+	private BigDecimal percent = BigDecimal.ZERO;
 
 	private IndexDataType dataType;
 

+ 18 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java

@@ -969,6 +969,24 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         //vip课(梯度课酬)
         //陪练课
         exportTeacherSalaryDtos.addAll(courseScheduleTeacherSalaryDao.exportPracticeTeacherSalary(params));
+
+        Set<Long> allCourseIds = exportTeacherSalaryDtos.stream().map(ExportTeacherSalaryDto::getCourseScheduleId).collect(Collectors.toSet());
+        Map<Long, BigDecimal> courseIncomeMap = new HashMap<>();
+        if(!CollectionUtils.isEmpty(allCourseIds)){
+            List<CourseScheduleStudentPayment> courseScheduleStudentPayments = courseScheduleStudentPaymentDao.findByCourseScheduleIds(new ArrayList<>(allCourseIds));
+            if(!CollectionUtils.isEmpty(courseScheduleStudentPayments)){
+                courseIncomeMap = courseScheduleStudentPayments.stream().collect(Collectors.groupingBy(CourseScheduleStudentPayment::getCourseScheduleId, Collectors.mapping(CourseScheduleStudentPayment::getExpectPrice, Collectors.reducing(BigDecimal.ZERO, BigDecimal::add))));
+            }
+        }
+
+        for (ExportTeacherSalaryDto exportTeacherSalaryDto : exportTeacherSalaryDtos) {
+            if(!courseIncomeMap.containsKey(exportTeacherSalaryDto.getCourseScheduleId())){
+                exportTeacherSalaryDto.setCourseIncome(BigDecimal.ZERO);
+            }else{
+                exportTeacherSalaryDto.setCourseIncome(courseIncomeMap.get(exportTeacherSalaryDto.getCourseScheduleId()));
+            }
+        }
+
         exportTeacherSalaryDtos.sort(Comparator.comparing(ExportTeacherSalaryDto::getTeacherId));
         return exportTeacherSalaryDtos;
     }

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

@@ -616,12 +616,12 @@ public class ExportController extends BaseController {
                     "课程分部", "课程组编号", "课程班名称", "乐团模式", "vip活动名称", "Vip课程类型", "阶梯奖励名称", "线上课/线下课", "线上课单价", "线下课单价",
                     "课程类别", "课时时长", "实际上课时长", "上课日期",
                     "上课时间", "教师签到状态", "教师签退状态", "教师签到时间", "教师签退时间", "考勤申诉处理状态", "处理意见",
-                    "主辅", "上课地点", "应到学员", "学员签到时间", "学员签退时间", "课时课酬", "阶梯奖励", "扣款原因"}, new String[]{
+                    "主辅", "上课地点", "应到学员", "学员签到时间", "学员签退时间", "课时课酬", "阶梯奖励", "扣款原因", "收入"}, new String[]{
                     "courseScheduleId", "teacherId", "teacherName", "teacherOrganName", "jobType",
                     "courseScheduleOrganName", "groupId", "groupName", "changeType", "vipActiveName", "vipCategoryName", "activeName", "teachMode", "onlineClassesUnitPrice", "offlineClassesUnitPrice",
                     "courseScheduleType", "signCourseScheduleTime", "currentTime", "classDate", "courseScheduleStartTime", "signInStatus",
                     "signOutStatus", "signInTime", "signOutTime", "complaintsStatus", "disposeContent", "teacherRole", "address", "studentNum",
-                    "studentSignInTime", "studentSignOutTime", "price", "rewards", "deductionReason"}, rows);
+                    "studentSignInTime", "studentSignOutTime", "price", "rewards", "deductionReason", "courseIncome"}, rows);
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
             response.flushBuffer();