From 744594ef1a2f530fc3e86ea9dc48b62247f79420 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 19 五月 2020 17:13:23 +0800
Subject: [PATCH] 饿了么绘图,添加口碑

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/UserInviteServiceImpl.java |   75 +++++++++++++++++++++++++++++++++++++
 1 files changed, 75 insertions(+), 0 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/UserInviteServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/UserInviteServiceImpl.java
index 9654b6a..ef68413 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/UserInviteServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/UserInviteServiceImpl.java
@@ -4,12 +4,18 @@
 
 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 {
@@ -18,6 +24,12 @@
 
 	@Resource
 	private UserVIPInfoService userVIPInfoService;
+
+	@Resource
+	private UserVIPPreInfoService userVIPPreInfoService;
+
+	@Resource
+	private UserVIPLevelMapper userVIPLevelMapper;
 
 	@Override
 	public UserInviteLevelEnum getUserInviteLevel(Long uid) {
@@ -36,4 +48,67 @@
 		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);
+	}
+
 }

--
Gitblit v1.8.0