فهرست منبع

Merge remote-tracking branch 'origin/master'

周箭河 4 سال پیش
والد
کامیت
810c61d4c6

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/VipGroupManageDetailDto.java

@@ -38,6 +38,16 @@ public class VipGroupManageDetailDto extends VipGroup {
 
     private BigDecimal offlineTeacherSalary;
 
+    private Boolean musicTheory;
+
+    public Boolean getMusicTheory() {
+        return musicTheory;
+    }
+
+    public void setMusicTheory(Boolean musicTheory) {
+        this.musicTheory = musicTheory;
+    }
+
     public BigDecimal getOnlineTeacherSalary() {
         return onlineTeacherSalary;
     }

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

@@ -481,7 +481,7 @@ public class StudentManageServiceImpl implements StudentManageService {
         resultMap.put("add", studentManageDao.countAddNum(musicGroupId));
         //未完成vip、网管课学员数量/该乐团在读学员人数*100%
         List<StudentRegistration> studentRegistrations = studentRegistrationDao.getMusicGroupStu(musicGroupId);
-        List<Integer> userIds = studentRegistrations.stream().filter(e -> e.getMusicGroupStatus() != StudentMusicGroupStatusEnum.QUIT).map(StudentRegistration::getUserId).collect(Collectors.toList());
+        List<Integer> userIds = studentRegistrations.stream().filter(e -> e.getMusicGroupStatus() == StudentMusicGroupStatusEnum.NORMAL).map(StudentRegistration::getUserId).collect(Collectors.toList());
         if(userIds.size() == 0){
             resultMap.put("courseRate","0.00%");
             return resultMap;

+ 17 - 16
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -326,17 +326,13 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
         if(Objects.isNull(vipGroupDefaultClassesUnitPrice)){
             vipGroupApplyBaseInfoDto.setAuditStatus(AuditStatusEnum.ING);
         }else{
-			for (VipGroupStudentCoursePrice vscp : vscps) {
-				if(Objects.nonNull(vscp.getOfflineClassesUnitPrice())
-						&&vscp.getOfflineClassesUnitPrice().compareTo(vipGroupDefaultClassesUnitPrice.getOfflineClassesUnitPrice())!=0){
-					vipGroupApplyBaseInfoDto.setAuditStatus(AuditStatusEnum.ING);
-					break;
-				}
-				if(Objects.nonNull(vscp.getOnlineClassesUnitPrice())
-						&&vscp.getOnlineClassesUnitPrice().compareTo(vipGroupDefaultClassesUnitPrice.getOnlineClassesUnitPrice())!=0){
-					vipGroupApplyBaseInfoDto.setAuditStatus(AuditStatusEnum.ING);
-					break;
-				}
+			if(Objects.nonNull(vipGroupApplyBaseInfoDto.getOfflineClassesUnitPrice())
+					&&vipGroupApplyBaseInfoDto.getOfflineClassesUnitPrice().compareTo(vipGroupDefaultClassesUnitPrice.getOfflineClassesUnitPrice())!=0){
+				vipGroupApplyBaseInfoDto.setAuditStatus(AuditStatusEnum.ING);
+			}
+			if(Objects.nonNull(vipGroupApplyBaseInfoDto.getOnlineClassesUnitPrice())
+					&&vipGroupApplyBaseInfoDto.getOnlineClassesUnitPrice().compareTo(vipGroupDefaultClassesUnitPrice.getOnlineClassesUnitPrice())!=0){
+				vipGroupApplyBaseInfoDto.setAuditStatus(AuditStatusEnum.ING);
 			}
         }
 
@@ -807,12 +803,15 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			dataList = vipGroupDao.findHaveCourseBalanceStudents(params);
 
 			List<VipGroupStudentCoursePrice> vipGroupStudentCoursePrices = vipGroupStudentCoursePriceDao.getVipGroupStudentCoursePrice(queryInfo.getVipGroupId(), null);
-			Map<Integer, VipGroupStudentCoursePrice> userPriceMap = vipGroupStudentCoursePrices.stream().collect(Collectors.toMap(VipGroupStudentCoursePrice::getStudentId, v -> v, (v1, v2) -> v1));
+			Map<Integer, VipGroupStudentCoursePrice> userPriceMap = new HashMap<>();
+			if(!CollectionUtils.isEmpty(vipGroupStudentCoursePrices)){
+				userPriceMap = vipGroupStudentCoursePrices.stream().collect(Collectors.toMap(VipGroupStudentCoursePrice::getStudentId, v -> v, (v1, v2) -> v1));
+			}
 			for (VipGroupStudentDto vipGroupStudentDto : dataList) {
-				if(!userPriceMap.containsKey(vipGroupStudentDto.getId())){
+				if(!userPriceMap.containsKey(Integer.valueOf(vipGroupStudentDto.getId().toString()))){
 					continue;
 				}
-				VipGroupStudentCoursePrice vipGroupStudentCoursePrice = userPriceMap.get(vipGroupStudentDto.getId());
+				VipGroupStudentCoursePrice vipGroupStudentCoursePrice = userPriceMap.get(Integer.valueOf(vipGroupStudentDto.getId().toString()));
 				vipGroupStudentDto.setOnlineClassesUnitPrice(vipGroupStudentCoursePrice.getOnlineClassesUnitPrice());
 				vipGroupStudentDto.setOfflineClassesUnitPrice(vipGroupStudentCoursePrice.getOfflineClassesUnitPrice());
 			}
@@ -1124,14 +1123,16 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 
 			results.put("onlineTeacherSalary", ots);
 			results.put("offlineTeacherSalary", ofts);
+		}else{
+
 		}
 
 		if(Objects.isNull(vipGroupActivity)||vipGroupCategory.getMusicTheory()){
 			BigDecimal ots = teacherDefaultVipGroupSalary.getOfflineClassesSalary();
 			BigDecimal ofts = teacherDefaultVipGroupSalary.getOfflineClassesSalary();
 			if(Objects.nonNull(vipGroup.getStatus())&&vipGroupCategory.getMusicTheory()){
-				ots = ots.multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
-				ofts = ofts.multiply(new BigDecimal(normalStudentNum>5?5:normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
+				ots = ots.multiply(new BigDecimal(normalStudentNum>5?5:normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
+				ofts = ofts.multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
 			}
 			results.put("totalPrice",vipGroup.getTotalPrice());
 			results.put("onlineTeacherSalary",ots);

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

@@ -88,6 +88,7 @@
         <result property="subjectIdList" column="subject_id_list_"/>
         <result property="categoryName" column="category_name_"/>
         <result column="teacher_school_name_" property="teacherSchoolName"/>
+        <result column="music_theory_" property="musicTheory"/>
         <!--<collection property="students" ofType="com.ym.mec.auth.api.entity.SysUser" column="student_id_">-->
         <!--<result property="id" column="student_id_"/>-->
         <!--<result property="username" column="username_"/>-->
@@ -352,7 +353,6 @@
             AND status_='SUCCESS') = 0
             AND vg.organ_id_ = #{organId} AND IF(vg.student_id_list_ IS NULL,1,FIND_IN_SET(#{userId},
             vg.student_id_list_))
-            AND vg.vip_group_activity_id_ IS NOT NULL
             AND vgc.music_theory_ = 0
             <if test="subjectId!=null">
                 AND FIND_IN_SET(#{subjectId},cg.subject_id_list_)
@@ -420,7 +420,8 @@
                cg.total_class_times_,
                cg.current_class_times_,
                vgc.name_     category_name_,
-               s.name_       teacher_school_name_
+               s.name_       teacher_school_name_,
+               vgc.music_theory_
         FROM vip_group vg
                  LEFT JOIN sys_user su ON vg.user_id_ = su.id_
                  LEFT JOIN class_group cg ON vg.id_ = cg.music_group_id_ AND cg.group_type_ = 'VIP'