| | |
| | | package com.yeshi.fanli.service.impl.user.invite;
|
| | |
|
| | | import javax.annotation.Resource;
|
| | |
|
| | | import org.springframework.stereotype.Service;
|
| | |
|
| | | import com.yeshi.fanli.dto.user.UserInviteLevelEnum;
|
| | | import com.yeshi.fanli.entity.bus.user.vip.UserVIPInfo;
|
| | | import com.yeshi.fanli.entity.bus.user.vip.UserVIPPreInfo;
|
| | | import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
|
| | | import com.yeshi.fanli.service.inter.user.invite.UserInviteService;
|
| | | import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService;
|
| | | import com.yeshi.fanli.service.inter.user.vip.UserVIPPreInfoService;
|
| | | import com.yeshi.fanli.util.StringUtil;
|
| | |
|
| | | @Service
|
| | | public class UserInviteServiceImpl implements UserInviteService {
|
| | | @Resource
|
| | | private UserInfoExtraService userInfoExtraService;
|
| | |
|
| | | @Resource
|
| | | private UserVIPInfoService userVIPInfoService;
|
| | | |
| | | @Resource
|
| | | private UserVIPPreInfoService userVIPPreInfoService;
|
| | |
|
| | | @Override
|
| | | public UserInviteLevelEnum getUserInviteLevel(Long uid) {
|
| | | String inviteCode = userInfoExtraService.getInviteCodeByUid(uid);
|
| | | if (StringUtil.isNullOrEmpty(inviteCode)) {
|
| | | return UserInviteLevelEnum.noActive;
|
| | | }
|
| | | UserVIPInfo info = userVIPInfoService.selectByUid(uid);
|
| | | if (info == null || info.getState() == UserVIPInfo.STATE_INVALID)
|
| | | return UserInviteLevelEnum.actived;
|
| | | if (info.getState() == UserVIPInfo.STATE_VERIFING)
|
| | | return UserInviteLevelEnum.vipApply;
|
| | |
|
| | | |
| | | // TODO 没有判断导师
|
| | |
|
| | | return UserInviteLevelEnum.vip;
|
| | | }
|
| | |
|
| | | |
| | | @Override
|
| | | public UserInviteLevelEnum getUserInviteLevelNew(Long uid) {
|
| | | String inviteCode = userInfoExtraService.getInviteCodeByUid(uid);
|
| | | if (StringUtil.isNullOrEmpty(inviteCode)) {
|
| | | return UserInviteLevelEnum.noActive;
|
| | | }
|
| | | |
| | | UserVIPInfo info = userVIPInfoService.selectByUid(uid);
|
| | | if (info == null) {
|
| | | UserVIPPreInfo userVIPPreInfo = userVIPPreInfoService.getLatestProcessInfo(uid);
|
| | | if (userVIPPreInfo != null) {
|
| | | if (userVIPPreInfo.getProcess() == UserVIPPreInfo.PROCESS_1) {
|
| | | return UserInviteLevelEnum.vipPre1;
|
| | | } else if (userVIPPreInfo.getProcess() == UserVIPPreInfo.PROCESS_2) {
|
| | | return UserInviteLevelEnum.vipPre2;
|
| | | }
|
| | | }
|
| | | } else if (info.getState() == UserVIPInfo.STATE_VERIFING) {
|
| | | return UserInviteLevelEnum.vipApply;
|
| | | } else if (info.getState() == UserVIPInfo.STATE_SUCCESS) {
|
| | | return UserInviteLevelEnum.vip;
|
| | | }
|
| | | |
| | | // TODO 没有判断导师
|
| | | |
| | | return UserInviteLevelEnum.actived;
|
| | | }
|
| | |
|
| | | }
|
| | | package com.yeshi.fanli.service.impl.user.invite; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import com.yeshi.fanli.dao.mybatis.user.vip.UserVIPLevelMapper; |
| | | import com.yeshi.fanli.dto.user.UserInviteLevelEnum; |
| | | import com.yeshi.fanli.dto.vip.UserVIPLevel; |
| | | import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum; |
| | | import com.yeshi.fanli.entity.bus.user.vip.UserVIPInfo; |
| | | import com.yeshi.fanli.entity.bus.user.vip.UserVIPPreInfo; |
| | | import com.yeshi.fanli.service.inter.user.UserInfoExtraService; |
| | | import com.yeshi.fanli.service.inter.user.invite.UserInviteService; |
| | | import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService; |
| | | import com.yeshi.fanli.service.inter.user.vip.UserVIPPreInfoService; |
| | | import com.yeshi.fanli.util.StringUtil; |
| | | import com.yeshi.fanli.util.user.UserLevelUtil; |
| | | |
| | | @Service |
| | | public class UserInviteServiceImpl implements UserInviteService { |
| | | @Resource |
| | | private UserInfoExtraService userInfoExtraService; |
| | | |
| | | @Resource |
| | | private UserVIPInfoService userVIPInfoService; |
| | | |
| | | @Resource |
| | | private UserVIPPreInfoService userVIPPreInfoService; |
| | | |
| | | @Resource |
| | | private UserVIPLevelMapper userVIPLevelMapper; |
| | | |
| | | @Override |
| | | public UserInviteLevelEnum getUserInviteLevel(Long uid) { |
| | | String inviteCode = userInfoExtraService.getInviteCodeByUid(uid); |
| | | if (StringUtil.isNullOrEmpty(inviteCode)) { |
| | | return UserInviteLevelEnum.noActive; |
| | | } |
| | | UserVIPInfo info = userVIPInfoService.selectByUid(uid); |
| | | if (info == null || info.getState() == UserVIPInfo.STATE_INVALID) |
| | | return UserInviteLevelEnum.actived; |
| | | if (info.getState() == UserVIPInfo.STATE_VERIFING) |
| | | return UserInviteLevelEnum.vipApply; |
| | | |
| | | // TODO 没有判断导师 |
| | | |
| | | return UserInviteLevelEnum.vip; |
| | | } |
| | | |
| | | @Override |
| | | public UserInviteLevelEnum getUserInviteLevelNew(Long uid) { |
| | | String inviteCode = userInfoExtraService.getInviteCodeByUid(uid); |
| | | if (StringUtil.isNullOrEmpty(inviteCode)) { |
| | | return UserInviteLevelEnum.noActive; |
| | | } |
| | | |
| | | UserVIPPreInfo userVIPPreInfo = userVIPPreInfoService.getLatestProcessInfo(uid); |
| | | if (userVIPPreInfo != null) { |
| | | Integer process = userVIPPreInfo.getProcess(); |
| | | UserLevelEnum levelEnum = UserLevelUtil.getByLevel(process); |
| | | |
| | | levelEnum = UserLevelUtil.getShowLevel(levelEnum); |
| | | if (levelEnum == null || levelEnum == UserLevelEnum.daRen) { |
| | | return UserInviteLevelEnum.actived; |
| | | } |
| | | |
| | | if (levelEnum == UserLevelEnum.highVIP) { |
| | | UserVIPInfo info = userVIPInfoService.selectByUid(uid); |
| | | if (info != null && info.getState() == UserVIPInfo.STATE_VERIFING) { |
| | | return UserInviteLevelEnum.vipApply; |
| | | } |
| | | return UserInviteLevelEnum.highVIP; |
| | | } |
| | | |
| | | if (levelEnum == UserLevelEnum.superVIP) { |
| | | return UserInviteLevelEnum.vip; |
| | | } |
| | | |
| | | if (levelEnum == UserLevelEnum.tearcher) { |
| | | return UserInviteLevelEnum.tearcher; |
| | | } |
| | | } |
| | | return UserInviteLevelEnum.actived; |
| | | } |
| | | |
| | | @Override |
| | | public boolean verifyVIP(Long uid) { |
| | | String inviteCode = userInfoExtraService.getInviteCodeByUid(uid); |
| | | if (StringUtil.isNullOrEmpty(inviteCode)) { |
| | | return false; |
| | | } |
| | | |
| | | UserVIPInfo info = userVIPInfoService.selectByUid(uid); |
| | | if (info != null && info.getState() == UserVIPInfo.STATE_SUCCESS) { |
| | | return true; |
| | | } |
| | | |
| | | UserVIPPreInfo userVIPPreInfo = userVIPPreInfoService.getLatestProcessInfo(uid); |
| | | if (userVIPPreInfo != null) { |
| | | if (userVIPPreInfo.getProcess() == UserVIPPreInfo.PROCESS_1) { |
| | | return false; |
| | | } |
| | | return true; |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | @Override |
| | | public UserVIPLevel getVIPLevelByUid(Long uid) { |
| | | return userVIPLevelMapper.getLevelByUid(uid); |
| | | } |
| | | |
| | | } |