浏览代码

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

yonge 5 年之前
父节点
当前提交
c4d76a4d10

+ 23 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ClassGroupDao.java

@@ -431,4 +431,27 @@ public interface ClassGroupDao extends BaseDAO<Integer, ClassGroup> {
      * @return
      */
     int batchSoftDelete(@Param("classGroupIds") List<Integer> classGroupIds);
+
+    /**
+     * @describe 根据乐团编号和类型获取班级
+     * @author Joburgess
+     * @date 2019/11/17
+     * @param musicGroupId: 编号
+     * @param groupType: 类型
+     * @return com.ym.mec.biz.dal.entity.ClassGroup
+     */
+    ClassGroup findByMusicGroupAndType(@Param("musicGroupId") String musicGroupId,
+                                       @Param("groupType") String groupType);
+
+    /**
+     * @describe 根据乐团编号和类型获取班级
+     * @author Joburgess
+     * @date 2019/11/17
+     * @param musicGroupIds: 编号列表
+     * @param groupType: 类型
+     * @return com.ym.mec.biz.dal.entity.ClassGroup
+     */
+    List<ClassGroup> findByMusicGroupsAndType(@Param("musicGroupIds") List<String> musicGroupIds,
+                                       @Param("groupType") String groupType);
+
 }

+ 0 - 28
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/VipGroupClassGroupMapperDao.java

@@ -1,37 +1,9 @@
 package com.ym.mec.biz.dal.dao;
 
-import com.ym.mec.biz.dal.entity.ClassGroup;
 import com.ym.mec.biz.dal.entity.VipGroupClassGroupMapper;
 import com.ym.mec.common.dal.BaseDAO;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
 
 public interface VipGroupClassGroupMapperDao extends BaseDAO<Long, VipGroupClassGroupMapper> {
 
-    /**
-     * @Author: Joburgess
-     * @Date: 2019/10/2
-     * 根据vip课获取对应班级
-     */
-	VipGroupClassGroupMapper findByVipGroupId(Long vipGroupId);
-
-	/**
-	 * @describe 更据vip课获取关联的班级
-	 * @author Joburgess
-	 * @date 2019/10/20
-	 * @param vipGroupId: vip课编号
-	 * @return com.ym.mec.biz.dal.entity.ClassGroup
-	 */
-	ClassGroup findClassGroupByVipGroup(Long vipGroupId);
-
-	/**
-	 * @describe 根据vip课获取关联的班级
-	 * @author Joburgess
-	 * @date 2019/11/15
-	 * @param vipGroupIds: VIP课编号列表
-	 * @return java.util.List<com.ym.mec.biz.dal.entity.ClassGroup>
-	 */
-	List<ClassGroup> findClassGroupsByVipGroups(@Param("vipGroupIds") List<Long> vipGroupIds);
 
 }

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/VipGroupDao.java

@@ -273,4 +273,6 @@ public interface VipGroupDao extends BaseDAO<Long, VipGroup> {
 	 */
 	List<VipGroup> findNoCreateSuccessVipGroup();
 
+
+
 }

+ 12 - 21
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -43,8 +43,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 	@Autowired
 	private ClassGroupDao classGroupDao;
 	@Autowired
-	private VipGroupClassGroupMapperDao vipGroupClassGroupMapperDao;
-	@Autowired
 	private ClassGroupTeacherMapperDao classGroupTeacherMapperDao;
 	@Autowired
 	private CourseScheduleService courseScheduleService;
@@ -259,17 +257,12 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		classGroup.setTotalClassTimes(totalClassTimes);
 		classGroup.setType(ClassGroupTypeEnum.VIP);
 		classGroup.setDelFlag(YesOrNoEnum.YES);
+
 		classGroup.setMusicGroupId(vipGroupApplyBaseInfoDto.getId().toString());
 		classGroup.setCreateTime(now);
 		classGroup.setUpdateTime(now);
 		classGroupDao.insert(classGroup);
 
