|
@@ -4,16 +4,23 @@ import com.alibaba.fastjson.JSON;
|
|
|
import com.ym.mec.biz.dal.dao.MemberRankOrganizationFeeMapperDao;
|
|
|
import com.ym.mec.biz.dal.entity.MemberFeeSetting;
|
|
|
import com.ym.mec.biz.dal.entity.MemberRankOrganizationFeeMapper;
|
|
|
+import com.ym.mec.biz.dal.entity.TenantMemberRankSetting;
|
|
|
import com.ym.mec.biz.dal.wrapper.MemberRankOrganizationFeeMapperWrapper;
|
|
|
+import com.ym.mec.biz.dal.wrapper.MemberRankSettingWrapper;
|
|
|
import com.ym.mec.biz.service.MemberFeeSettingService;
|
|
|
import com.ym.mec.biz.service.MemberRankOrganizationFeeMapperService;
|
|
|
+import com.ym.mec.biz.service.MemberRankSettingService;
|
|
|
+import com.ym.mec.biz.service.TenantMemberRankSettingService;
|
|
|
import com.ym.mec.common.dal.BaseDAO;
|
|
|
import com.ym.mec.common.exception.BizException;
|
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
|
+import org.apache.commons.collections.CollectionUtils;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
import java.util.stream.Collectors;
|
|
@@ -26,6 +33,12 @@ public class MemberRankOrganizationFeeMapperServiceImpl extends BaseServiceImpl<
|
|
|
@Autowired
|
|
|
private MemberFeeSettingService memberFeeSettingService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private TenantMemberRankSettingService tenantMemberRankSettingService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private MemberRankSettingService memberRankSettingService;
|
|
|
+
|
|
|
@Override
|
|
|
public BaseDAO<Integer, MemberRankOrganizationFeeMapper> getDAO() {
|
|
|
return memberRankOrganizationFeeMapperDao;
|
|
@@ -37,7 +50,7 @@ public class MemberRankOrganizationFeeMapperServiceImpl extends BaseServiceImpl<
|
|
|
//一个分部只能关联一个会员
|
|
|
MemberRankOrganizationFeeMapper feeMapper = memberRankOrganizationFeeMapperDao.findByOrganIdAndRankId(memberRankOrganizationFeeMapper.getOrganId(),memberRankOrganizationFeeMapper.getMemberRankSettingId());
|
|
|
if(feeMapper != null){
|
|
|
- throw new BizException("操作失败: 该分部会员收费标准已存在");
|
|
|
+ throw new BizException("操作失败: 分部学练宝收费标准已存在");
|
|
|
}
|
|
|
MemberFeeSetting memberFeeSetting = memberRankOrganizationFeeMapper.getMemberFeeSetting();
|
|
|
if(memberFeeSetting == null){
|
|
@@ -62,7 +75,7 @@ public class MemberRankOrganizationFeeMapperServiceImpl extends BaseServiceImpl<
|
|
|
if(!feeMapper.getOrganId().equals(memberRankOrganizationFeeMapper.getOrganId())){
|
|
|
MemberRankOrganizationFeeMapper organIdAndRankId = memberRankOrganizationFeeMapperDao.findByOrganIdAndRankId(memberRankOrganizationFeeMapper.getOrganId(), memberRankOrganizationFeeMapper.getMemberRankSettingId());
|
|
|
if(organIdAndRankId != null){
|
|
|
- throw new BizException("修改失败: 该分部会员收费标准已存在");
|
|
|
+ throw new BizException("修改失败: 该分部学练宝收费标准已存在");
|
|
|
}
|
|
|
}
|
|
|
memberFeeSetting.setId(feeMapper.getMemberFeeSettingId());
|
|
@@ -73,7 +86,7 @@ public class MemberRankOrganizationFeeMapperServiceImpl extends BaseServiceImpl<
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public void addV2(MemberRankOrganizationFeeMapperWrapper.MemberRankOrganizationFeeMapperAdd memberRankOrganizationFeeMapper) {
|
|
|
- //一个分部只能关联一个会员
|
|
|
+ //一个分部同一个会员,只能关联一次
|
|
|
List<Integer> orgIds = Arrays.stream(memberRankOrganizationFeeMapper.getOrganIds().split(","))
|
|
|
.map(Integer::parseInt).collect(Collectors.toList());
|
|
|
|
|
@@ -83,4 +96,30 @@ public class MemberRankOrganizationFeeMapperServiceImpl extends BaseServiceImpl<
|
|
|
add(mapper);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<MemberRankSettingWrapper.MemberRankSetting> getMemberRankSetting(MemberRankOrganizationFeeMapperWrapper.MemberRankQuery query) {
|
|
|
+ // 查询机构学练宝ID
|
|
|
+ List<TenantMemberRankSetting> list = tenantMemberRankSettingService.lambdaQuery()
|
|
|
+ .eq(TenantMemberRankSetting::getTenantId, query.getTenantId())
|
|
|
+ .list();
|
|
|
+ if (CollectionUtils.isEmpty(list)) {
|
|
|
+ return new ArrayList<>();
|
|
|
+ }
|
|
|
+ MemberRankSettingWrapper.MemberRankSettingQuery settingQuery = new MemberRankSettingWrapper.MemberRankSettingQuery();
|
|
|
+ settingQuery.setHasChildren(true);
|
|
|
+ List<Integer> memberRankSettingIds = list.stream().map(TenantMemberRankSetting::getMemberRankSettingId).collect(Collectors.toList());
|
|
|
+ settingQuery.setMemberIds(memberRankSettingIds);
|
|
|
+ if (StringUtils.isNotBlank(query.getOrganIds())) {
|
|
|
+ List<MemberRankOrganizationFeeMapper> memberRankOrganizationFeeMappers = memberRankOrganizationFeeMapperDao.queryByOrganIds(Arrays.stream(query.getOrganIds().split(","))
|
|
|
+ .map(Integer::parseInt).collect(Collectors.toList()));
|
|
|
+ if (query.getId() != null) {
|
|
|
+ memberRankOrganizationFeeMappers = memberRankOrganizationFeeMappers.stream().filter(o->o.getId().equals(query.getId())).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+ settingQuery.setRemoveIds(memberRankOrganizationFeeMappers.stream().map(MemberRankOrganizationFeeMapper::getMemberRankSettingId).collect(Collectors.toList()));
|
|
|
+ }
|
|
|
+
|
|
|
+ return memberRankSettingService.queryPage2(settingQuery);
|
|
|
+
|
|
|
+ }
|
|
|
}
|