zouxuan 5 éve
szülő
commit
6a4bb34547

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

@@ -11,6 +11,8 @@ import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.common.entity.ImGroupMember;
+import com.ym.mec.common.entity.ImGroupModel;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
@@ -333,6 +335,11 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		if(auditStatus==AuditStatusEnum.REJECT&&StringUtils.isBlank(reason)){
 			throw new BizException("请填写拒绝原因");
 		}
+		if(vipGroup.getAuditStatus() == AuditStatusEnum.PASS){
+			ImGroupMember[] imGroupMembers = new ImGroupMember[]{new ImGroupMember(vipGroup.getUserId().toString())};
+			// 创建群组
+			imFeignService.groupCreate(new ImGroupModel(vipGroupId.toString(), imGroupMembers, vipGroup.getName()));
+		}
 		vipGroup.setAuditStatus(auditStatus);
 		vipGroup.setStopReason(reason);
 		vipGroupDao.update(vipGroup);
@@ -709,6 +716,9 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 	@Override
 	public Map buyVipGroup(VipGroupBuyParamsDto vipGroupBuyParams) throws Exception {
 		SysUser user = sysUserFeignService.queryUserInfo();
+		if(user == null){
+			throw new BizException("用户信息获取失败");
+		}
 
 		VipGroup vipGroup = vipGroupDao.get(vipGroupBuyParams.getVipGroupId());
 
@@ -782,6 +792,9 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 				"https://dyme.utools.club/paymentresult",
 				"vip课购买",
 				vipGroup.getName());
+		//将学员加入vip班级群组
+		ImGroupMember[] imGroupMembers = new ImGroupMember[]{new ImGroupMember(user.getId().toString())};
+		imFeignService.groupJoin(new ImGroupModel(classGroup.getId().toString(), imGroupMembers, classGroup.getName()));
 
 		return payMap;
 
@@ -872,6 +885,9 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		studentApplyRefunds.setOrigPaymentOrderId(studentPaymentOrder.getId());
 		studentApplyRefunds.setUserId(studentId.intValue());
 		studentApplyRefundsDao.insert(studentApplyRefunds);
+		//学员退出班级群
+//		ImGroupMember[] imGroupMembers = new ImGroupMember[]{new ImGroupMember(studentId.toString())};
+//		imFeignService.groupJoin(new ImGroupModel(classGroup.getId().toString(), imGroupMembers, classGroup.getName()));
 	}
 
 	@Transactional(rollbackFor = Exception.class)

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

@@ -202,9 +202,9 @@
 		WHERE sr.user_id_ = #{userId}
 	</select>
     <select id="countCourseByType" resultType="java.lang.Integer">
-		SELECT SUM(cg.total_class_times_) - SUM(cg.current_class_times_) FROM student_registration sr
-		LEFT JOIN class_group cg ON sr.class_group_id_ = cg.id_
-		WHERE sr.user_id_ = #{userId} AND cg.type_ = #{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+		SELECT SUM(cg.total_class_times_) - SUM(cg.current_class_times_) FROM class_group_student_mapper cgsm
+		LEFT JOIN class_group cg ON cgsm.class_group_id_ = cg.id_
+		WHERE sr.user_id_ = #{userId} AND cg.type_ = #{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler} AND cg.del_flag_ = 0
 	</select>
 
 	<resultMap type="com.ym.mec.biz.dal.dto.BasicUserDto" id="BasicUserDto">