|
@@ -129,8 +129,14 @@ public class MemberRankSettingServiceImpl extends BaseServiceImpl<Integer, Membe
|
|
|
private CloudTeacherOrderDao cloudTeacherOrderDao;
|
|
|
|
|
|
@Autowired
|
|
|
+ private MusicGroupDao musicGroupDao;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private TenantMemberRankSettingService tenantMemberRankSettingService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private MemberRankOrganizationFeeMapperDao memberRankOrganizationFeeMapperDao;
|
|
|
+
|
|
|
private final Logger logger = LoggerFactory.getLogger(this.getClass());
|
|
|
|
|
|
@Override
|
|
@@ -1036,7 +1042,9 @@ 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);
|
|
|
-
|
|
|
+ if (CollectionUtils.isEmpty(dataList)) {
|
|
|
+ return new ArrayList<>();
|
|
|
+ }
|
|
|
|
|
|
// 顶级查询所有,下级的查询自己和上级
|
|
|
List<Integer> topIds = new ArrayList<>();
|
|
@@ -1050,11 +1058,16 @@ public class MemberRankSettingServiceImpl extends BaseServiceImpl<Integer, Membe
|
|
|
}
|
|
|
}
|
|
|
// 查询上级
|
|
|
- List<MemberRankSetting> parents = memberRankSettingDao.selectBatchIds(parentIds);
|
|
|
- List<MemberRankSetting> tops = memberRankSettingDao.selectBatchIdsByParentIds(topIds);
|
|
|
+ if (CollectionUtils.isNotEmpty(parentIds)) {
|
|
|
+ List<MemberRankSetting> parents = memberRankSettingDao.selectBatchIds(parentIds);
|
|
|
+ dataList.addAll(parents);
|
|
|
+ }
|
|
|
+ if (CollectionUtils.isNotEmpty(topIds)) {
|
|
|
+ List<MemberRankSetting> tops = memberRankSettingDao.selectBatchIdsByParentIds(topIds);
|
|
|
+
|
|
|
+ dataList.addAll(tops);
|
|
|
+ }
|
|
|
|
|
|
- dataList.addAll(parents);
|
|
|
- dataList.addAll(tops);
|
|
|
List<MemberRankSettingWrapper.MemberRankSetting> memberRankSettings = JSON.parseArray(JSON.toJSONString(dataList), MemberRankSettingWrapper.MemberRankSetting.class);
|
|
|
|
|
|
// 设置曲目数量
|
|
@@ -1138,4 +1151,34 @@ public class MemberRankSettingServiceImpl extends BaseServiceImpl<Integer, Membe
|
|
|
public List<MemberRankSetting> listByIds(List<Integer> ids) {
|
|
|
return memberRankSettingDao.selectBatchIds(ids);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<MemberRankSettingWrapper.MemberRankSetting> queryTree(String musicGroupId, Integer organId, Integer studentId) {
|
|
|
+ if(organId == null){
|
|
|
+ if(StringUtils.isNotEmpty(musicGroupId)){
|
|
|
+ MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
|
|
|
+ if (musicGroup == null) {
|
|
|
+ throw new BizException("乐团不存在");
|
|
|
+ }
|
|
|
+ organId = musicGroup.getOrganId();
|
|
|
+ }else if (studentId != null){
|
|
|
+ SysUser user = studentService.getDao().getUser(studentId);
|
|
|
+ if (user == null) {
|
|
|
+ throw new BizException("学生不存在");
|
|
|
+ }
|
|
|
+ organId = user.getOrganId();
|
|
|
+ }else {
|
|
|
+ throw new BizException("参数错误");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //获取分部可用会员编号
|
|
|
+ List<MemberRankOrganizationFeeMapper> feeMappers = memberRankOrganizationFeeMapperDao.queryByOrganId(organId);
|
|
|
+ if (CollectionUtils.isEmpty(feeMappers)) {
|
|
|
+ return Lists.newArrayList();
|
|
|
+ }
|
|
|
+ List<Integer> rankIds = feeMappers.stream().map(MemberRankOrganizationFeeMapper::getMemberRankSettingId).collect(Collectors.toList());
|
|
|
+ MemberRankSettingWrapper.MemberRankSettingQuery queryInfo = new MemberRankSettingWrapper.MemberRankSettingQuery();
|
|
|
+ queryInfo.setMemberIds(rankIds);
|
|
|
+ return this.queryPage2(queryInfo);
|
|
|
+ }
|
|
|
}
|