From a4637ae9d71aa4a624b217ed3a1483f0e3a3a7ed Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期三, 06 五月 2020 14:04:53 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div --- fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ConfigController.java | 135 ++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 128 insertions(+), 7 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 83d5447..f2a3b1f 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,10 +2,12 @@ import java.io.PrintWriter; import java.util.ArrayList; +import java.util.Date; import java.util.List; import javax.annotation.Resource; +import org.json.JSONArray; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @@ -17,8 +19,13 @@ 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; import com.yeshi.fanli.entity.config.AppHomeFloatImg; import com.yeshi.fanli.entity.system.ConfigKeyEnum; @@ -34,13 +41,20 @@ 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.service.inter.user.vip.UserVipConfigService; 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; @@ -89,6 +103,21 @@ @Resource private UserInfoService userInfoService; + + @Resource + private UserVIPInfoService userVIPInfoService; + + @Resource + private UserVIPPreInfoService userVIPPreInfoService; + + @Resource + private UserLevelUpgradedNotifyService userLevelUpgradedNotifyService; + + @Resource + private ThreeSaleSerivce threeSaleSerivce; + + @Resource + private UserVipConfigService userVipConfigService; /** * s 棣栭〉閰嶇疆淇℃伅 @@ -260,7 +289,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("鐢ㄦ埛鏈櫥褰�")); @@ -272,6 +302,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涓嶅瓨鍦�")); @@ -295,12 +328,18 @@ data.put("taoBaoCart", source); if (VersionUtil.greaterThan_2_0_2(acceptData.getPlatform(), acceptData.getVersion())) { - // 鎴戠殑鐣岄潰banner - List<SwiperPicture> banner = swiperPictureService.getByBannerCardAndVersion("my_interface_banner", - acceptData.getPlatform(), Integer.parseInt(acceptData.getVersion())); - if (banner == null) - banner = new ArrayList<SwiperPicture>(); - data.put("banner", JsonUtil.getApiCommonGson().toJson(banner)); + // IOS姝e湪涓婄嚎鐗堟湰 + if ("ios".equalsIgnoreCase(acceptData.getPlatform()) + && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) { + data.put("banner", new JSONArray()); + } else { + // 鎴戠殑鐣岄潰banner + List<SwiperPicture> banner = swiperPictureService.getByBannerCardAndVersion("my_interface_banner", + acceptData.getPlatform(), Integer.parseInt(acceptData.getVersion())); + if (banner == null) + banner = new ArrayList<SwiperPicture>(); + data.put("banner", JsonUtil.getApiCommonGson().toJson(banner)); + } } if (VersionUtil.greaterThan_2_0_7(acceptData.getPlatform(), acceptData.getVersion())) { @@ -336,14 +375,96 @@ data.put("tearcherLink", tearcherLink); } + } + if (VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion())) { + UserVIPPreInfo info = userVIPPreInfoService.getLatestProcessInfo(uid); + JSONObject inner = new JSONObject(); + inner.put("link", userVipConfigService.getValueByKey("vip_link")); + inner.put("ion", "http://img.flqapp.com/resource/vip/icon_vip.png"); + inner.put("title", "鍏嶈垂鍗囩骇 浜細鍛樻潈鐩�"); + inner.put("btnName", "鍗囩骇浼氬憳"); + + if (uid != null) { + if (info != null && info.getProcess() >= UserVIPPreInfo.PROCESS_3) { + inner.put("link", userVipConfigService.getValueByKey("vip_link")); + inner.put("ion", "http://img.flqapp.com/resource/vip/icon_tearcher.png"); + inner.put("title", "鎷夸簲闄╀笌娲ヨ创 浜甯堟潈鐩�"); + if (info.getProcess() == UserVIPPreInfo.PROCESS_4) + inner.put("btnName", "鏉挎牀蹇渷"); + else + inner.put("btnName", "鍗囩骇瀵煎笀"); + } else { + UserVIPPreInfo userVIPPreInfo = userVIPPreInfoService.getLatestProcessInfo(uid); + if (userVIPPreInfo != null) { + if (userVIPPreInfo.getProcess() == UserVIPPreInfo.PROCESS_1) { + inner.put("btnName", "鍗囩骇楂樼骇浼氬憳"); + } else if (userVIPPreInfo.getProcess() == UserVIPPreInfo.PROCESS_2) { + inner.put("btnName", "鍗囩骇瓒呯骇浼氬憳"); + } + } + } + } + // IOS姝e湪涓婄嚎 + if ("ios".equalsIgnoreCase(acceptData.getPlatform()) + && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) { + } else + data.put("vip", inner); + // 骞冲彴瑙勫垯 + String platformRuleLink = configService.get(ConfigKeyEnum.platformRule.getKey()); + data.put("platformRule", platformRuleLink); + } + + 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) { + 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; } /** -- Gitblit v1.8.0