From 30d8e227e8d823b6c38c3b9c90ac2df03b63befe Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 25 二月 2025 16:41:22 +0800
Subject: [PATCH] 淘宝转链接口更新

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/UserInviteServiceImpl.java |  153 ++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 114 insertions(+), 39 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..e9d6ae0 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
@@ -1,39 +1,114 @@
-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.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.util.StringUtil;
-
-@Service
-public class UserInviteServiceImpl implements UserInviteService {
-	@Resource
-	private UserInfoExtraService userInfoExtraService;
-
-	@Resource
-	private UserVIPInfoService userVIPInfoService;
-
-	@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;
-	}
-
-}
+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);
+	}
+
+}

--
Gitblit v1.8.0