Selaa lähdekoodia

Merge remote-tracking branch 'origin/master'

zouxuan 4 vuotta sitten
vanhempi
commit
b42bc438d3

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

@@ -43,12 +43,13 @@ public interface MusicGroupService extends BaseService<String, MusicGroup> {
 
 	/**
 	 * 发送家长会通知
+	 * @param userId
 	 * @param musicGroupId
 	 * @param meetingDate
 	 * @param address
 	 * @return
 	 */
-	boolean sendParentMeetingNotice(String musicGroupId, Date meetingDate, String address);
+	boolean sendParentMeetingNotice(Integer userId, String musicGroupId, Date meetingDate, String address);
 
 	/**
 	 * 零星缴费

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

@@ -2225,6 +2225,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             });
             newTeacherMapperList.forEach(e -> {
                 imGroupMemberService.join(classGroupId.longValue(), e.getUserId(), null, false);
+                imUserFriendService.classGroupChangeTeacher(classGroupId,e.getUserId());
             });
         }
         if (Objects.nonNull(classGroup4MixDtos.get(0).getCourseAddType()) && classGroup4MixDtos.get(0).getCourseAddType().equals("onlyUpdateTeacher")) {
@@ -2988,6 +2989,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         
         imGroupService.create(classGroup.getId().longValue(), musicGroup.getTeamTeacherId(), classGroup.getName(), musicGroup.getName(), musicGroup.getName(), musicGroup.getName(), null, "MUSIC");
         imGroupMemberService.join(classGroup.getId().longValue(), userRoleMap);
+        imUserFriendService.classGroupAddStudent(classGroup.getId(),userIds);
         return true;
     }
 

+ 5 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupStudentMapperServiceImpl.java

@@ -14,6 +14,7 @@ import java.util.Objects;
 import java.util.Set;
 import java.util.stream.Collectors;
 
+import com.ym.mec.biz.service.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Isolation;
@@ -46,16 +47,6 @@ import com.ym.mec.biz.dal.enums.CourseStatusEnum;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.MusicGroupStatusEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
-import com.ym.mec.biz.service.ClassGroupRelationService;
-import com.ym.mec.biz.service.ClassGroupService;
-import com.ym.mec.biz.service.ClassGroupStudentMapperService;
-import com.ym.mec.biz.service.ClassGroupTeacherMapperService;
-import com.ym.mec.biz.service.CourseScheduleService;
-import com.ym.mec.biz.service.CourseScheduleStudentPaymentService;
-import com.ym.mec.biz.service.CourseScheduleTeacherSalaryService;
-import com.ym.mec.biz.service.ImGroupMemberService;
-import com.ym.mec.biz.service.StudentRegistrationService;
-import com.ym.mec.biz.service.TeacherDefaultMusicGroupSalaryService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.entity.ImGroupMember;
 import com.ym.mec.common.entity.ImGroupModel;
@@ -105,6 +96,9 @@ public class ClassGroupStudentMapperServiceImpl extends BaseServiceImpl<Long, Cl
     @Autowired
     private CourseScheduleStudentPaymentDao courseScheduleStudentPaymentDao;
 
+    @Autowired
+    private ImUserFriendService imUserFriendService;
+
     private static String holidayUrl = "http://tool.bitefu.net/jiari/?d=";
 
     @Override
@@ -544,6 +538,7 @@ public class ClassGroupStudentMapperServiceImpl extends BaseServiceImpl<Long, Cl
             }
             //5、添加进IM群组
             imGroupMemberService.join(classGroup.getId().longValue(), userRoleMap);
+            imUserFriendService.classGroupAddStudent(classGroup.getId(),new ArrayList<>(addStudentIds));
         }
     }
 

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

@@ -3229,6 +3229,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 					ta.setMusicGroupId(newCourseSchedule.getMusicGroupId());
 					ta.setTeacherId(teacherId);
 					insertTeacherAttendanceList.add(ta);
+					imUserFriendService.classGroupChangeTeacher(newCourseSchedule.getClassGroupId(), teacherId);
 				}
 				
 			}

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

@@ -1292,7 +1292,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 		MusicGroup musicGroup = musicGroupDao.get(calender.getMusicGroupId());
 		if(musicGroup != null){
 			if(musicGroup.getStatus() == MusicGroupStatusEnum.FEE_AUDIT){
-				musicGroup.setStatus(MusicGroupStatusEnum.DRAFT);
+				musicGroup.setStatus(MusicGroupStatusEnum.PRE_BUILD_FEE);
 				musicGroup.setUpdateTime(new Date());
 				musicGroupDao.update(musicGroup);
 			}

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

@@ -512,7 +512,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 	}
 
 	@Override
-	public boolean sendParentMeetingNotice(String musicGroupId, Date meetingDate, String address) {
+	public boolean sendParentMeetingNotice(Integer userId, String musicGroupId, Date meetingDate, String address) {
 		MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
 		if (musicGroup == null) {
 			throw new BizException("乐团信息查询失败");
@@ -520,9 +520,11 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 		if (musicGroup.getStatus() != MusicGroupStatusEnum.PRE_APPLY) {
 			throw new BizException("操作失败:只有乐团在[{}]状态才能操作", MusicGroupStatusEnum.PRE_APPLY.getMsg());
 		}
+		
 		List<StudentPreRegistration> studentPreRegistrationList = studentPreRegistrationDao.queryByMusicGroupId(musicGroupId);
 		Map<Integer,String> receiverList = studentPreRegistrationList.stream().collect(Collectors.toMap(StudentPreRegistration :: getUserId, StudentPreRegistration :: getPhone));
 		
+		sysMessageService.batchSendImGroupMessage(MessageTypeEnum.SMS_MUSIC_GROUP_PARENT_MEETING_NOTICE, userId + "", null, new String[]{musicGroupId}, null, meetingDate, address);
 		sysMessageService.batchSendMessage(MessageSender.AWSMS, MessageTypeEnum.SMS_MUSIC_GROUP_PARENT_MEETING_NOTICE, receiverList, null, 1, null, null, meetingDate, address);
 		return true;
 	}

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -91,6 +91,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 	private CourseScheduleTeacherSalaryDao courseScheduleTeacherSalaryDao;
     @Autowired
 	private ImGroupMemberService imGroupMemberService;
+    @Autowired
+	private ImUserFriendService imUserFriendService;
     
     @Autowired
     private ImGroupService imGroupService;
@@ -1427,6 +1429,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		try {
 			imGroupService.create(classGroup.getId().longValue(), null, classGroup.getName(), classGroup.getName(), vipGroupApplyBaseInfoDto.getName(), null, null, GroupType.VIP.getCode());
 			imGroupMemberService.join(classGroup.getId().longValue(), userRoleMap);
+			List<Integer> studentIds = classGroupStudents.stream().map(ClassGroupStudentMapper::getUserId).collect(Collectors.toList());
+			imUserFriendService.classGroupAddStudent(classGroup.getId(), studentIds);
 
 			//发送推送短信
 			Map<Integer,String> map = new HashMap<>(1);
@@ -2029,6 +2033,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 
 		if(Objects.nonNull(studentRecoverInfo.getTeacherId())){
 			vipGroup.setUserId(studentRecoverInfo.getTeacherId());
+			imUserFriendService.classGroupChangeTeacher(classGroup.getId(), studentRecoverInfo.getTeacherId());
 		}
 
 		Map<String, Object> courseInfo = JSON.parseObject(studentPauseInfo.getCoursesJson(), Map.class);
@@ -2135,6 +2140,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
         classGroup.setTotalClassTimes(courseScheduleDao.countClassGroupCourses(classGroup.getId()));
         classGroupDao.update(classGroup);
 		courseScheduleTeacherSalaryService.updateVipGroupCourseTeacherSalary(vipGroup.getId().intValue(),oldTeacherId);
+		imUserFriendService.classGroupAddStudent(classGroup.getId(), Arrays.asList(studentRecoverInfo.getUserId()));
 	}
 
     @Override
@@ -2657,6 +2663,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			isChange=true;
 			
 			imGroupMemberService.join(classGroup.getId().longValue(), oldVipGroupInfo.getEducationalTeacherId(), null, false);
+			imUserFriendService.groupChangeEducation(oldVipGroupInfo.getId().toString(), oldVipGroupInfo.getEducationalTeacherId(), GroupType.VIP);
 		}
 		if(Objects.nonNull(vipGroupApplyBaseInfo.getOrganId())&&!vipGroupApplyBaseInfo.getOrganId().equals(oldVipGroupInfo.getOrganId())){
 			isChange=true;
@@ -2913,6 +2920,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			try {
 				imGroupService.create(classGroup.getId().longValue(), null, classGroup.getName(), classGroup.getName(), vipGroup.getName(), null, null, GroupType.VIP.getCode());
 				imGroupMemberService.join(classGroup.getId().longValue(), userRoleMap);
+				imUserFriendService.classGroupAddStudent(classGroup.getId(), studentIds);
 			} catch (Exception e) {
 				e.printStackTrace();
 			}
@@ -3095,6 +3103,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		try {
 			imGroupService.create(classGroup.getId().longValue(), null, classGroup.getName(), classGroup.getName(), vipGroup.getName(), null, null, GroupType.VIP.getCode());
 			imGroupMemberService.join(classGroup.getId().longValue(), userRoleMap);
+			imUserFriendService.classGroupAddStudent(classGroup.getId(), studentIds);
 		} catch (Exception e) {
 			e.printStackTrace();
 		}

+ 7 - 6
mec-web/src/main/java/com/ym/mec/web/controller/ContractsController.java

@@ -2,15 +2,14 @@ package com.ym.mec.web.controller;
 
 import java.math.BigDecimal;
 import java.util.Date;
+import java.util.List;
 
 import com.ym.mec.common.entity.HttpResponseResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
@@ -79,9 +78,11 @@ public class ContractsController extends BaseController {
 		return succeed(contractService.queryPracticeCoursesContract(sysUser.getId(), courseSectionNum, startDate, endDate, fee));
 	}
 
-	@GetMapping("transferProduceContract")
-	public HttpResponseResult transferProduceContract(Integer userId,String musicGroupId){
-		contractService.transferProduceContract(userId,musicGroupId);
+	@PostMapping("transferProduceContract")
+	public HttpResponseResult transferProduceContract(@RequestBody List<Integer> userIds){
+		for (Integer userId : userIds) {
+			contractService.transferProduceContract(userId,null);
+		}
 		return succeed();
 	}
 }

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

@@ -17,6 +17,7 @@ import java.util.Set;
 
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -320,7 +321,11 @@ public class MusicGroupController extends BaseController {
 	@PostMapping("/sendParentMeetingNotice")
 	@PreAuthorize("@pcs.hasPermissions('musicGroup/sendParentMeetingNotice')")
 	public HttpResponseResult<Boolean> sendParentMeetingNotice(String musicGroupId, Date meetingDate, String address) {
-		return musicGroupService.sendParentMeetingNotice(musicGroupId, meetingDate, address) ? succeed() : failed();
+		SysUser sysUser = sysUserFeignService.queryUserInfo();
+		if (sysUser == null) {
+			return failed(HttpStatus.FORBIDDEN, "用户信息获取失败");
+		}
+		return musicGroupService.sendParentMeetingNotice(sysUser.getId(), musicGroupId, meetingDate, address) ? succeed() : failed();
 	}
 
 }