fanli/src/main/java/com/yeshi/fanli/controller/client/InviteGetMoneyController.java
@@ -36,6 +36,7 @@ import com.yeshi.fanli.service.inter.user.UserRankingsService; import com.yeshi.fanli.tag.PageEntity; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.account.UserUtil; import net.sf.json.JSONArray; @@ -79,6 +80,9 @@ @Resource private ThreeSaleSerivce threeSaleSerivce; @Resource private RedisManager redisManager; @RequestMapping(value = "/inviteGetMoney", method = RequestMethod.POST) @@ -317,7 +321,15 @@ return; } String inviteShortLink = redisManager.getInviteShortLink(uid); if (inviteShortLink != null && inviteShortLink.trim().length() > 0) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请1分钟后再试")); return; } String shortLink = UserUtil.getInviteShortLink(uid); // 缓存1分钟 redisManager.setInviteShortLink(uid, shortLink); JSONObject data = new JSONObject(); data.put("shortLink", shortLink); fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java
@@ -35,6 +35,7 @@ import com.google.gson.JsonSerializationContext; import com.google.gson.JsonSerializer; import com.yeshi.fanli.dto.HongBaoDTO; import com.yeshi.fanli.entity.AppVersionInfo; import com.yeshi.fanli.entity.accept.AcceptData; import com.yeshi.fanli.entity.bus.user.AccountDetails; import com.yeshi.fanli.entity.bus.user.AccountMessage; @@ -71,6 +72,7 @@ import com.yeshi.fanli.exception.user.UserInfoExtraException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.AdminUserService; import com.yeshi.fanli.service.inter.config.AppVersionService; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.config.SystemService; import com.yeshi.fanli.service.inter.goods.CollectionGoodsV2Service; @@ -215,6 +217,9 @@ @Resource private UserInfoExtraService userInfoExtraService; @Resource private AppVersionService appVersionService; private static final String PASSWORD_MAX_ERROR = "password_max_error"; @@ -505,11 +510,35 @@ BigDecimal fanliHB = user.getTotalHongBao(); user.setTotalHongBao(fanliHB); UserInfo filterForClientUser = UserUtil.filterForClientUser(user); // 1.5.0 版本之后返回新的等级 String version = acceptData.getVersion(); if (version != null && version.trim().length() > 0) { int versionCode = Integer.parseInt(version); String platform = acceptData.getPlatform(); AppVersionInfo versionInfo = appVersionService.getByPlatformAndVersion(platform, "1.5.0"); if (versionInfo != null) { int versionCode150 = versionInfo.getVersionCode(); if (versionCode >= versionCode150) { UserInfoExtraVO userInfoExtra = userInfoExtraService.getInfoExtraVOByUid(user.getId()); if (userInfoExtra != null && userInfoExtra.getUserRank() != null) { String picture = userInfoExtra.getUserRank().getPicture(); String icon = userInfoExtra.getUserRank().getIcon(); filterForClientUser.setRankNamePicture(picture); filterForClientUser.setRankIcon(icon); } } } } GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation(); JSONObject data = new JSONObject(); data.put("user", JsonUtil.getConvertBigDecimalToStringBuilder(gsonBuilder).create() .toJson(UserUtil.filterForClientUser(user))); .toJson(filterForClientUser)); data.put("first", 0); int spreadImgCount = spreadUserImgService.countUserSpreadImg(user.getId()); long shareCount = userShareGoodsRecordService.countShareRecordByUid(user.getId()); fanli/src/main/java/com/yeshi/fanli/controller/client/UserOrderController.java
@@ -9,23 +9,27 @@ import javax.annotation.Resource; import net.sf.json.JSONObject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.yeshi.utils.DateUtil; import org.yeshi.utils.JsonUtil; import com.yeshi.fanli.entity.AppVersionInfo; import com.yeshi.fanli.entity.accept.AcceptData; import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.exception.order.CommonOrderException; import com.yeshi.fanli.service.inter.config.AppVersionService; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.count.HongBaoV2CountService; import com.yeshi.fanli.service.inter.order.CommonOrderService; import com.yeshi.fanli.service.inter.user.UserInfoExtraService; import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.util.account.UserUtil; import com.yeshi.fanli.vo.order.CommonOrderVO; import com.yeshi.fanli.vo.user.UserInfoExtraVO; import net.sf.json.JSONObject; @Controller @RequestMapping("api/v1/user/order") @@ -35,7 +39,13 @@ private ConfigService configService; @Resource private AppVersionService appVersionService; @Resource private UserInfoService userInfoService; @Resource private UserInfoExtraService userInfoExtraService; @Resource private CommonOrderService commonOrderService; @@ -199,6 +209,29 @@ UserInfo userInfo = UserUtil.filterForClientUser(user); // 1.5.0 版本之后返回新的等级 String version = acceptData.getVersion(); if (version != null && version.trim().length() > 0) { int versionCode = Integer.parseInt(version); String platform = acceptData.getPlatform(); AppVersionInfo versionInfo = appVersionService.getByPlatformAndVersion(platform, "1.5.0"); if (versionInfo != null) { int versionCode150 = versionInfo.getVersionCode(); if (versionCode >= versionCode150) { UserInfoExtraVO userInfoExtra = userInfoExtraService.getInfoExtraVOByUid(user.getId()); if (userInfoExtra != null && userInfoExtra.getUserRank() != null) { String picture = userInfoExtra.getUserRank().getPicture(); String icon = userInfoExtra.getUserRank().getIcon(); userInfo.setRankIcon(icon); userInfo.setRankNamePicture(picture); } } } } JSONObject data = new JSONObject(); data.put("userInfo", userInfo); fanli/src/main/java/com/yeshi/fanli/dao/mybatis/AppVersionInfoMapper.java
@@ -25,6 +25,17 @@ List<AppVersionInfo> selectByPlatform(String platform); /** * 根据平台和版本获取版本信息 * * @param platform * @param versionCode * @return */ AppVersionInfo selectByPlatformAndVersion(@Param("platform") String platform, @Param("version") String version); /** * 根据平台和版本号获取版本信息 * * @param platform fanli/src/main/java/com/yeshi/fanli/mapping/AppVersionInfoMapper.xml
@@ -32,6 +32,14 @@ #{0} </select> <select id="selectByPlatformAndVersion" resultMap="BaseResultMap"> select <include refid="Base_Column_List" /> from yeshi_ec_app_version_code_map where avcm_platform = #{platform} and avcm_version=#{version} </select> <select id="selectByPlatformAndVersionCode" resultMap="BaseResultMap"> select <include refid="Base_Column_List" /> @@ -39,7 +47,6 @@ #{platform} and avcm_version_code=#{versionCode} </select> <select id="listByPlatformAndMinVersionCode" resultMap="BaseResultMap"> select fanli/src/main/java/com/yeshi/fanli/service/impl/config/AppVersionServiceImpl.java
@@ -47,4 +47,9 @@ return appVersionInfoMapper.selectByPlatformAndVersionCode(platform, versionCode); } @Override public AppVersionInfo getByPlatformAndVersion(String platform, String version) { return appVersionInfoMapper.selectByPlatformAndVersion(platform, version); } } fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserInfoExtraServiceImpl.java
@@ -334,6 +334,12 @@ } @Override public UserInfoExtraVO getInfoExtraVOByUid(Long uid) { return userInfoExtraMapper.getInfoExtraVOByUid(uid); } @Override public String getUserInviteCode(Long uid) throws UserInfoExtraException { UserInfoExtra userInfoExtra = userInfoExtraMapper.getInfoExtraByUid(uid); fanli/src/main/java/com/yeshi/fanli/service/inter/config/AppVersionService.java
@@ -37,4 +37,12 @@ */ public AppVersionInfo getAppVersionInfoListByPlatformAndVersion(String platform, int versionCode); /** * 根据版本号获取 * @param platform * @param version * @return */ public AppVersionInfo getByPlatformAndVersion(String platform, String version); } fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserInfoExtraService.java
@@ -60,5 +60,12 @@ * @throws UserInfoExtraException */ public String getUserInviteCode(Long uid) throws UserInfoExtraException; /** * 获取用户额外信息全部衍生信息 * @param uid * @return */ public UserInfoExtraVO getInfoExtraVOByUid(Long uid); } fanli/src/main/java/com/yeshi/fanli/util/RedisManager.java
@@ -414,5 +414,42 @@ String key = "smsstate-alipay-" + phone; return !StringUtil.isNullOrEmpty(getString(key)); } /** * 缓存短连接1分钟 * @param uid * @param shortlink */ public void setInviteShortLink(long uid, String shortlink) { String value = ""; String key = "invite-shortlink-" + uid; if (Constant.IS_OUTNET) { value = getCommonString(key); if (StringUtil.isNullOrEmpty(value)) { cacheCommonString(key, shortlink, 60); } } } /** * 获取用户短连接 * @param uid * @return */ public String getInviteShortLink(long uid) { String value = ""; String key = "invite-shortlink-" + uid; if (Constant.IS_OUTNET) value = getCommonString(key); return value; } }