From 393e3a365b5ebbed6e9eef07fbd18881cde73711 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 28 三月 2020 16:51:04 +0800
Subject: [PATCH] Merge branch 'div' into div-1

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ConfigController.java |   70 +++++++++++++++++++++++++++++++++--
 1 files changed, 66 insertions(+), 4 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ConfigController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ConfigController.java
index 0005391..9d77afd 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ConfigController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ConfigController.java
@@ -2,6 +2,7 @@
 
 import java.io.PrintWriter;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 
 import javax.annotation.Resource;
@@ -12,14 +13,16 @@
 import org.yeshi.utils.JsonUtil;
 import org.yeshi.utils.encrypt.DESUtil;
 
-import com.yeshi.fanli.dto.user.UserInviteLevelEnum;
 import com.yeshi.fanli.entity.accept.AcceptData;
 import com.yeshi.fanli.entity.bus.homemodule.FloatAD;
 import com.yeshi.fanli.entity.bus.homemodule.FloatAD.FloatADTypeEnum;
 import com.yeshi.fanli.entity.bus.homemodule.SwiperPicture;
 import com.yeshi.fanli.entity.bus.msg.MsgDeviceReadState;
+import com.yeshi.fanli.entity.bus.user.ThreeSale;
 import com.yeshi.fanli.entity.bus.user.UserActiveLog;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
+import com.yeshi.fanli.entity.bus.user.vip.UserLevelUpgradedNotify;
 import com.yeshi.fanli.entity.bus.user.vip.UserVIPInfo;
 import com.yeshi.fanli.entity.bus.user.vip.UserVIPPreInfo;
 import com.yeshi.fanli.entity.common.JumpDetailV2;
@@ -37,15 +40,19 @@
 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.ThreeSaleSerivce;
 import com.yeshi.fanli.service.inter.user.notify.UserActivedRecordService;
+import com.yeshi.fanli.service.inter.user.vip.UserLevelUpgradedNotifyService;
 import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService;
 import com.yeshi.fanli.service.inter.user.vip.UserVIPPreInfoService;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.ThreadUtil;
+import com.yeshi.fanli.util.TimeUtil;
 import com.yeshi.fanli.util.VersionUtil;
 import com.yeshi.fanli.vo.user.UserDialogBtnVO;
 import com.yeshi.fanli.vo.user.UserDialogVO;
+import com.yeshi.fanli.vo.user.VIPUpgradedNotifyVO;
 
 import net.sf.json.JSONObject;
 
@@ -101,6 +108,12 @@
 	
 	@Resource
 	private UserVIPPreInfoService userVIPPreInfoService;
+
+	@Resource
+	private UserLevelUpgradedNotifyService userLevelUpgradedNotifyService;
+
+	@Resource
+	private ThreeSaleSerivce threeSaleSerivce;
 
 	/**
 	 * s 棣栭〉閰嶇疆淇℃伅
@@ -272,7 +285,8 @@
 	 * @param out
 	 */
 	@RequestMapping(value = "closeDialogNotify", method = RequestMethod.POST)
-	public void closeDialogNotify(AcceptData acceptData, Long uid, String id, int type, PrintWriter out) {
+	public void closeDialogNotify(AcceptData acceptData, Long uid, String id, String sourceId, int type,
+			PrintWriter out) {
 
 		if (uid == null) {
 			out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
@@ -284,6 +298,9 @@
 		}
 		if (id.equalsIgnoreCase("tearcherNotify")) {
 			userActivedRecordService.setTearcherNotified(uid);
+			out.print(JsonUtil.loadTrueResult(""));
+		} else if (id.equalsIgnoreCase("vipUpgradedNotify")) {
+			userLevelUpgradedNotifyService.setNotified(sourceId);
 			out.print(JsonUtil.loadTrueResult(""));
 		} else {
 			out.print(JsonUtil.loadFalseResult("id涓嶅瓨鍦�"));
@@ -349,6 +366,7 @@
 					data.put("tearcherLink", tearcherLink);
 				}
 			}
+
 			
 			if (VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion())) {
 				// TODO 楠岃瘉鏄惁鏄甯�
@@ -358,7 +376,6 @@
 				inner.put("ion", "http://img.flqapp.com/resource/vip/icon_vip.png");
 				inner.put("title", "鍏嶈垂鍗囩骇 浜細鍛樻潈鐩�");
 				inner.put("btnName", "鍗囩骇浼氬憳");
-				
 				if (uid != null) {
 					// 鏄惁瀵煎笀 TODO
 					
@@ -379,18 +396,63 @@
 					}
 				}
 				data.put("vip", inner);
+			}
+
+			if (VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion()) && uid != null) {
+				UserLevelUpgradedNotify notify = userLevelUpgradedNotifyService.getNeedNotifyByUid(uid);
+				if (notify != null) {
+					Date endTime = getUpgradedTime(uid, notify.getToLevel());
+					Date startTime = getUpgradedTime(uid, notify.getFromLevel());
+					if (endTime != null && startTime != null) {
+						VIPUpgradedNotifyVO notifyVO = new VIPUpgradedNotifyVO();
+						notifyVO.setDay(TimeUtil.getDayDifferenceCount(startTime, endTime));
+						notifyVO.setDetailLink(notify.getToLevel().getDetailLink());
+						notifyVO.setFromLevelName(notify.getFromLevel().getName());
+						notifyVO.setId("vipUpgradedNotify");
+						notifyVO.setSourceId(notify.getId());
+						notifyVO.setToLevel(notify.getToLevel().getTag());
+						notifyVO.setToLevelName(notify.getToLevel().getName());
+						data.put("vipUpgradedNotify", notifyVO);
+					}
+				}
 			}
 			out.print(JsonUtil.loadTrueResult(data));
 		} catch (Exception e) {
 			out.print(JsonUtil.loadFalseResult("鑾峰彇澶辫触"));
 			e.printStackTrace();
 		}
-
 	}
 	
 	
 	
 
+	// 鑾峰彇鍗囩骇鏃堕棿
+	private Date getUpgradedTime(Long uid, UserLevelEnum level) {
+		Date time = null;
+		if (level == UserLevelEnum.superVIP) {
+			UserVIPInfo vipInfo = userVIPInfoService.selectByUid(uid);
+			if (vipInfo != null && vipInfo.getState() == UserVIPInfo.STATE_SUCCESS)
+				time = vipInfo.getSuccessTime();
+
+		} else if (level == UserLevelEnum.highVIP || level == UserLevelEnum.normalVIP) {
+			UserVIPPreInfo info = userVIPPreInfoService.selectByUidAndProcess(uid, level.getLevel());
+			if (info != null)
+				time = info.getCreateTime();
+		} else if (level == UserLevelEnum.daRen) {
+
+			// 鎴愪负杈句汉鐨勬椂闂�,鐢ㄦ埛婵�娲绘椂闂�
+			ThreeSale threeSale = threeSaleSerivce.getByWorkerId(uid);
+			if (threeSale != null && threeSale.getState() == true && threeSale.getSucceedTime() != null) {
+				time = new Date(threeSale.getSucceedTime());
+			} else {// 鍙栫敤鎴锋敞鍐屾椂闂�
+				UserInfo user = userInfoService.selectAvailableByPrimaryKey(uid);
+				time = new Date(user.getCreatetime());
+			}
+		}
+
+		return time;
+	}
+
 	/**
 	 * 璁㈠崟瑙f瀽閰嶇疆
 	 * 

--
Gitblit v1.8.0