-		//创建vip课班级关联记录
-		VipGroupClassGroupMapper vipGroupClassGroupMapper=new VipGroupClassGroupMapper();
-		vipGroupClassGroupMapper.setVipGroupId(vipGroupApplyBaseInfoDto.getId());
-		vipGroupClassGroupMapper.setClassGroupId(classGroup.getId());
-		vipGroupClassGroupMapperDao.insert(vipGroupClassGroupMapper);
-
 		//创建班级老师关联记录
 		ClassGroupTeacherMapper classGroupTeacherMapper=new ClassGroupTeacherMapper();
 		classGroupTeacherMapper.setMusicGroupId(vipGroupApplyBaseInfoDto.getId().toString());
@@ -448,7 +441,11 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			List<Long> vipGroupIds = dataList.stream().map(vipGroup -> vipGroup.getId()).distinct().collect(Collectors.toList());
 			List<Map<Long, Integer>> vipGroupOverCourses = vipGroupDao.countVipGroupOverCourse(vipGroupIds);
 			Map<Long,Integer> vipGroupOverCourseMaps = MapUtil.convertIntegerMap(vipGroupOverCourses);
-			List<ClassGroup> classGroupsByVipGroups = vipGroupClassGroupMapperDao.findClassGroupsByVipGroups(vipGroupIds);
+
+			List<ClassGroup> classGroupsByVipGroups = classGroupDao
+					.findByMusicGroupsAndType(vipGroupIds.stream().map(vipGroupId->String.valueOf(vipGroupId)).collect(Collectors.toList()),
+							ClassGroupTypeEnum.VIP.getCode());
+
 			Map<String, ClassGroup> vipGroupClassGroupMap = classGroupsByVipGroups.stream().collect(Collectors.toMap(ClassGroup::getMusicGroupId, classGroup -> classGroup));
 			dataList.forEach(vipGroup -> {
 				Integer overCourses = vipGroupOverCourseMaps.get(vipGroup.getId());
@@ -823,7 +820,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		if(Objects.isNull(vipGroup)){
 			throw new BizException("指定的vip课程不存在");
 		}
-		ClassGroup classGroup=vipGroupClassGroupMapperDao.findClassGroupByVipGroup(vipGroupId);
+		ClassGroup classGroup=classGroupDao.findByMusicGroupAndType(vipGroupId.toString(),ClassGroupTypeEnum.VIP.getCode());
 		if(Objects.isNull(classGroup)){
 			throw new BizException("未找到关联班级");
 		}
@@ -910,13 +907,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			throw new BizException("您已购买过此课程");
 		}
 
-		VipGroupClassGroupMapper vipGroupClassGroupMapper = vipGroupClassGroupMapperDao.findByVipGroupId(vipGroup.getId());
-
-		if(Objects.isNull(vipGroupClassGroupMapper)){
-			throw new BizException("课程信息错误");
-		}
-
-		ClassGroup classGroup = vipGroupClassGroupMapperDao.findClassGroupByVipGroup(vipGroupBuyParams.getVipGroupId());
+		ClassGroup classGroup= classGroupDao.findByMusicGroupAndType(vipGroup.getId().toString(),ClassGroupTypeEnum.VIP.getCode());
 		if(Objects.isNull(classGroup)){
 			throw new BizException("课程信息错误");
 		}
@@ -935,7 +926,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			//更新班级人数,如果订单支付失败则减少
 			this.updateVipGroupStudentNumAndStatus(vipGroup.getId(),1,false);
 
-			ClassGroupStudentMapper classGroupStudentMapper=new ClassGroupStudentMapper(vipGroupClassGroupMapper.getClassGroupId(),user.getId().intValue());
+			ClassGroupStudentMapper classGroupStudentMapper=new ClassGroupStudentMapper(classGroup.getId(),user.getId().intValue());
 			classGroupStudentMapper.setMusicGroupId(vipGroup.getId().toString());
 			classGroupStudentMapperDao.insert(classGroupStudentMapper);
 		}
