Browse Source

Merge branch 'feature/1022_vip' of http://git.dayaedu.com/yonge/mec into feature/1022_vip

刘俊驰 9 months ago
parent
commit
f91f34ed9e

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/wrapper/MemberRankSettingWrapper.java

@@ -49,6 +49,9 @@ public class MemberRankSettingWrapper {
         @ApiModelProperty("移除ID")
         private List<Integer> removeIds;
 
+        @ApiModelProperty("学生ID")
+        private Integer studentId;
+
         public String jsonString() {
             return JSON.toJSONString(this);
         }

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MemberRankSettingServiceImpl.java

@@ -12,6 +12,7 @@ import com.ym.mec.biz.dal.dto.Cloud2022ActivityDto;
 import com.ym.mec.biz.dal.dto.MemberPayParamDto;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.*;
+import com.ym.mec.biz.dal.wrapper.CloudTeacherOrderWrapper;
 import com.ym.mec.biz.dal.wrapper.LessonCoursewareWrapper;
 import com.ym.mec.biz.dal.wrapper.MemberRankSettingWrapper;
 import com.ym.mec.biz.dal.wrapper.MusicSheetWrapper;
@@ -1093,6 +1094,16 @@ public class MemberRankSettingServiceImpl extends BaseServiceImpl<Integer, Membe
         Map<String, Object> params = new HashMap<String, Object>();
         MapUtil.populateMap(params, queryInfo);
         List<MemberRankSetting> dataList = this.getDAO().queryPage(params);
+
+        // 根据学生ID,只返回可扣费的会员
+        if (Objects.nonNull(queryInfo.getStudentId()))  {
+            List<Integer> collect = cloudTeacherOrderService.getEffectiveCloudTeacherOrder(Lists.newArrayList(queryInfo.getStudentId())).stream()
+                .map(CloudTeacherOrderWrapper.StudentMemberDetail::getMemberRankId)
+                .distinct().collect(Collectors.toList());
+            // 过滤学生已经购买的会员
+            dataList = dataList.stream().filter(e -> collect.contains(e.getId())).collect(Collectors.toList());
+        }
+
         if (CollectionUtils.isEmpty(dataList)) {
             return new ArrayList<>();
         }