From e97065519838a1ebbee870eefae6eae9f5d91647 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 26 十一月 2019 14:10:24 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserAccountControllerV2.java | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 103 insertions(+), 0 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 5c155f0..9d1c062 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 @@ -1,6 +1,9 @@ package com.yeshi.fanli.controller.client.v2; import java.io.PrintWriter; +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; @@ -13,11 +16,15 @@ 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.vip.UserVIPInfo; import com.yeshi.fanli.entity.push.DeviceActive; +import com.yeshi.fanli.entity.shop.BanLiShopOrder; import com.yeshi.fanli.entity.system.BusinessSystem; import com.yeshi.fanli.exception.user.UserAccountException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.config.BusinessSystemService; +import com.yeshi.fanli.service.inter.config.ConfigService; +import com.yeshi.fanli.service.inter.count.HongBaoV2CountService; import com.yeshi.fanli.service.inter.homemodule.HomeNavbarUserService; import com.yeshi.fanli.service.inter.money.UserMoneyService; import com.yeshi.fanli.service.inter.order.LostOrderService; @@ -26,6 +33,7 @@ import com.yeshi.fanli.service.inter.push.DeviceTokenHWService; import com.yeshi.fanli.service.inter.push.DeviceTokenOPPOService; import com.yeshi.fanli.service.inter.push.DeviceTokenVIVOService; +import com.yeshi.fanli.service.inter.shop.BanLiShopOrderService; import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService; import com.yeshi.fanli.service.inter.user.BindRemindService; @@ -40,8 +48,11 @@ import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService; import com.yeshi.fanli.service.inter.user.UserSystemCouponService; +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.util.Constant; +import com.yeshi.fanli.util.MoneyBigDecimalUtil; import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.ThreadUtil; @@ -134,7 +145,22 @@ @Resource private BindRemindService bindRemindService; + + @Resource + private UserVIPInfoService userVIPInfoService; + + @Resource + private HongBaoV2CountService hongBaoV2CountService; + + @Resource + private IntegralDetailService integralDetailService; + + @Resource + private BanLiShopOrderService banLiShopOrderService; + @Resource + private ConfigService configService; + /** * 鏂扮増鐧诲綍 V1.5.3 * @@ -302,4 +328,81 @@ out.print(JsonUtil.loadTrueResult("璁板綍鎴愬姛")); } + + /** + * 鑾峰彇vip淇℃伅 + * @param acceptData + * @param uid + * @param out + */ + @RequestMapping(value = "getVIPInfo") + public void getVIPInfo(AcceptData acceptData, Long uid, PrintWriter out) { + if (uid == null || uid <= 0) { + out.print(JsonUtil.loadFalseResult("鐢ㄦ埛id涓虹┖")); + return; + } + + UserInfo userInfo = userInfoService.selectByPKey(uid); + if (userInfo == null) { + out.print(JsonUtil.loadFalseResult("璇ョ敤鎴蜂笉瀛樺湪")); + return; + } + + JSONObject data = new JSONObject(); + data.put("id", uid); + data.put("nickName", userInfo.getNickName()); + data.put("portrait", userInfo.getPortrait()); + + 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 rewardShare = hongBaoV2CountService.getRewardMoneyByShare(uid); + // 閭�璇疯禋 + BigDecimal rewardInvite = hongBaoV2CountService.getRewardMoneyByInvite(uid); + + BigDecimal earnMoney = rewardShare; + if (vip) { // 璧氶挶=鍒嗕韩+閭�璇� + earnMoney = MoneyBigDecimalUtil.add(rewardShare, rewardInvite ); + } else { // 灏戣禋閽憋細 鍒嗕韩璧�* 5/12 + BigDecimal rate1 = new BigDecimal(5); + BigDecimal rate2 = new BigDecimal(12); + earnMoney = MoneyBigDecimalUtil.mul2(rewardShare, MoneyBigDecimalUtil.div(rate1, rate2)); + } + data.put("earnMoney", earnMoney.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")); + + // 浣跨敤绾㈠寘娆℃暟 + List<Integer> list = new ArrayList<Integer>(); + list.add(BanLiShopOrder.STATE_SUCCESS); + data.put("shopNum", banLiShopOrderService.countByUidAndState(uid, list)); + out.print(JsonUtil.loadTrueResult(data)); + } } -- Gitblit v1.8.0