Przeglądaj źródła

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

yonge 4 lat temu
rodzic
commit
00a93cc7e4

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentCompetitionQueryInfo.java

@@ -36,6 +36,16 @@ public class StudentCompetitionQueryInfo extends QueryInfo {
 
     private java.util.Date createTime;
 
+    private Integer isReview;
+
+    public Integer getIsReview() {
+        return isReview;
+    }
+
+    public void setIsReview(Integer isReview) {
+        this.isReview = isReview;
+    }
+
     public Boolean getGender() {
         return gender;
     }

+ 9 - 11
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -1919,7 +1919,8 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                             }
                         }
                         //线上小班课
-                        if (classGroup4MixDto.getCourseType().equals(CourseSchedule.CourseScheduleType.HIGH_ONLINE)) {
+                        if (classGroup4MixDto.getCourseType().equals(CourseSchedule.CourseScheduleType.HIGH_ONLINE)||classGroup4MixDto.getCourseType().equals(CourseScheduleType.HIGH)) {
+                            teacherDefaultMusicGroupSalary = collect.get(CourseSchedule.CourseScheduleType.HIGH_ONLINE);
                             Integer studentNum = classGroupStudentMapperDao.countClassGroupNormalStudentNum(classGroupTeacherMapper.getClassGroupId());
                             if (studentNum < 3 || studentNum > 5) {
                                 String numWaring = studentNum < 3 ? "人数不能小于3," : "人数不能大于5,";
@@ -2221,7 +2222,8 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                             }
                         }
                         //线上小班课
-                        if (classGroup4MixDto.getCourseType().equals(CourseSchedule.CourseScheduleType.HIGH_ONLINE)) {
+                        if (classGroup4MixDto.getCourseType().equals(CourseSchedule.CourseScheduleType.HIGH_ONLINE)||classGroup4MixDto.getCourseType().equals(CourseScheduleType.HIGH)) {
+                            teacherDefaultMusicGroupSalary = collect.get(CourseSchedule.CourseScheduleType.HIGH_ONLINE);
                             Integer studentNum = classGroupStudentMapperDao.countClassGroupNormalStudentNum(classGroupTeacherMapper.getClassGroupId());
                             if (studentNum < 3 || studentNum > 5) {
                                 String numWaring = studentNum < 3 ? "人数不能小于3," : "人数不能大于5,";
@@ -2505,15 +2507,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
 
                         salary = baseSalary.multiply(classTimeDuty).setScale(2, BigDecimal.ROUND_HALF_UP);
 
-                        //基础技能提高课
-                        if (classGroup4MixDto.getCourseType().equals(CourseSchedule.CourseScheduleType.HIGH)) {
-                            salary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacher30MinSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacher30MinSalary();
-                            if (settlementType.equals(SalarySettlementTypeEnum.GRADIENT_SALARY)) {
-                                salary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacher90MinSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacher90MinSalary();
-                            }
-                        }
                         //线上小班课
-                        if (classGroup4MixDto.getCourseType().equals(CourseSchedule.CourseScheduleType.HIGH_ONLINE)) {
+                        if (classGroup4MixDto.getCourseType().equals(CourseSchedule.CourseScheduleType.HIGH_ONLINE)||classGroup4MixDto.getCourseType().equals(CourseScheduleType.HIGH)) {
+                            teacherDefaultMusicGroupSalary = collect.get(CourseSchedule.CourseScheduleType.HIGH_ONLINE);
                             Integer studentNum = classGroupStudentMapperDao.countClassGroupNormalStudentNum(classGroupTeacherMapper.getClassGroupId());
                             if (studentNum < 3 || studentNum > 5) {
                                 String numWaring = studentNum < 3 ? "人数不能小于3," : "人数不能大于5,";
@@ -2548,7 +2544,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             }
         }
 
-        courseScheduleService.checkSnapCourseShchedules(courseScheduleList);
+//        courseScheduleService.checkSnapCourseShchedules(courseScheduleList);
+
+        courseScheduleService.checkNewCourseSchedules(courseScheduleList, false);
 
         //老师结算表
         if (courseScheduleTeacherSalaryList.size() > 0) {

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

@@ -450,7 +450,8 @@ public class ClassGroupStudentMapperServiceImpl extends BaseServiceImpl<Long, Cl
                         throw new BizException("请设置老师线上网管课课酬");
                     }
                     Map<CourseSchedule.CourseScheduleType, TeacherDefaultMusicGroupSalary> collect = teacherSalaryList.stream().collect(Collectors.toMap(TeacherDefaultMusicGroupSalary::getCourseScheduleType, teacherDefaultMusicGroupSalary -> teacherDefaultMusicGroupSalary));
-                    TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary = collect.get(courseSchedule.getType());
+                    TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary = collect.get(CourseSchedule.CourseScheduleType.HIGH_ONLINE);
+
                     BigDecimal salary = JSON.parseObject(teacherDefaultMusicGroupSalary.getSalaryRuleJson()).getBigDecimal(studentIds.size()+"");
 
                     CourseScheduleTeacherSalary courseScheduleTeacherSalary = new CourseScheduleTeacherSalary();

+ 5 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java

@@ -304,9 +304,10 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 		}
 		//如果是进行中加学生,查看学员是否在团
 		if (musicGroupPaymentCalender.getPaymentType() == PaymentType.ADD_STUDENT) {
-			StudentRegistration studentRegistration = studentRegistrationDao.findStudentByMusicGroupIdAndUserId(musicGroupId, Integer.parseInt(musicGroupPaymentCalender.getStudentIds()));
-			if(studentRegistration.getMusicGroupStatus() == StudentMusicGroupStatusEnum.QUIT){
-				throw new BizException("修改失败:学员已退团");
+			musicGroupPaymentCalender.setStudentIds(originMusicGroupPaymentCalender.getStudentIds());
+			StudentRegistration studentRegistration = studentRegistrationDao.queryByUserIdAndMusicGroupId(Integer.parseInt(musicGroupPaymentCalender.getStudentIds()),musicGroupId);
+			if(studentRegistration == null){
+				throw new BizException("修改失败:学员不存在或已退团");
 			}
 		}
 		
@@ -362,7 +363,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 					if (defaultUnitPrice == null) {
 						throw new BizException("请先设置分部课程类型单价");
 					}
-					if (courseSettings.getCourseCurrentPrice().divide(new BigDecimal(courseSettings.getCourseTotalMinuties()))
+					if (courseSettings.getCourseCurrentPrice().divide(new BigDecimal(courseSettings.getCourseTotalMinuties()), CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_DOWN)
 							.compareTo(defaultUnitPrice.getUnitPrice()) != 0) {
 						musicGroupPaymentCalender.setStatus(PaymentCalenderStatusEnum.AUDITING);
 						break;

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

@@ -87,7 +87,7 @@ public class StudentCompetitionServiceImpl extends BaseServiceImpl<Long, Student
 
 	@Override
 	public void updateCompetition(StudentCompetition studentCompetition) {
-		if(Objects.nonNull(studentCompetition.getPrizeLevel())){
+		if(Objects.nonNull(studentCompetition.getPrizeLevel())&&studentCompetition.getPrizeLevel()>0){
 			Set<Long> competitionsWithPrizeLevel = studentCompetitionDao.getCompetitionsWithPrizeLevel(studentCompetition.getPrizeLevel());
 			int maxPrizeLevelUserNum = 0;
 			switch (studentCompetition.getPrizeLevel()){

+ 28 - 3
mec-biz/src/main/resources/config/mybatis/StudentCompetitionMapper.xml

@@ -127,14 +127,38 @@
 			<if test="isShow!=null">
 				AND is_show_=#{isShow}
 			</if>
+			<if test="isReview!=null and isReview==0">
+				AND prize_level_ IS NULL
+			</if>
+			<if test="isReview!=null and isReview==1">
+				AND prize_level_ IS NOT NULL
+			</if>
 			<if test="search!=null and search!=''">
-				AND (CAST(age_ AS CHAR)=#{search} OR username_ LIKE CONCAT('%', #{search}, '%') OR id_card_no_ LIKE CONCAT('%', #{search}, '%'))
+				AND (CAST(age_ AS CHAR)=#{search} OR CAST(user_id_ AS CHAR)=#{search} OR username_ LIKE CONCAT('%', #{search}, '%') OR id_card_no_ LIKE CONCAT('%', #{search}, '%'))
 			</if>
 		</where>
 	</sql>
 
 	<select id="queryStudentCompetitions" resultMap="StudentCompetition">
-		SELECT * FROM student_competition
+		SELECT
+			id_,
+			user_id_,
+			username_,
+			id_card_no_,
+			age_,
+			gender_,
+			grade_,
+			subject_,
+			chapter_,
+			picture_url_,
+			video_url_,
+			CASE WHEN score_ IS NULL THEN -1 ELSE score_ END score_,
+			CASE WHEN prize_level_ IS NULL THEN -1 ELSE prize_level_ END prize_level_,
+			is_show_,
+			comment_,
+			create_time_,
+			update_time_
+		FROM student_competition
 		<include refid="queryStudentCondition"/>
 		ORDER BY id_ DESC
 		<include refid="global.limit"/>
@@ -145,7 +169,8 @@
 	</select>
 
 	<select id="getWinnerList" resultMap="StudentCompetition">
-		SELECT * FROM student_competition WHERE is_show_ = 1 AND prize_level_ &gt; 0 ORDER BY prize_level_,score_ DESC
+		SELECT * FROM student_competition WHERE is_show_ = 1 AND prize_level_ &gt; 0
+		ORDER BY ISNULL(prize_level_),prize_level_,ISNULL(score_),score_ DESC
 	</select>
 
 	<select id="getCompetitionWithUser" resultMap="StudentCompetition">