|
@@ -6,6 +6,7 @@ import cn.newfeifan.mall.module.distri.controller.admin.socialstatus.bo.SocialSt
|
|
|
import cn.newfeifan.mall.module.distri.controller.app.sharepath.vo.SharePathSaveReqVO;
|
|
|
import cn.newfeifan.mall.module.distri.dal.dataobject.integral.IntegralDO;
|
|
|
import cn.newfeifan.mall.module.distri.dal.dataobject.orderpercentage.OrderPercentageDO;
|
|
|
+import cn.newfeifan.mall.module.distri.dal.dataobject.socialstatus.SocialStatusDO;
|
|
|
import cn.newfeifan.mall.module.distri.dal.mysql.orderpercentage.OrderPercentageMapper;
|
|
|
import cn.newfeifan.mall.module.distri.enums.SocialStatusEnum;
|
|
|
import cn.newfeifan.mall.module.distri.service.integral.IntegralService;
|
|
@@ -19,6 +20,7 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
|
|
|
|
import cn.newfeifan.mall.module.distri.controller.admin.duser.vo.*;
|
|
@@ -29,8 +31,10 @@ import cn.newfeifan.mall.framework.common.util.object.BeanUtils;
|
|
|
import cn.newfeifan.mall.module.distri.dal.mysql.duser.DuserMapper;
|
|
|
|
|
|
import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
|
|
|
import static cn.newfeifan.mall.framework.common.exception.util.ServiceExceptionUtil.exception;
|
|
|
+import static cn.newfeifan.mall.module.distri.constant.DistriConstants.PT_ID;
|
|
|
import static cn.newfeifan.mall.module.distri.enums.ErrorCodeConstants.*;
|
|
|
|
|
|
/**
|
|
@@ -121,7 +125,8 @@ public class DuserServiceImpl implements DuserService {
|
|
|
|
|
|
@Override
|
|
|
public DuserInfoVO getDuserInfo(Long userId) {
|
|
|
-
|
|
|
+ DuserDO duser = getDuserByUser(userId);
|
|
|
+ SocialStatusDO socialStatus = socialStatusService.getSocialStatus(duser.getSocialStatusId());
|
|
|
|
|
|
hasUserAndCreat(userId);
|
|
|
// 先初始化
|
|
@@ -146,8 +151,15 @@ public class DuserServiceImpl implements DuserService {
|
|
|
totalLog = ptProfitLogService.getTotalLog(sonsId);
|
|
|
}
|
|
|
|
|
|
- return duserInfoVOBuilder.descPrice(Long.parseLong(yesterday))
|
|
|
- .descTotalPrice(Long.parseLong(totalLog)).build();
|
|
|
+ return duserInfoVOBuilder
|
|
|
+ .descPrice(Long.parseLong(yesterday))
|
|
|
+ .descTotalPrice(Long.parseLong(totalLog))
|
|
|
+ .socialUpNeed(duser.getSocialUpNeed())
|
|
|
+ .socialStatusId(duser.getSocialStatusId())
|
|
|
+ .socialStatusPoint(duser.getSocialStatusPoint())
|
|
|
+ .socialStatusLevel(socialStatus.getLevel())
|
|
|
+ .socialStatusLevelName(socialStatus.getName())
|
|
|
+ .build();
|
|
|
|
|
|
}
|
|
|
|
|
@@ -170,7 +182,7 @@ public class DuserServiceImpl implements DuserService {
|
|
|
}
|
|
|
if (duserDO == null) {
|
|
|
OrderPercentageDO orderPercentageDO = orderPercentageMapper.selectList().get(0);
|
|
|
- SocialStatusBO socialStatusBO = socialStatusService.getSocialStatusId(Long.valueOf(orderPercentageDO.getRegisterSocialStatus()));
|
|
|
+ SocialStatusBO socialStatusBO = socialStatusService.calculateSocial(Long.valueOf(orderPercentageDO.getRegisterSocialStatus()));
|
|
|
|
|
|
// 创建一个新的营销用户
|
|
|
DuserSaveReqVO duserSaveReqVO = DuserSaveReqVO.builder()
|
|
@@ -181,7 +193,7 @@ public class DuserServiceImpl implements DuserService {
|
|
|
.integralId(integralDO.getId())
|
|
|
.source(userId)
|
|
|
.socialStatusPoint(Long.valueOf(orderPercentageDO.getRegisterSocialStatus()))
|
|
|
- .socialStatus(socialStatusBO.getId())
|
|
|
+ .socialStatusId(socialStatusBO.getId())
|
|
|
.socialUpNeed(socialStatusBO.getSocialUpNeed())
|
|
|
.build();
|
|
|
duserMapper.insert(BeanUtils.toBean(duserSaveReqVO, DuserDO.class));
|
|
@@ -190,10 +202,11 @@ public class DuserServiceImpl implements DuserService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public void updateDuserSocial(Long userId, Long social, Integer socialStatus) {
|
|
|
|
|
|
//平台不参与身价
|
|
|
- if(userId == 1L){
|
|
|
+ if(Objects.equals(userId, PT_ID)){
|
|
|
return;
|
|
|
}
|
|
|
|
|
@@ -201,11 +214,12 @@ public class DuserServiceImpl implements DuserService {
|
|
|
DuserDO duser = getDuserByUser(userId);
|
|
|
duser.setSocialStatusPoint(duser.getSocialStatusPoint() + social);
|
|
|
|
|
|
- SocialStatusBO socialStatusBO = socialStatusService.getSocialStatusId(duser.getSocialStatusPoint());
|
|
|
+ SocialStatusBO socialStatusBO = socialStatusService.calculateSocial(duser.getSocialStatusPoint());
|
|
|
duser.setSocialUpNeed(socialStatusBO.getSocialUpNeed());
|
|
|
- duser.setSocialStatus(Math.toIntExact(socialStatusBO.getId()));
|
|
|
- Long.toHexString(31);
|
|
|
+ duser.setSocialStatusId(socialStatusBO.getId());
|
|
|
duserMapper.updateById(duser);
|
|
|
+
|
|
|
+ socialStatusChangeLogService.createSocialStatusChangeLog(userId, social,userId, SocialStatusEnum.getSocialStatusEnumByCode(socialStatus));
|
|
|
}
|
|
|
|
|
|
@Override
|