|
|
@@ -9,7 +9,9 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.jzg.client.OrganizationClient;
|
|
|
import com.jzg.commons.core.page.HttpResult;
|
|
|
+import com.jzg.commons.entity.po.SysUserJzgInfo;
|
|
|
import com.jzg.commons.entity.vo.SysUserVo;
|
|
|
import com.jzg.commons.exception.SystemException;
|
|
|
import com.jzg.constants.TimeConstants;
|
|
|
@@ -24,6 +26,7 @@ import com.jzg.service.PartnerUserService;
|
|
|
import com.jzg.utils.*;
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.jetbrains.annotations.NotNull;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
@@ -65,6 +68,9 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
@Autowired
|
|
|
private SysPartnerAccountMapper sysPartnerAccountMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private OrganizationClient organizationClient;
|
|
|
+
|
|
|
@Value("${partner.expireDays}")
|
|
|
private Long expireDays;
|
|
|
|
|
|
@@ -75,11 +81,11 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<RelationalVo> relationalQuery(String id) {
|
|
|
+ public List<RelationalVo> relationalQuery(String id,String token) {
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(id,token);
|
|
|
List<RelationalVo> list = new ArrayList<>();
|
|
|
-
|
|
|
- Integer grade = baseMapper.selectGradeMin(id);
|
|
|
- List<RelationalVo> partnerUsers = baseMapper.selectByUserId(id,grade);
|
|
|
+ Integer grade = baseMapper.selectGradeMin(sysUserJzgInfo.getId());
|
|
|
+ List<RelationalVo> partnerUsers = baseMapper.selectByUserId(sysUserJzgInfo.getId(),grade);
|
|
|
if (1 < grade){
|
|
|
querySuperiors(list, grade,partnerUsers);
|
|
|
}
|
|
|
@@ -264,9 +270,8 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
|
|
|
@Override
|
|
|
public HttpResult getHomePage(AppHomeParams params) {
|
|
|
- if (StringUtils.isBlank(params.getUserId())){
|
|
|
- return HttpResult.error("参数不能为空");
|
|
|
- }
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(params.getUserId(), params.getToken());
|
|
|
+ params.setUserId(sysUserJzgInfo.getId());
|
|
|
Set<String> list = baseMapper.getLevelAllUserId(params.getUserId());
|
|
|
params.setRelatedPerList(list);
|
|
|
params.setCountCycle("Day");
|
|
|
@@ -366,10 +371,12 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public HttpResult addUserIdentity(Map<String, Object> map) {
|
|
|
+ public HttpResult addUserIdentity(Map<String, Object> map,String token) {
|
|
|
try {
|
|
|
if (map.containsKey("userId")){
|
|
|
String userId = (String) map.get("userId");
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(userId, token);
|
|
|
+ userId = sysUserJzgInfo.getId();
|
|
|
PartnerUser partnerUsers = baseMapper.selectMaxGradeUserId(userId);
|
|
|
if (partnerUsers == null){
|
|
|
return HttpResult.error("请选择用户");
|
|
|
@@ -410,16 +417,17 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public HttpResult queryIdentityInformation(String userId) {
|
|
|
+ public HttpResult queryIdentityInformation(String userId,String token) {
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(userId,token);
|
|
|
List<PartnerRule> partnerRules = ruleService.selectAll();
|
|
|
- List<PartnerUser> partnerUsers = baseMapper.selectList(new LambdaQueryWrapper<>(PartnerUser.class).eq(PartnerUser::getUserId, userId));
|
|
|
+ List<PartnerUser> partnerUsers = baseMapper.selectList(new LambdaQueryWrapper<>(PartnerUser.class).eq(PartnerUser::getUserId, sysUserJzgInfo.getId()));
|
|
|
Map<Integer, PartnerUser> userMap = partnerUsers.stream()
|
|
|
.collect(Collectors.toMap(
|
|
|
PartnerUser::getGrade,
|
|
|
user -> user
|
|
|
));
|
|
|
|
|
|
- List<MyUserLevel> list = getUserLevels(userId, partnerRules, userMap);
|
|
|
+ List<MyUserLevel> list = getUserLevels(sysUserJzgInfo.getId(), partnerRules, userMap);
|
|
|
return HttpResult.ok(list);
|
|
|
}
|
|
|
|
|
|
@@ -535,6 +543,8 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
if (StringUtils.isEmpty(params.getGrade())){
|
|
|
return HttpResult.error("等级不能为空");
|
|
|
}
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(params.getUserId(), params.getToken());
|
|
|
+ params.setUserId(sysUserJzgInfo.getId());
|
|
|
params.setStartTime(null);
|
|
|
params.setEndTime(null);
|
|
|
LambdaQueryWrapper<PartnerPartnerAccount> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
@@ -573,15 +583,23 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public HttpResult commissionRate(String userId, String grade1) {
|
|
|
- Map<Integer, PartnerUser> allByUserId = UpdateRatioUtils.getAllByUserId(userId);
|
|
|
- BigDecimal mostRecent = CalculateCommissionUtils.calculateCommission(grade1, userId,allByUserId.get(3).getUserId(),allByUserId.get(4).getUserId());
|
|
|
+ public HttpResult commissionRate(String userId, String grade,String token) {
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(userId,token);
|
|
|
+ Map<Integer, PartnerUser> allByUserId = UpdateRatioUtils.getAllByUserId(sysUserJzgInfo.getId());
|
|
|
+ BigDecimal mostRecent = CalculateCommissionUtils.calculateCommission(grade, sysUserJzgInfo.getId(),getMapValueSafely(allByUserId,3),getMapValueSafely(allByUserId,4));
|
|
|
JSONObject jsonObject = new JSONObject();
|
|
|
jsonObject.put("rate",mostRecent);
|
|
|
jsonObject.put("description","");
|
|
|
return HttpResult.ok(jsonObject);
|
|
|
}
|
|
|
|
|
|
+ public String getMapValueSafely(Map<Integer, PartnerUser> allByUserId,Integer key){
|
|
|
+ return Optional.ofNullable(allByUserId)
|
|
|
+ .map(map -> map.get(key))
|
|
|
+ .map(PartnerUser::getUserId)
|
|
|
+ .orElse(null);
|
|
|
+ }
|
|
|
+
|
|
|
// @Override
|
|
|
// public List<PartnerUser> selectRepeat(SysUser2Vo sysUserVo,String grade) {
|
|
|
// LambdaQueryWrapper<PartnerUser> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
@@ -803,9 +821,12 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
if (StringUtils.isEmpty(partnerApp.getUserId()) || StringUtils.isEmpty(partnerApp.getGrade())) {
|
|
|
return HttpResult.error("用户ID和等级不能为空");
|
|
|
}
|
|
|
- AppHomeParams params = new AppHomeParams();
|
|
|
- params.setUserId(partnerApp.getUserId());
|
|
|
- List<TeamOverviewVo> teamOverviewVos = baseMapper.selectTeamOverview(params);
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(partnerApp.getUserId(), partnerApp.getToken());
|
|
|
+ if (Objects.isNull(sysUserJzgInfo)){
|
|
|
+ throw new SystemException("当前用户不存在合伙人信息");
|
|
|
+ }
|
|
|
+ partnerApp.setUserId(sysUserJzgInfo.getId());
|
|
|
+ List<TeamOverviewVo> teamOverviewVos = baseMapper.selectTeamOverview(new AppHomeParams());
|
|
|
List<Object> list = new ArrayList<>();
|
|
|
Map<Integer, String> rule = getRule();
|
|
|
List<String> grades = teamOverviewVos.stream()
|
|
|
@@ -817,7 +838,7 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
.in(PartnerUser::getGrade, grades));
|
|
|
Map<Integer, PartnerUser> userMap = partnerUsers.stream()
|
|
|
.collect(Collectors.toMap(PartnerUser::getGrade, Function.identity()));
|
|
|
- Integer max = baseMapper.selectMax(params.getUserId());
|
|
|
+ Integer max = baseMapper.selectMax(partnerApp.getUserId());
|
|
|
for (TeamOverviewVo overviewVo : teamOverviewVos) {
|
|
|
overviewVo.setLockGrade( max);
|
|
|
JSONObject map = new JSONObject();
|
|
|
@@ -1006,7 +1027,8 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
|
|
|
@Override
|
|
|
public HttpResult userCountStatisticsVo(AppHomeParams params) {
|
|
|
- Integer minGrade = baseMapper.selectGradeMin(params.getUserId());
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(params.getUserId(), params.getToken());
|
|
|
+ Integer minGrade = baseMapper.selectGradeMin(sysUserJzgInfo.getId());
|
|
|
if (minGrade == null) {
|
|
|
return HttpResult.error("人员不存在");
|
|
|
}
|
|
|
@@ -1019,7 +1041,8 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
|
|
|
@Override
|
|
|
public HttpResult userCountProportionVo(AppHomeParams params) {
|
|
|
- Integer minGrade = baseMapper.selectGradeMin(params.getUserId());
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(params.getUserId(), params.getToken());
|
|
|
+ Integer minGrade = baseMapper.selectGradeMin(sysUserJzgInfo.getId());
|
|
|
if (minGrade == null) {
|
|
|
return HttpResult.error("人员不存在");
|
|
|
}
|
|
|
@@ -1030,7 +1053,8 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
|
|
|
@Override
|
|
|
public HttpResult userCountRankingVo(AppHomeParams params) {
|
|
|
- Integer minGrade = baseMapper.selectGradeMin(params.getUserId());
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(params.getUserId(), params.getToken());
|
|
|
+ Integer minGrade = baseMapper.selectGradeMin(sysUserJzgInfo.getId());
|
|
|
if (minGrade == null) {
|
|
|
return HttpResult.error("人员不存在");
|
|
|
}
|
|
|
@@ -1044,8 +1068,9 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
Integer sort = grade + 1;
|
|
|
QueryWrapper<PartnerUser> queryWrapper = new QueryWrapper<>();
|
|
|
queryWrapper.eq("p.referrer_id",userId);
|
|
|
- queryWrapper.eq("grade",sort);
|
|
|
- queryWrapper.eq("u.`status`",1);
|
|
|
+ queryWrapper.eq("p.grade",sort);
|
|
|
+ queryWrapper.eq("sa.partner_status",3);
|
|
|
+ queryWrapper.eq("sa.type_attr",3);
|
|
|
if (!Objects.isNull(partnerApp)){
|
|
|
if (StringUtils.isNotEmpty(partnerApp.getStartTime()) && StringUtils.isNotEmpty(partnerApp.getEndTime())){
|
|
|
queryWrapper.between("p.create_time", partnerApp.getStartTime() + " " + TimeConstants.START_TIME, partnerApp.getEndTime() + " " + TimeConstants.END_TIME);
|
|
|
@@ -1150,8 +1175,9 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
Integer sort = grade + 1;
|
|
|
QueryWrapper<PartnerUser> queryWrapper = new QueryWrapper<>();
|
|
|
queryWrapper.eq("p.referrer_id",userId);
|
|
|
- queryWrapper.eq("grade",sort);
|
|
|
- queryWrapper.eq("u.`status`",1);
|
|
|
+ queryWrapper.eq("p.grade",sort);
|
|
|
+ queryWrapper.eq("sa.partner_status",3);
|
|
|
+ queryWrapper.eq("sa.type_attr",3);
|
|
|
if (!Objects.isNull(partnerApp)){
|
|
|
if (StringUtils.isNotEmpty(partnerApp.getStartTime()) && StringUtils.isNotEmpty(partnerApp.getEndTime())){
|
|
|
queryWrapper.between("p.create_time", partnerApp.getStartTime() + " " + TimeConstants.START_TIME, partnerApp.getEndTime() + " " + TimeConstants.END_TIME);
|
|
|
@@ -1222,21 +1248,25 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public AppUserInfoVo getUserInfo(String type) {
|
|
|
-// String userId = BaseController.getUserId();
|
|
|
-// AppUserInfoVo appUserInfoVo = sysUserMapper.queryByUserId(userId);
|
|
|
-// Integer min = baseMapper.selectGradeIntMin(userId);
|
|
|
-// if (null != min){
|
|
|
-// PartnerUser partnerUser = baseMapper.selectOne(new LambdaQueryWrapper<>(PartnerUser.class)
|
|
|
-// .eq(PartnerUser::getUserId, userId)
|
|
|
-// .eq(PartnerUser::getGrade, min));
|
|
|
+ public AppUserInfoVo getUserInfo(String type,String userId,String token) {
|
|
|
+ AppUserInfoVo appUserInfoVo = baseMapper.queryAppUserInfoVoByUserId(userId);
|
|
|
+ Integer min = baseMapper.selectGradeIntMin(userId);
|
|
|
+ if (null != min){
|
|
|
+ PartnerUser partnerUser = baseMapper.selectOne(new LambdaQueryWrapper<>(PartnerUser.class)
|
|
|
+ .eq(PartnerUser::getUserId, userId)
|
|
|
+ .eq(PartnerUser::getGrade, min));
|
|
|
// InsUploadFiles insUploadFiles = uploadFilesMapper.selectById(partnerUser.getPictureUrl());
|
|
|
// appUserInfoVo.setInsUploadFiles(insUploadFiles);
|
|
|
-// }else {
|
|
|
+ }else {
|
|
|
// appUserInfoVo.setInsUploadFiles(new InsUploadFiles());
|
|
|
-// }
|
|
|
-// appUserInfoVo.setGrade(null == min ? 4 : min);
|
|
|
- return null;
|
|
|
+ }
|
|
|
+ appUserInfoVo.setGrade(null == min ? 4 : min);
|
|
|
+ SpringUtil.getBean(ExpiredCommissionUtils.class).initializeExpirationTime(userId);
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(userId, token);
|
|
|
+ if (!Objects.isNull(sysUserJzgInfo)){
|
|
|
+ appUserInfoVo.setUserInfoId(sysUserJzgInfo.getId());
|
|
|
+ }
|
|
|
+ return appUserInfoVo;
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -1515,13 +1545,14 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public SysPartnerAccount newGetFee(String userId) {
|
|
|
- SysPartnerAccount account = sysPartnerAccountMapper.selectFee(userId);
|
|
|
+ public SysPartnerAccount newGetFee(String userId,String token) {
|
|
|
+ SysPartnerAccount account = baseMapper.selectFee(userId);
|
|
|
if (account == null) {
|
|
|
account = new SysPartnerAccount();
|
|
|
}
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(userId, token);
|
|
|
//每个身份下锁定的佣金
|
|
|
- List<PartnerUser> partnerUsers = baseMapper.selectList(new LambdaQueryWrapper<>(PartnerUser.class).eq(PartnerUser::getUserId, userId));
|
|
|
+ List<PartnerUser> partnerUsers = baseMapper.selectList(new LambdaQueryWrapper<>(PartnerUser.class).eq(PartnerUser::getUserId, sysUserJzgInfo.getId()));
|
|
|
BigDecimal commissionTotal = BigDecimal.ZERO;
|
|
|
for (PartnerUser user : partnerUsers) {
|
|
|
BigDecimal commission = liftingRecordService.queryLockCommission(user.getUserId(), String.valueOf(user.getGrade()));
|
|
|
@@ -1581,28 +1612,48 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public HttpResult addPartnerRule(SysUserVo sysUserVo, List<String> gradeList) {
|
|
|
+ public HttpResult addPartnerRule(SysUserVo sysUserVo, List<String> gradeList,String token) {
|
|
|
try {
|
|
|
- if (CollectionUtils.isEmpty(gradeList)) {
|
|
|
- throw new SystemException("请选择合伙人等级");
|
|
|
- }
|
|
|
- List<Integer> sortedGrades = gradeList.stream()
|
|
|
- .map(Integer::valueOf)
|
|
|
- .sorted()
|
|
|
- .collect(Collectors.toList());
|
|
|
- int minGrade = sortedGrades.get(0);
|
|
|
- boolean hasReferrer = StringUtils.isNotEmpty(sysUserVo.getReferrerId());
|
|
|
- boolean hasDept = true;
|
|
|
- if (gradeList.size() == 1 && StringUtils.equals(gradeList.get(0),"4")){
|
|
|
- hasDept = false;
|
|
|
- }
|
|
|
- for (int grade : sortedGrades) {
|
|
|
- String deptId = sysUserVo.getDeptId();
|
|
|
- if (4 == grade && hasDept){
|
|
|
- //deptId = addDeptUser(sysUserVo,String.valueOf(grade));
|
|
|
+ if (sysUserVo.isCodeInvitation()){
|
|
|
+ Integer grade = sysUserVo.getGrade() + 1;
|
|
|
+ boolean exists = baseMapper.exists(new LambdaQueryWrapper<>(PartnerUser.class).eq(PartnerUser::getUserId, sysUserVo.getUserId()).eq(PartnerUser::getGrade, grade));
|
|
|
+ if (exists){
|
|
|
+ return HttpResult.error("当前用户身份已经存在");
|
|
|
}
|
|
|
- PartnerUser partnerUser = createPartnerUser(sysUserVo, grade, minGrade, hasReferrer,deptId);
|
|
|
+ PartnerUser partnerUser = new PartnerUser();
|
|
|
+ partnerUser.setName(sysUserVo.getName());
|
|
|
+ partnerUser.setMobile(sysUserVo.getMobile());
|
|
|
+ partnerUser.setUserId(sysUserVo.getUserId());
|
|
|
+ partnerUser.setDeptId(sysUserVo.getDeptId());
|
|
|
+ partnerUser.setDeptName(null);
|
|
|
+ partnerUser.setGrade(grade);
|
|
|
+ partnerUser.setStatus(true);
|
|
|
+ String referrerId = StringUtils.isNotEmpty(sysUserVo.getReferrerId()) ? sysUserVo.getReferrerId() : sysUserVo.getUserId();
|
|
|
+ partnerUser.setReferrerId(referrerId);
|
|
|
+ partnerUser.setCreateTime(LocalDateTime.now());
|
|
|
this.save(partnerUser);
|
|
|
+ }else {
|
|
|
+ if (CollectionUtils.isEmpty(gradeList)) {
|
|
|
+ throw new SystemException("请选择合伙人等级");
|
|
|
+ }
|
|
|
+ List<Integer> sortedGrades = gradeList.stream()
|
|
|
+ .map(Integer::valueOf)
|
|
|
+ .sorted()
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ int minGrade = sortedGrades.get(0);
|
|
|
+ boolean hasReferrer = StringUtils.isNotEmpty(sysUserVo.getReferrerId());
|
|
|
+ boolean hasDept = true;
|
|
|
+ if (gradeList.size() == 1 && StringUtils.equals(gradeList.get(0),"4")){
|
|
|
+ hasDept = false;
|
|
|
+ }
|
|
|
+ for (int grade : sortedGrades) {
|
|
|
+ String deptId = sysUserVo.getDeptId();
|
|
|
+ if (4 == grade && hasDept){
|
|
|
+ //deptId = addDeptUser(sysUserVo,String.valueOf(grade));
|
|
|
+ }
|
|
|
+ PartnerUser partnerUser = createPartnerUser(sysUserVo, grade, minGrade, hasReferrer,deptId);
|
|
|
+ this.save(partnerUser);
|
|
|
+ }
|
|
|
}
|
|
|
return HttpResult.ok();
|
|
|
}catch (Exception e){
|
|
|
@@ -1612,15 +1663,15 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public HttpResult isTherePartner(String userId) {
|
|
|
- List<PartnerUser> partnerUsers = baseMapper.selectList(new LambdaQueryWrapper<>(PartnerUser.class).eq(PartnerUser::getUserId, userId)
|
|
|
- .lt(PartnerUser::getGrade, 5));
|
|
|
+ public HttpResult isTherePartner(String userId,String systemCode) {
|
|
|
+ List<PartnerUser> partnerUsers = baseMapper.selectLoginList(userId,systemCode);
|
|
|
return HttpResult.ok(CollectionUtil.isNotEmpty(partnerUsers) ? true : false);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public HttpResult enableDisable(String userId,boolean status) {
|
|
|
- int update = baseMapper.update(new LambdaUpdateWrapper<>(PartnerUser.class).eq(PartnerUser::getUserId, userId).set(PartnerUser::isStatus, status));
|
|
|
+ public HttpResult enableDisable(String userId,boolean status,String token) {
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = getSysUserJzgInfo(userId, token);
|
|
|
+ int update = baseMapper.update(new LambdaUpdateWrapper<>(PartnerUser.class).eq(PartnerUser::getUserId, sysUserJzgInfo.getId()).set(PartnerUser::isStatus, status));
|
|
|
if (0 < update){
|
|
|
return status ? HttpResult.ok("启用成功") : HttpResult.ok("禁用成功");
|
|
|
}
|
|
|
@@ -1640,6 +1691,41 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
return baseMapper.selectOne(queryWrapper);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public boolean teamInvitation(SysUserJzgInfo info) {
|
|
|
+ try {
|
|
|
+ boolean exists = baseMapper.exists(new LambdaQueryWrapper<>(PartnerUser.class).eq(PartnerUser::getUserId,info.getReferrerId()));
|
|
|
+ if (exists){
|
|
|
+ PartnerUser partnerUser = baseMapper.selectOne(new LambdaQueryWrapper<>(PartnerUser.class).eq(PartnerUser::getUserId, info.getReferrerId())
|
|
|
+ .orderByDesc(PartnerUser::getGrade)
|
|
|
+ .last("LIMIT 1"));
|
|
|
+ PartnerUser user = getPartnerUser(info, partnerUser);
|
|
|
+ baseMapper.insert(user);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ return false;
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ throw new SystemException("程序异常");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @NotNull
|
|
|
+ private static PartnerUser getPartnerUser(SysUserJzgInfo info, PartnerUser partnerUser) {
|
|
|
+ PartnerUser user = new PartnerUser();
|
|
|
+ user.setName(info.getName());
|
|
|
+ user.setMobile(info.getName());
|
|
|
+ user.setUserId(info.getUserId());
|
|
|
+ user.setDeptId(info.getDeptId());
|
|
|
+ user.setDeptName(null);
|
|
|
+ user.setGrade(partnerUser.getGrade() + 1);
|
|
|
+ user.setCommissionRate(new BigDecimal("0"));
|
|
|
+ user.setReferrerId(partnerUser.getUserId());
|
|
|
+ user.setReferrerName("");
|
|
|
+ user.setStatus(true);
|
|
|
+ return user;
|
|
|
+ }
|
|
|
+
|
|
|
private PartnerUser createPartnerUser(SysUserVo sysUserVo, int grade, int minGrade, boolean hasReferrer, String deptId) {
|
|
|
PartnerUser partnerUser = new PartnerUser();
|
|
|
partnerUser.setName(sysUserVo.getName());
|
|
|
@@ -1658,6 +1744,13 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
}
|
|
|
|
|
|
|
|
|
+ public SysUserJzgInfo getSysUserJzgInfo(String userId,String token){
|
|
|
+ SysUserJzgInfo sysUserJzgInfo = organizationClient.selectByUserIdInfo(userId, token);
|
|
|
+ if (Objects.isNull(sysUserJzgInfo)){
|
|
|
+ throw new SystemException("查询用户信息异常");
|
|
|
+ }
|
|
|
+ return sysUserJzgInfo;
|
|
|
+ }
|
|
|
|
|
|
|
|
|
}
|