Explorar el Código

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

zouxuan hace 5 años
padre
commit
439244ac80

+ 12 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ExtracurricularExercisesDao.java

@@ -2,6 +2,7 @@ package com.ym.mec.biz.dal.dao;
 
 import com.ym.mec.biz.dal.entity.ExtracurricularExercises;
 import com.ym.mec.common.dal.BaseDAO;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 import java.util.Map;
@@ -11,4 +12,15 @@ public interface ExtracurricularExercisesDao extends BaseDAO<Long, Extracurricul
     int countExtraExercises(Map<String, Object> params);
     List<ExtracurricularExercises> findExtraExercises(Map<String, Object> params);
 
+    /**
+     * 查询同一个老师对同一批学员布置相同作业的最新记录
+     * @param teacherId
+     * @param studentIdList
+     * @param content
+     * @return
+     */
+    ExtracurricularExercises findRepeatLastExercises(@Param("teacherId") Integer teacherId,
+                             @Param("studentIdList") String studentIdList,
+                             @Param("content") String content);
+
 }

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -634,6 +634,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             musicGroup.setSettlementType(type);
             musicGroupDao.update(musicGroup);
         }
+        if(classGroupAndTeachers == null || classGroupAndTeachers.size()==0){
+            return null;
+        }
 
         List<Integer> classGroupIds = classGroupAndTeachers.stream().map(ClassGroupTeachersDto::getId).collect(Collectors.toList());
 

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -572,6 +572,10 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 								BigDecimal salary = JSON.parseObject(tdms.getSalaryRuleJson()).getBigDecimal(studentNum.toString());
 								courseScheduleTeacherSalary.setExpectSalary(salary);
 							}
+
+							if (type.equals(CourseSchedule.CourseScheduleType.MUSIC_NETWORK)) {
+								courseScheduleTeacherSalary.setExpectSalary(JSON.parseObject(tdms.getSalaryRuleJson()).getBigDecimal("1"));
+							}
 						}
 						courseScheduleTeacherSalary.setCreateTime(now);
 						courseScheduleTeacherSalary.setUpdateTime(now);
@@ -2657,6 +2661,10 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 							ts.setExpectSalary(salary);
 						}
 
