From 03f9370b85d930bd232f72721e826b5875f898cb Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 16 五月 2020 13:52:58 +0800
Subject: [PATCH] 用户登录后要验证电话号码是否已经绑定

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/TeamFansInfoServiceImpl.java |  172 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 169 insertions(+), 3 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/TeamFansInfoServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/TeamFansInfoServiceImpl.java
index 4425fd6..cdb7685 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/TeamFansInfoServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/TeamFansInfoServiceImpl.java
@@ -10,11 +10,27 @@
 
 import com.yeshi.fanli.dao.user.invite.TeamFansInfoDao;
 import com.yeshi.fanli.dto.user.ThreeSaleFocusDTO;
+import com.yeshi.fanli.dto.vip.UserVIPLevel;
 import com.yeshi.fanli.entity.bus.user.TeamFansInfo;
+import com.yeshi.fanli.entity.bus.user.ThreeSale;
+import com.yeshi.fanli.entity.bus.user.ThreeSaleExtraInfo;
+import com.yeshi.fanli.entity.bus.user.UserActiveLog;
+import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
+import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.entity.bus.user.UserInfoExtra;
 import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
+import com.yeshi.fanli.service.inter.count.HongBaoV2CountService;
+import com.yeshi.fanli.service.inter.order.CommonOrderService;
+import com.yeshi.fanli.service.inter.user.UserActiveLogService;
+import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
+import com.yeshi.fanli.service.inter.user.UserInfoService;
 import com.yeshi.fanli.service.inter.user.invite.TeamFansInfoService;
+import com.yeshi.fanli.service.inter.user.invite.ThreeSaleExtraInfoSerivce;
 import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