@@ -954,7 +945,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		studentPaymentOrder.setMusicGroupId(vipGroup.getId().toString());
 		studentPaymentOrder.setActualAmount(studentPaymentOrder.getExpectAmount());
 		studentPaymentOrder.setMusicGroupId(vipGroup.getId().toString());
-		studentPaymentOrder.setClassGroupId(vipGroupClassGroupMapper.getClassGroupId());
+		studentPaymentOrder.setClassGroupId(classGroup.getId());
 
 		try {
 			contractService.register(user.getId(),user.getRealName(),user.getIdCardNo(),user.getPhone());
@@ -1031,10 +1022,10 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_VIP_BUY, map, null, 0, "2",
 				vipGroup.getName());
 
-		VipGroupClassGroupMapper vipGroupClassGroupMapper = vipGroupClassGroupMapperDao.findByVipGroupId(vipGroupId);
+		ClassGroup classGroup=classGroupDao.findByMusicGroupAndType(vipGroupId.toString(),ClassGroupTypeEnum.VIP.getCode());
 
 		//更新所属分部列表
-		List<Integer> organIds = classGroupDao.findStudentOrganIdsByClassGroup(vipGroupClassGroupMapper.getClassGroupId().longValue());
+		List<Integer> organIds = classGroupDao.findStudentOrganIdsByClassGroup(classGroup.getId().longValue());
 		organIds.add(vipGroup.getOrganId());
 		HashSet<Integer> hashSet = new HashSet<>(organIds);
 		String organIdsString = StringUtils.join(hashSet, ",");

+ 22 - 0
mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml

@@ -747,6 +747,28 @@
         </if>
         AND type_='HIGH' AND del_flag_='0';
     </select>
+    <select id="findByMusicGroupAndType" resultMap="ClassGroup">
+        SELECT
+            *
+        FROM
+            class_group
+        WHERE
+            music_group_id_ = #{musicGroupId}
+            AND group_type_ = #{groupType}
+    </select>
+
+    <select id="findByMusicGroupsAndType" resultMap="ClassGroup">
+        SELECT
+        *
+        FROM
+        class_group
+        WHERE
+        music_group_id_ IN
+        <foreach collection="musicGroupIds" item="musicGroupId" open="(" close=")" separator=",">
+            #{musicGroupId}
+        </foreach>
+        AND group_type_ = #{groupType}
+    </select>
 
     <!-- 根据主键批量删除班级-->
     <delete id="batchSoftDelete">

+ 0 - 22
mec-biz/src/main/resources/config/mybatis/VipGroupClassGroupMapperMapper.xml

@@ -67,26 +67,4 @@
     <select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM vip_group_class_group_mapper
 	</select>
-    <select id="findByVipGroupId" resultMap="VipGroupClassGroupMapper">
-        SELECT * FROM vip_group_class_group_mapper WHERE vip_group_id_=#{vipGroupId}
-    </select>
-    <select id="findClassGroupByVipGroup" resultMap="com.ym.mec.biz.dal.dao.ClassGroupDao.ClassGroup">
-        SELECT
-            cg.*
-        FROM
-            vip_group_class_group_mapper vgcgm
-            LEFT JOIN class_group cg ON vgcgm.class_group_id_=cg.id_
-            WHERE vgcgm.vip_group_id_=#{vipGroupId} FOR UPDATE
-    </select>
-    <select id="findClassGroupsByVipGroups" resultMap="com.ym.mec.biz.dal.dao.ClassGroupDao.ClassGroup">
-        SELECT
-            cg.*
-        FROM
-            vip_group_class_group_mapper vgcgm
-            LEFT JOIN class_group cg ON vgcgm.class_group_id_=cg.id_
-            WHERE vgcgm.vip_group_id_ IN
-            <foreach collection="vipGroupIds" item="vipGroupId" open="(" close=")" separator=",">
-                #{vipGroupId}
-            </foreach>
-    </select>
 </mapper>