+						if (newCourseSchedule.getType().equals(CourseSchedule.CourseScheduleType.MUSIC_NETWORK)) {
+							ts.setExpectSalary(JSON.parseObject(tdms.getSalaryRuleJson()).getBigDecimal("1"));
+						}
+
 					} else if (newCourseSchedule.getGroupType() == GroupType.VIP) {
 						/*Map<Integer, TeacherDefaultVipGroupSalary> map = vipGroupSalaryMap.get(teacherId);
 						if (map == null) {

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

@@ -60,7 +60,12 @@ public class ExtracurricularExercisesServiceImpl extends BaseServiceImpl<Long, E
 		}
 		
 		Teacher teacher = teacherDao.getLocked(exercises.getTeacherId());
-		
+
+		ExtracurricularExercises repeatLastExercises = extracurricularExercisesDao.findRepeatLastExercises(exercises.getTeacherId(), exercises.getStudentIdList(), exercises.getContent());
+		if(Objects.nonNull(repeatLastExercises)&&DateUtil.secondsBetween(repeatLastExercises.getCreateTime(),new Date())<60){
+			return;
+		}
+
 		if(Objects.isNull(exercises.getExpireDate())){
 			LocalDateTime localDateTime=LocalDateTime.now();
 			localDateTime=localDateTime.plusDays(2).withHour(21).withMinute(0).withSecond(0);

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

@@ -80,7 +80,7 @@ public class OnlineMusicGroupServiceImpl implements OnlineMusicGroupService {
     @Autowired
     private SysMessageService sysMessageService;
 
-    @Transactional(rollbackFor = Exception.class, isolation = Isolation.DEFAULT)
+    @Transactional(rollbackFor = Exception.class, isolation = Isolation.READ_COMMITTED)
     @Override
     public Map<String, Object> createOnlineMusicClassGroup(OnlineMusicGroupCourseDto onlineMusicGroupCourseInfo) {
         if(Objects.isNull(onlineMusicGroupCourseInfo.getMusicGroupId())){
@@ -325,7 +325,7 @@ public class OnlineMusicGroupServiceImpl implements OnlineMusicGroupService {
         if (!CollectionUtils.isEmpty(userCourses)) {
             Map<GroupType, List<CourseSchedule>> courseTypeCourseMap = userCourses.stream().collect(Collectors.groupingBy(CourseSchedule::getGroupType));
 
-            List<CourseSchedule> practiceCourses = courseTypeCourseMap.get(GroupType.MUSIC);
+            List<CourseSchedule> practiceCourses = courseTypeCourseMap.get(GroupType.PRACTICE);
             if (!CollectionUtils.isEmpty(practiceCourses)) {
                 for (CourseSchedule practiceCourse : practiceCourses) {
                     if (!includeTeacherIds.contains(practiceCourse.getTeacherId())) {

+ 7 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysUserCashAccountServiceImpl.java

@@ -90,12 +90,17 @@ public class SysUserCashAccountServiceImpl extends BaseServiceImpl<Integer, SysU
             throw new BizException("现金账户[{}]余额不足,可用余额剩{}元", userId, cashAccount.getBalance().doubleValue());
         }
 
+        String comment = memo;
+        if(sysUserFeignService.queryUserInfo() != null){
+            comment = memo + "-" + sysUserFeignService.queryUserInfo().getId();
+        }
+
         Date date = new Date();
 
         SysUserCashAccountDetail detail = new SysUserCashAccountDetail();
         detail.setAmount(decimal);
         detail.setBalance(cashAccount.getBalance().add(decimal));
-        detail.setComment(memo + "-" + sysUserFeignService.queryUserInfo().getId());
+        detail.setComment(comment);
         detail.setCreateTime(date);
         detail.setDescription(memo);
         detail.setStatus(DealStatusEnum.SUCCESS);
@@ -195,7 +200,7 @@ public class SysUserCashAccountServiceImpl extends BaseServiceImpl<Integer, SysU
 
         sysUserCashAccountDao.update(cashAccount);
 
-        if (amount.compareTo(cashAccount.getCourseBalance())!=0) {
+        if (amount.compareTo(BigDecimal.ZERO) !=0 ) {
             SysUserCoursesAccountDetail sysUserCoursesAccountDetail = new SysUserCoursesAccountDetail();
             sysUserCoursesAccountDetail.setUserId(userId);
             sysUserCoursesAccountDetail.setAmount(amount);

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

@@ -2649,8 +2649,7 @@
         AND cgtm.`teacher_role_` = 'BISHOP'
         LEFT JOIN `course_schedule` cs ON cs.`class_group_id_` = cg.`id_`
         WHERE
-        cgsm.user_id_=#{studentId}
-        AND cgtm.teacher_role_='BISHOP'
+        cgtm.teacher_role_='BISHOP'
         AND cgsm.status_ = 'NORMAL'
         AND cg.group_type_ IN ( 'PRACTICE', 'MUSIC', 'VIP' )
         AND cs.`id_` IS NOT NULL

+ 11 - 0
mec-biz/src/main/resources/config/mybatis/ExtracurricularExercisesMapper.xml

@@ -149,4 +149,15 @@
 		ORDER BY create_time_ DESC
 		<include refid="global.limit"/>
 	</select>
+    <select id="findRepeatLastExercises" resultMap="ExtracurricularExercises">
+		SELECT
+			*
+		FROM
+			extracurricular_exercises
+		WHERE
+			teacher_id_ = #{teacherId}
+			AND student_id_list_ = #{studentIdList}
+			AND content_ = #{content}
+		ORDER BY create_time_ DESC LIMIT 1
+	</select>
 </mapper>

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

@@ -227,6 +227,7 @@
 		WHERE mgstf.music_group_id_=#{musicGroupId}
 		AND mgstf.subject_id_=#{subjectId}
 		AND mgstf.remain_network_class_times_>0
+		ORDER BY su.id_
 	</select>
 	<select id="sumActualAmount" resultType="java.math.BigDecimal">
 		SELECT SUM(mgpcd.actual_amount_) FROM music_group_payment_calender_detail mgpcd

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

@@ -611,6 +611,6 @@
     <select id="findMusicGroupAllStudentSubjects" resultMap="com.ym.mec.biz.dal.dao.SubjectDao.Subject">
         SELECT DISTINCT s.* FROM student_registration sr
         LEFT JOIN subject s ON sr.actual_subject_id_=s.id_
-        WHERE sr.music_group_id_=#{musicGroupId};
+        WHERE sr.music_group_id_=#{musicGroupId} ORDER BY s.id_
     </select>
 </mapper>

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/controller/ClassGroupController.java

@@ -215,7 +215,7 @@ public class ClassGroupController extends BaseController {
     @ApiParam(value = "乐团班级老师<包含相应课酬>json", required = true)
     public HttpResponseResult setClassGroupTeacherSalary(@RequestBody List<ClassGroupTeacherMapper> classGroupTeacherMapperList) throws Exception {
         if (classGroupTeacherMapperList.size() <= 0) {
-            return failed("参数不合法");
+            return failed("没有待确认的课酬,如需成团,请走下一步,确认\"发放清单\"");
         }
         return succeed(classGroupTeacherMapperService.classGroupTeacherMapperUpdate(classGroupTeacherMapperList));
     }