+import com.yeshi.fanli.service.inter.user.invite.UserInviteService;
+import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService;
 import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.user.UserLevelUtil;
 
 @Service
 public class TeamFansInfoServiceImpl implements TeamFansInfoService {
@@ -24,6 +40,33 @@
 	
 	@Resource
 	private ThreeSaleSerivce threeSaleSerivce;
+	
+	@Resource
+	private  UserInfoService userInfoService;
+	
+	@Resource
+	private UserInfoExtraService userInfoExtraService;
+	
+	@Resource
+	private ThreeSaleExtraInfoSerivce threeSaleExtraInfoSerivce;
+	
+	@Resource
+	private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
+	
+	@Resource
+	private HongBaoV2CountService hongBaoV2CountService;
+	
+	@Resource
+	private UserInviteService userInviteService;
+	
+	@Resource
+	private CommonOrderService commonOrderService;
+	
+	@Resource
+	private UserActiveLogService userActiveLogService;
+
+	
+	
 	
 	@Override
 	public void save(TeamFansInfo record) {
@@ -68,13 +111,13 @@
 			record.setActiveTime(new Date());
 		if (record.getFansNum() == null)
 			record.setFansNum(0);
-		if (record.getIncome() != null)
+		if (record.getIncome() == null)
 			record.setIncome(0);
 		if (record.getIncomeTime() == null)
 			record.setIncomeTime(new Date());
 		if (record.getMemoName() == null)
 			record.setMemoName("");
-		if (record.getTags() != null)
+		if (record.getTags() == null)
 			record.setTags("");
 		if (record.getMemoNameSup() == null)
 			record.setMemoNameSup("");
@@ -87,6 +130,121 @@
 			record.setWeixinIdExist(true);
 		}
 			
+	}
+	
+	@Override
+	public void addFansInfo(Long workerId, Long bossId, Date successTime) {
+		UserInfo userInfo = userInfoService.selectByPKey(workerId);
+		if (userInfo == null) {
+			return;
+		}
+
+		String phone = "";
+		if (!StringUtil.isNullOrEmpty(userInfo.getPhone())) {
+			phone = userInfo.getPhone();
+		}
+
+		// 澶囨敞鍚�
+		String memoName = null;
+		ThreeSaleExtraInfo threeSaleExtraInfo = threeSaleExtraInfoSerivce.getbyBossIdAndWorkerId(bossId,
+				workerId);
+		if (threeSaleExtraInfo != null) {
+			if (!StringUtil.isNullOrEmpty(threeSaleExtraInfo.getNickname())) {
+				memoName = threeSaleExtraInfo.getNickname();
+			}
+		}
+
+		// 寰俊鍙枫�佹椿璺冩椂闂�
+		String inviteCode = "";
+		String weixinId = "";
+		boolean weixinBind = false;
+		UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(workerId);
+		if (userInfoExtra != null) {
+			String weiXin = userInfoExtra.getWeiXin();
+			if (!StringUtil.isNullOrEmpty(weiXin)) {
+				weixinId = weiXin;
+				weixinBind = true;
+			}
+			String inviteCodeVip = userInfoExtra.getInviteCodeVip();
+			String inviteCode2 = userInfoExtra.getInviteCode();
+			if (!StringUtil.isNullOrEmpty(inviteCode2)) {
+				if (!StringUtil.isNullOrEmpty(inviteCodeVip)) {
+					inviteCode = inviteCodeVip;
+				} else {
+					inviteCode = inviteCode2;
+				}
+			}
+		}
+
+		Date activeTime = new Date(1514736000000L); // 榛樿20181-1-1;
+		UserActiveLog userActiveLog = userActiveLogService.getUserLatestActiveInfo(workerId);
+		if (userActiveLog != null) {
+			activeTime = userActiveLog.getCreateTime();
+		}
+
+		// 娣樺疂鎺堟潈
+		boolean taobaoBind = false;
+		UserExtraTaoBaoInfo taoBaoInfo = userExtraTaoBaoInfoService.getByUid(workerId);
+		if (taoBaoInfo != null && !StringUtil.isNullOrEmpty(taoBaoInfo.getRelationId())
+				&& !StringUtil.isNullOrEmpty(taoBaoInfo.getSpecialId())) {
+			taobaoBind = true;
+		}
+
+		// 绮変笣鏁伴噺
+		long firstTeam = threeSaleSerivce.countFirstTeam(workerId);
+		long secondTeam = threeSaleSerivce.countSecondTeam(workerId);
+		int fansNum = (int) (firstTeam + secondTeam);
+
+		// 鏀跺叆
+		BigDecimal income = hongBaoV2CountService.sumMoneyArrivalByUidAndNearDay(workerId, 60);
+		if (income == null)
+			income = new BigDecimal(0);
+
+		// 鏈夋晥绮変笣
+		boolean stateValid = false;
+		long countValid = commonOrderService.countOrderByUidAndSettled(workerId, BigDecimal.valueOf(1));
+		if (countValid > 0) {
+			stateValid = true;
+		}
+
+		// 鏌ヨ绮変笣绛夌骇
+		UserLevelEnum level = null;
+		UserVIPLevel vipLevel = userInviteService.getVIPLevelByUid(workerId);
+		if (vipLevel != null && vipLevel.getLevel() != null) {
+			level = UserLevelUtil.getByLevel(vipLevel.getLevel());
+		}
+		if (level == null) {
+			level = UserLevelEnum.daRen;
+		}
+		level = UserLevelUtil.getShowLevel(level);
+
+		// 鏄惁瀛樺湪涓婁笂绾�
+		Long bossSuperId = null;
+		ThreeSale superThree = threeSaleSerivce.selectByWorkerId(bossId);
+		if (superThree != null)
+			bossSuperId = superThree.getBoss().getId();
+
+		TeamFansInfo focusInfo = new TeamFansInfo();
+		focusInfo.setBossId(bossId);
+		focusInfo.setWorkerId(workerId);
+		focusInfo.setBossSuperId(bossSuperId);
+		focusInfo.setJoinTime(successTime);
+		focusInfo.setNickName(userInfo.getNickName());
+		focusInfo.setMemoName(memoName);
+		focusInfo.setWeixinIdExist(weixinBind);
+		focusInfo.setWeixinId(weixinId);
+		focusInfo.setPhone(phone);
+		focusInfo.setPhoneOpen(true);
+		focusInfo.setInviteCode(inviteCode);
+		focusInfo.setActiveTime(activeTime);
+		focusInfo.setFansNum(fansNum);
+		focusInfo.setTaobaoBind(taobaoBind);
+		focusInfo.setIncome(income.multiply(BigDecimal.valueOf(100)).setScale(2, BigDecimal.ROUND_DOWN).intValue());
+		focusInfo.setIncomeTime(new Date());
+		focusInfo.setStateValid(stateValid);
+		focusInfo.setLevel(level);
+		focusInfo.setId(workerId.toString());
+		save(focusInfo);
 	}
 	
 	
@@ -181,6 +339,14 @@
 	}
 	
 	@Override
+	public void updateLevel(Long workerId, UserLevelEnum level) {
+		TeamFansInfo teamFansInfo = new TeamFansInfo();
+		teamFansInfo.setLevel(level);
+		teamFansInfo.setWorkerId(workerId);
+		save(teamFansInfo);
+	}
+	
+	@Override
 	public void updatePhoneOpen(Long workerId, boolean phoneOpen) {
 		TeamFansInfo teamFansInfo = new TeamFansInfo();
 		teamFansInfo.setWorkerId(workerId);
@@ -197,7 +363,7 @@
 		
 		TeamFansInfo teamFansInfo = new TeamFansInfo();
 		teamFansInfo.setWorkerId(workerId);
-		teamFansInfo.setIncome(income.multiply(BigDecimal.valueOf(100)).setScale(2, BigDecimal.ROUND_DOWN).intValue());
+		teamFansInfo.setIncome(income.multiply(BigDecimal.valueOf(100)).setScale(0, BigDecimal.ROUND_DOWN).intValue());
 		teamFansInfo.setIncomeTime(new Date());
 		save(teamFansInfo);
 	}

--
Gitblit v1.8.0