Explorar o código

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

zouxuan %!s(int64=5) %!d(string=hai) anos
pai
achega
538d5d0d3c

+ 6 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.auth.api.entity.SysUserRole;
+import com.ym.mec.auth.api.enums.SysUserType;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.*;
@@ -543,6 +544,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void classStartDateAdjust(List<CourseSchedule> newCourseSchedules) {
+		SysUser sysUser = sysUserFeignService.queryUserInfo();
 		List<Long> newCourseScheduleIds = newCourseSchedules.stream().map(CourseSchedule::getId).collect(Collectors.toList());
 		//获取对应未修改的课程列表
 		List<CourseSchedule> oldCourseScheduleList = courseScheduleDao.findByCourseScheduleIds(newCourseScheduleIds);
@@ -565,15 +567,15 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		Map<Long, CourseSchedule> oldCourseSchedules = oldCourseScheduleList.stream().collect(Collectors.toMap(CourseSchedule::getId,courseSchedule -> courseSchedule));
 		newCourseSchedules.forEach(newCourseSchedule -> {
 
-			if(newCourseSchedule.getStartClassTime().before(tomorrow)){
+			if(newCourseSchedule.getStartClassTime().before(tomorrow)&&sysUser.getUserType().equals(SysUserType.TEACHER)){
 			    throw new BizException("调整时间必须为明天以后");
             }
 
 			CourseSchedule oldCourseSchedule = oldCourseSchedules.get(newCourseSchedule.getId());
 
-//            if(oldCourseSchedule.getStartClassTime().before(now)){
-//                throw new BizException("不能调整今天及以前的课程");
-//            }
+            if(oldCourseSchedule.getStartClassTime().before(now)&&sysUser.getUserType().equals(SysUserType.TEACHER)){
+                throw new BizException("不能调整今天及以前的课程");
+            }
 
 			oldCourseSchedule.setClassDate(newCourseSchedule.getClassDate());
 			oldCourseSchedule.setStartClassTime(newCourseSchedule.getStartClassTime());

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

@@ -9,6 +9,7 @@ import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -130,8 +131,14 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                 .map(CourseScheduleTeacherSalary::getCourseScheduleId)
                 .collect(Collectors.toList());
         List<ClassGroup> byCourseSchedules = classGroupDao.findByCourseSchedules(courseScheduleIds);
-        Map<Integer, ClassGroup> classGroupMap = byCourseSchedules.stream()
-                .collect(Collectors.toMap(ClassGroup::getId,classGroup -> classGroup));
+        
+		Map<Integer, ClassGroup> classGroupMap = new HashMap<Integer, ClassGroup>();
+		for (ClassGroup classGroup : byCourseSchedules) {
+			if (!classGroupMap.containsKey(classGroup.getId())) {
+				classGroupMap.put(classGroup.getId(), classGroup);
+			}
+		}
+        
         List<TeacherAttendance> teacherIdByCourseSchedule = teacherAttendanceDao.findTeacherIdByCourseSchedule(courseScheduleIds);
         Map<Long, List<TeacherAttendance>> courseScheduleTeacherAttendanceMap = teacherIdByCourseSchedule.stream()
                 .collect(Collectors.groupingBy(TeacherAttendance::getCourseScheduleId));

+ 22 - 23
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -256,7 +256,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		courseScheduleService.checkNewCourseSchedules(vipGroup.getCourseSchedules(),false);
 		vipGroupApplyBaseInfoDto.setCourseSchedulesJson(JSON.toJSONString(vipGroup.getCourseSchedules()));
 		vipGroupDao.update(vipGroupApplyBaseInfoDto);
-
 	}
 
 	@Override
@@ -512,7 +511,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			throw new BizException("未找到指定课程");
 		}
 		StudentVipGroupDetailDto vipGroupDetail = vipGroupDao.getVipGroupDetail(vipGroupId);
-		if(CollectionUtils.isEmpty(vipGroupDetail.getCourseSchedules())){
+		if(vipGroup.getStatus().equals(VipGroupStatusEnum.APPLYING)){
 			vipGroupDetail.setCourseSchedules(JSON.parseArray(vipGroup.getCourseSchedulesJson(),CourseSchedule.class));
 		}
 
@@ -757,21 +756,29 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 
 		List<ClassGroupStudentMapper> classGroupStudents = classGroupStudentMapperDao.findByClassGroup(classGroup.getId());
 
+		ImGroupMember[] imGroupMembers1=new ImGroupMember[classGroupStudents.size()];
 		//生成学生单课缴费信息
-		for (ClassGroupStudentMapper classGroupStudent : classGroupStudents) {
-			courseScheduleStudentPaymentService.createCourseScheduleStudentPaymentForVipGroup(vipGroupId,classGroupStudent.getUserId());
+		for (int i=0;i<classGroupStudents.size();i++) {
+			courseScheduleStudentPaymentService.createCourseScheduleStudentPaymentForVipGroup(vipGroupId,classGroupStudents.get(i).getUserId());
+			imGroupMembers1[i]=new ImGroupMember(classGroupStudents.get(i).getUserId().toString());
 		}
 
-		//创建融云班级群
-		ImGroupMember[] imGroupMembers = { new ImGroupMember(vipGroupApplyBaseInfoDto.getUserId().toString())};
-		// 创建群组
-		imFeignService.groupCreate(new ImGroupModel(classGroup.getId().toString(), imGroupMembers, classGroup.getName()));
+		try {
+			//创建融云班级群
+			ImGroupMember[] imGroupMembers = { new ImGroupMember(vipGroupApplyBaseInfoDto.getUserId().toString())};
+			// 创建群组
+			imFeignService.groupCreate(new ImGroupModel(classGroup.getId().toString(), imGroupMembers, classGroup.getName()));
 
-		//发送推送短信
-		Map<Integer,String> map = new HashMap<>(1);
-		map.put(vipGroupApplyBaseInfoDto.getUserId(),sysUser.getPhone());
-		sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI,MessageTypeEnum.TEACHER_SMS_VIP_COURSE_ADD,
-				map,null,0,"",vipGroupApplyBaseInfoDto.getName());
+			imFeignService.groupJoin(new ImGroupModel(classGroup.getId().toString(), imGroupMembers1, null));
+
+			//发送推送短信
+			Map<Integer,String> map = new HashMap<>(1);
+			map.put(vipGroupApplyBaseInfoDto.getUserId(),sysUser.getPhone());
+			sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI,MessageTypeEnum.TEACHER_SMS_VIP_COURSE_ADD,
+					map,null,0,"",vipGroupApplyBaseInfoDto.getName());
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
 	}
 
 	@Transactional(rollbackFor = Exception.class)
@@ -841,8 +848,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		Map<String,Object> payMap = payService.getPayMap(
 				vipGroup.getTotalPrice(),
 				orderNo,
-				"https://dyme.utools.club/api-student/studentOrder/notify",
-				"http://dyme.utools.club/#/paymentresult?orderNo="+orderNo,
+				"http://mstudev.dayaedu.com/api-student/studentOrder/notify",
+				"http://mstudev.dayaedu.com/#/paymentresult?orderNo=" + orderNo,
 				"vip课购买",
 				vipGroup.getName());
 		studentPaymentOrder.setPaymentChannel((String) payMap.get("type"));
@@ -905,14 +912,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		classGroupStudentMapper.setMusicGroupId(vipGroupId.toString());
 		classGroupStudentMapperDao.insert(classGroupStudentMapper);
 
-		try {
-			//将学员加入vip班级群组
-			ImGroupMember[] imGroupMembers = new ImGroupMember[]{new ImGroupMember(userId.toString())};
-			imFeignService.groupJoin(new ImGroupModel(vipGroupClassGroupMapper.getClassGroupId().toString(), imGroupMembers, null));
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-
 		//更新所属分部列表
 		List<Integer> organIds = classGroupDao.findStudentOrganIdsByClassGroup(vipGroupClassGroupMapper.getClassGroupId().longValue());
 		organIds.add(vipGroup.getOrganId());

+ 1 - 1
mec-biz/src/main/resources/config/contracts/courses.ftl

@@ -156,7 +156,7 @@
         6、双方因履行本协议而相互发出或者提供的所有通知、文件、资料,均以本协议中所列明的电话、APP推送消息送达,乙方如果变更电话号码的,应当自变更后1日内通知甲方且获得甲方确认,甲方通过电话、APP方式无法联系乙方或者甲方认为必要时,甲方也可以通过特快专递至乙方住址的方式向乙方发出上述任何通知、文件、资料等,并在甲方寄出特快专递后第5日视为送达成功。
         
         <div class="signature">
-            <div class="sign">甲方签章:深圳大雅乐盟网络教育股份有限公司
+            <div class="sign">甲方签章:深圳大雅乐盟网络教育股份有限公司<img class="cachet" src="https://daya-online.oss-cn-beijing.aliyuncs.com/website/cachet.png" alt="" />
                 <span>日期:${.now?string("yyyy年MM月dd日")}</span>
             </div>
             <div class="sign">乙方签字:${studentInfo.realName!}

+ 1 - 1
mec-biz/src/main/resources/config/contracts/goods.ftl

@@ -135,7 +135,7 @@
         3、本协议未尽事宜或对本协议的任何修改、补充,由双方另行协商后以签订补充协议的方式解决,补充协议与本协议具有同等法律效力;双方没有约定也没有协商一致的,遵照相关法律法规规定执行。<br/>
         4、双方因履行本协议而相互发出或者提供的所有通知、文件、资料,均以本协议中所列明的电话、APP推送消息送达,乙方如果变更电话号码的,应当自变更后1日内通知甲方且获得甲方确认,甲方通过电话、APP方式无法联系乙方或者甲方认为必要时,甲方也可以通过特快专递至乙方住址的方式向乙方发出上述任何通知、文件、资料等,并在甲方寄出特快专递后第5日视为送达成功。
         <div class="signature">
-            <div class="sign">甲方签章:深圳大雅乐盟网络教育股份有限公司
+            <div class="sign">甲方签章:深圳大雅乐盟网络教育股份有限公司<img class="cachet" src="https://daya-online.oss-cn-beijing.aliyuncs.com/website/cachet.png" alt="" />
                 <span>日期:${.now?string("yyyy年MM月dd日")}</span>
             </div>
             <div class="sign">乙方签字:${studentInfo.realName!}

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

@@ -452,9 +452,7 @@
             LEFT JOIN music_group mg ON cg.music_group_id_ = mg.id_
             LEFT JOIN school s ON vg.teacher_school_id_ = s.id_
         WHERE
-            cs.actual_teacher_id_ = #{teacherId}
-            AND cs.status_ != 'OVER'
-            AND cs.type_ = 'VIP'
+            vg.user_id_ = #{teacherId}
             AND cg.del_flag_ = 0
         GROUP BY
             vg.id_,cg.id_