From 06e70064fbc059c8cc9c654376ce589945e9702d Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期二, 03 十二月 2019 12:32:41 +0800 Subject: [PATCH] 品牌修改 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserAccountControllerV2.java | 112 ++++++++++++++++++++++++++++++++----------------------- 1 files changed, 65 insertions(+), 47 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserAccountControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserAccountControllerV2.java index 9d1c062..18f7272 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserAccountControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserAccountControllerV2.java @@ -2,7 +2,10 @@ import java.io.PrintWriter; import java.math.BigDecimal; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Date; import java.util.List; import javax.annotation.Resource; @@ -16,6 +19,7 @@ import com.yeshi.fanli.entity.accept.AcceptData; import com.yeshi.fanli.entity.bus.user.SMSHistory; import com.yeshi.fanli.entity.bus.user.UserInfo; +import com.yeshi.fanli.entity.bus.user.UserInfoExtra; import com.yeshi.fanli.entity.bus.user.vip.UserVIPInfo; import com.yeshi.fanli.entity.push.DeviceActive; import com.yeshi.fanli.entity.shop.BanLiShopOrder; @@ -44,6 +48,7 @@ import com.yeshi.fanli.service.inter.user.UserAccountBindingHistoryService; import com.yeshi.fanli.service.inter.user.UserAccountService; import com.yeshi.fanli.service.inter.user.UserInfoDeleteRecordService; +import com.yeshi.fanli.service.inter.user.UserInfoExtraService; import com.yeshi.fanli.service.inter.user.UserInfoModifyRecordService; import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService; @@ -51,6 +56,7 @@ import com.yeshi.fanli.service.inter.user.integral.IntegralDetailService; import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce; import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService; +import com.yeshi.fanli.service.inter.user.vip.UserVipConfigService; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.MoneyBigDecimalUtil; import com.yeshi.fanli.util.RedisManager; @@ -58,6 +64,7 @@ import com.yeshi.fanli.util.ThreadUtil; import com.yeshi.fanli.util.account.UserUtil; import com.yeshi.fanli.util.annotation.RequestSerializableByKey; +import com.yeshi.fanli.vo.user.UserVipRateVO; import net.sf.json.JSONObject; @@ -160,6 +167,12 @@ @Resource private ConfigService configService; + + @Resource + private UserVipConfigService userVipConfigService; + + @Resource + private UserInfoExtraService userInfoExtraService; /** * 鏂扮増鐧诲綍 V1.5.3 @@ -336,73 +349,78 @@ * @param out */ @RequestMapping(value = "getVIPInfo") - public void getVIPInfo(AcceptData acceptData, Long uid, PrintWriter out) { + public void getVIPInfo(String callback, AcceptData acceptData, Long uid, PrintWriter out) { if (uid == null || uid <= 0) { - out.print(JsonUtil.loadFalseResult("鐢ㄦ埛id涓虹┖")); + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�")); return; } UserInfo userInfo = userInfoService.selectByPKey(uid); if (userInfo == null) { - out.print(JsonUtil.loadFalseResult("璇ョ敤鎴蜂笉瀛樺湪")); + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "璇ョ敤鎴蜂笉瀛樺湪")); return; } - JSONObject data = new JSONObject(); - data.put("id", uid); - data.put("nickName", userInfo.getNickName()); - data.put("portrait", userInfo.getPortrait()); + UserVipRateVO vo = new UserVipRateVO(); + vo.setId(uid); + vo.setNickName(userInfo.getNickName()); + vo.setPortrait(userInfo.getPortrait()); + vo.setHelpLink(userVipConfigService.getValueByKey("help_link_vip_h5")); - UserVIPInfo userVIPInfo = userVIPInfoService.selectByUid(uid); - boolean vip = false; - if (userVIPInfo != null && userVIPInfo.getState() != null - && userVIPInfo.getState() == UserVIPInfo.STATE_SUCCESS) { - vip = true; - data.put("applyTime", userVIPInfo.getSuccessTime()); - } - data.put("vip", vip); - // 鐪侀挶 -鑷喘浜х敓杩斿埄 - BigDecimal rewardPurchase = hongBaoV2CountService.getRewardMoneyBySelf(uid); - data.put("rurchaseReward", rewardPurchase.setScale(2)); - - BigDecimal conserveMoney = rewardPurchase; - if (!vip) { // 灏戠渷閽憋細 鑷喘浜х敓杩斿埄 * 5/12 - BigDecimal rate1 = new BigDecimal(5); - BigDecimal rate2 = new BigDecimal(12); - conserveMoney = MoneyBigDecimalUtil.mul2(rewardPurchase, MoneyBigDecimalUtil.div(rate1, rate2)); - } - data.put("conserveMoney", conserveMoney.setScale(2)); - + BigDecimal finishMoney = hongBaoV2CountService.getRewardMoneyBySelf(uid); // 鍒嗕韩璧� BigDecimal rewardShare = hongBaoV2CountService.getRewardMoneyByShare(uid); // 閭�璇疯禋 BigDecimal rewardInvite = hongBaoV2CountService.getRewardMoneyByInvite(uid); - - BigDecimal earnMoney = rewardShare; - if (vip) { // 璧氶挶=鍒嗕韩+閭�璇� - earnMoney = MoneyBigDecimalUtil.add(rewardShare, rewardInvite ); - } else { // 灏戣禋閽憋細 鍒嗕韩璧�* 5/12 + + UserVIPInfo userVIPInfo = userVIPInfoService.selectByUid(uid); + if (userVIPInfo != null && userVIPInfo.getState() != null + && userVIPInfo.getState() == UserVIPInfo.STATE_SUCCESS) { // VIP + SimpleDateFormat format = new SimpleDateFormat("yyyy.mm.dd"); + vo.setVip(true); + vo.setSuccessTime(format.format(userVIPInfo.getSuccessTime())); + vo.setConserveMoney(finishMoney.setScale(2)); + vo.setEarnMoney(MoneyBigDecimalUtil.add(rewardShare, rewardInvite).setScale(2)); + } else { BigDecimal rate1 = new BigDecimal(5); BigDecimal rate2 = new BigDecimal(12); - earnMoney = MoneyBigDecimalUtil.mul2(rewardShare, MoneyBigDecimalUtil.div(rate1, rate2)); + vo.setConserveMoney(MoneyBigDecimalUtil.mul2(finishMoney, MoneyBigDecimalUtil.div(rate1, rate2)).setScale(2)); + vo.setEarnMoney( MoneyBigDecimalUtil.mul2(rewardShare, MoneyBigDecimalUtil.div(rate1, rate2)).setScale(2)); } - data.put("earnMoney", earnMoney.setScale(2)); + vo.setFinishMoney(finishMoney.setScale(2)); - // 娉細1.鏈夋晥涓�绾ч槦鍛樺畾涔夛細2019骞�1鏈�1鏃ヨ捣锛岃嚜璐垨鍒嗕韩1绗斾笖浠樻鎬婚噾棰濅笉灏忎簬1鍏冿紙閫�娆句负澶辨晥锛夛紱 - long teamNum = hongBaoV2CountService.countValidOrderTeamUserByUid(uid, "2019-01-01", new BigDecimal(1)); - data.put("teamNum", teamNum); - - // 绱閲戝竵 - BigDecimal goldCoin = integralDetailService.getCumulativeMoney(uid); - data.put("goldCoin", goldCoin.setScale(0)); - // 甯姪閾炬帴 - data.put("helpLink", configService.get("help_link_vip_info")); - - // 浣跨敤绾㈠寘娆℃暟 + // 浼氬憳瑙勫垯鎵ц鏃堕棿 + String limtDate = userVipConfigService.getValueByKey("vip_execute_time"); + Date executeDate = null; + try { + SimpleDateFormat format = new SimpleDateFormat("yyyy-mm-dd"); + executeDate = format.parse(limtDate); + } catch (ParseException e) { + e.printStackTrace(); + } List<Integer> list = new ArrayList<Integer>(); list.add(BanLiShopOrder.STATE_SUCCESS); - data.put("shopNum", banLiShopOrderService.countByUidAndState(uid, list)); - out.print(JsonUtil.loadTrueResult(data)); + BigDecimal payMoney = new BigDecimal(userVipConfigService.getValueByKey("require_order_pay")); + + vo.setFinishGoldCoin(integralDetailService.getCumulativeMoney(uid)); + vo.setFinishTeam(hongBaoV2CountService.countValidOrderTeamUserByUid(uid, executeDate.getTime(), payMoney)); + vo.setFinishHongBao(banLiShopOrderService.countByUidAndState(uid, list)); + + UserInfoExtra extra = userInfoExtraService.getUserInfoExtra(uid); + if (extra !=null && (extra.getFirstLoginTime() == null || extra.getFirstLoginTime().getTime() < executeDate.getTime())) { + vo.setLimitTeam(Long.parseLong(userVipConfigService.getValueByKey("require_invite_num_old_user"))); + } else { + vo.setLimitTeam(Long.parseLong(userVipConfigService.getValueByKey("require_invite_num_new_user"))); + } + vo.setLimitHongBao(Long.parseLong(userVipConfigService.getValueByKey("require_shop_buy"))); + vo.setLimitMoney(new BigDecimal(userVipConfigService.getValueByKey("require_fan_money"))); + vo.setLimitgoldCoin(new BigDecimal(userVipConfigService.getValueByKey("require_gold_coin"))); + + if (!StringUtil.isNullOrEmpty(callback)) { + out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(vo))); + } else { + out.print(JsonUtil.loadTrueResult(vo)); + } } } -- Gitblit v1.8.0