From 469bba3a544b3beef0c170f6fce5804c9e8a9676 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期五, 10 四月 2020 17:02:51 +0800 Subject: [PATCH] 消息 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserOrderControllerV2.java | 437 ++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 337 insertions(+), 100 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserOrderControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserOrderControllerV2.java index 794838e..49234eb 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserOrderControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserOrderControllerV2.java @@ -20,7 +20,9 @@ import com.yeshi.fanli.entity.accept.AcceptData; import com.yeshi.fanli.entity.bus.user.HongBaoV2; +import com.yeshi.fanli.entity.bus.user.ThreeSale; import com.yeshi.fanli.entity.bus.user.UserInfo; +import com.yeshi.fanli.entity.bus.user.UserSystemCouponRecord; import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum; import com.yeshi.fanli.entity.order.CommonOrder; import com.yeshi.fanli.entity.order.CommonOrderGoods; @@ -28,8 +30,11 @@ import com.yeshi.fanli.entity.order.HongBaoOrder; import com.yeshi.fanli.entity.order.InviteOrderSubsidy; import com.yeshi.fanli.entity.system.ConfigKeyEnum; +import com.yeshi.fanli.entity.system.SystemCoupon.CouponTypeEnum; +import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder; import com.yeshi.fanli.exception.order.CommonOrderException; import com.yeshi.fanli.log.LogHelper; +import com.yeshi.fanli.service.inter.common.JumpDetailV2Service; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.count.HongBaoV2CountService; import com.yeshi.fanli.service.inter.order.CommonOrderGoodsService; @@ -38,9 +43,13 @@ import com.yeshi.fanli.service.inter.order.HongBaoOrderService; import com.yeshi.fanli.service.inter.order.InviteOrderSubsidyServiceV2; import com.yeshi.fanli.service.inter.order.OrderHongBaoMoneyComputeService; +import com.yeshi.fanli.service.inter.order.tb.TaoBaoWeiQuanOrderService; import com.yeshi.fanli.service.inter.user.UserCustomSettingsService; import com.yeshi.fanli.service.inter.user.UserInfoExtraService; import com.yeshi.fanli.service.inter.user.UserInfoService; +import com.yeshi.fanli.service.inter.user.UserSystemCouponRecordService; +import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce; +import com.yeshi.fanli.service.inter.user.invite.UserInviteService; import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.MoneyBigDecimalUtil; @@ -50,7 +59,9 @@ import com.yeshi.fanli.util.account.UserUtil; import com.yeshi.fanli.util.user.UserLevelUtil; import com.yeshi.fanli.vo.order.CommonOrderVO; +import com.yeshi.fanli.vo.order.CurrentBonusVO; import com.yeshi.fanli.vo.order.GoodsRebateVO; +import com.yeshi.fanli.vo.order.HongBaoCountVO; import com.yeshi.fanli.vo.order.OrderCountVO; import com.yeshi.fanli.vo.order.OrderRebateVO; import com.yeshi.fanli.vo.order.TeamBonusVO; @@ -101,6 +112,21 @@ @Resource private CommonOrderGoodsService commonOrderGoodsService; + + @Resource + private TaoBaoWeiQuanOrderService taoBaoWeiQuanOrderService; + + @Resource + private JumpDetailV2Service jumpDetailV2Service; + + @Resource + private UserSystemCouponRecordService userSystemCouponRecordService; + + @Resource + private UserInviteService userInviteService; + + @Resource + private ThreeSaleSerivce threeSaleSerivce; /** * 璁㈠崟鍒楄〃 @@ -241,13 +267,21 @@ } } } - - // 鏌ヨ鍒楄〃 - List<CommonOrderVO> list = commonOrderService.getOrderByUid(acceptData, page, uid, state, orderType, - orderState, orderNo, startTime, endTime, dateType, listSource); - // 缁熻鎬绘暟 - long count = commonOrderService.countGroupOrderNoByUid(uid, state, orderType, orderState, orderNo, - startTime, endTime, dateType, listSource); + + + long count = 0L; + List<CommonOrderVO> list = null; + if (VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion())) { + list = commonOrderService.getOrderList(acceptData, page, uid, state, orderType, + orderState, orderNo, startTime, endTime, dateType, listSource); + count = commonOrderService.countOrderList(uid, state, orderType, orderState, orderNo, + startTime, endTime, dateType, listSource); + } else { + list = commonOrderService.getOrderByUid(acceptData, page, uid, state, orderType, + orderState, orderNo, startTime, endTime, dateType, listSource); + count = commonOrderService.countGroupOrderNoByUid(uid, state, orderType, orderState, orderNo, + startTime, endTime, dateType, listSource); + } // 鍒ゆ柇鏄惁闇�瑕佹樉绀鸿鍗曟壘鍥炴彁绀� 8绉掑唴璇锋眰3娆¤Е鍙� String orderFindUrl = null; @@ -419,15 +453,52 @@ BigDecimal selfMoney = hongBaoV2CountService.getRewardMoneyToCount(uid, dateType, 1, null); BigDecimal shareMoney = hongBaoV2CountService.getRewardMoneyToCount(uid, dateType, 2, null); - BigDecimal inviteMoney = hongBaoV2CountService.getRewardMoneyToCount(uid, dateType, 3, null); - + JSONObject data = new JSONObject(); data.put("show", show); data.put("selfMoney", selfMoney.setScale(2, BigDecimal.ROUND_DOWN).toString()); data.put("shareMoney", shareMoney.setScale(2, BigDecimal.ROUND_DOWN).toString()); - data.put("inviteMoney", inviteMoney.setScale(2, BigDecimal.ROUND_DOWN).toString()); - - // 鍥㈤槦濂栧姳 TODO + + + BigDecimal teamMoney = new BigDecimal(0); + if (!VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion())) { + teamMoney = hongBaoV2CountService.getRewardMoneyToCount(uid, dateType, 3, null); + } else { + BigDecimal bonus = null; + BigDecimal subsidy = null; + BigDecimal dividend = null; // TODO 鍒嗙孩缁熻 + if (dateType == 4) { // 宸插埌璐� + dividend = new BigDecimal(0); + bonus = hongBaoV2CountService.geBonusByuid(uid, dateType, 3, 2); + subsidy = inviteOrderSubsidyServiceV2.sumMoneyByUidAndDateAndState(uid,dateType,null,3); + } else { // 鏈け鏁� + bonus = hongBaoV2CountService.geBonusByuid(uid, dateType, 3, 4); + subsidy = inviteOrderSubsidyServiceV2.sumValidMoneyByUidAndDate(uid,dateType,null); + } + + dividend = new BigDecimal(0); + // 鎬诲洟闃熷鍔� + teamMoney = bonus.add(subsidy).add(dividend); + + JSONObject paramsFanli = new JSONObject(); + paramsFanli.put("type", "1"); + data.put("paramsFanli", paramsFanli); + data.put("jumpFanli", jumpDetailV2Service.getByTypeCache("fanli_share_statistics", + Constant.getPlatformCode(acceptData.getPlatform()), Integer.parseInt(acceptData.getVersion()))); + + JSONObject paramsShare = new JSONObject(); + paramsShare.put("type", "2"); + data.put("paramsShare", paramsShare); + data.put("jumpShare", jumpDetailV2Service.getByTypeCache("fanli_share_statistics", + Constant.getPlatformCode(acceptData.getPlatform()), Integer.parseInt(acceptData.getVersion()))); + + JSONObject paramsTeam = new JSONObject(); + paramsTeam.put("type", "3"); + data.put("paramsTeam", paramsTeam); + data.put("jumpTeam", jumpDetailV2Service.getByTypeCache("team_statistics", + Constant.getPlatformCode(acceptData.getPlatform()), Integer.parseInt(acceptData.getVersion()))); + } + data.put("inviteMoney", teamMoney.setScale(2, BigDecimal.ROUND_DOWN).toString()); out.print(JsonUtil.loadTrueResult(data)); } @@ -601,116 +672,282 @@ return; } - // 鎸夎鍗曞彿 鏌ヨ - List<CommonOrder> commonOrderList = commonOrderService.listBySourceTypeAndOrderId(sourceType, orderNo); - Integer rank = commonOrderList.get(0).getUrank(); - UserLevelEnum userLevel = UserLevelUtil.getByOrderRank(rank); - if (userLevel == null) - userLevel = UserLevelEnum.daRen; - - List<HongBaoOrder> hongBaoOrderList = hongBaoOrderService.listDetailByOrderIdAndSourceType(orderNo, sourceType); - - OrderRebateVO orderRebateVO = new OrderRebateVO(); - List<GoodsRebateVO> voList = new ArrayList<>(); - BigDecimal totalMoney = new BigDecimal(0); - UserLevelEnum upperLevel = UserLevelUtil.getNextLevel(userLevel); - BigDecimal upperTotalMoney = new BigDecimal(0); - Map<Long, CommonOrderGoods> orderGoodsMap = new HashMap<>(); - + // 绾㈠寘淇℃伅 + List<HongBaoOrder> hoList = hongBaoOrderService.listDetailByOrderIdAndSourceTypeAndUid(orderNo, sourceType, uid); + HongBaoCountVO hongBaoCountVO = hongBaoOrderService.getHongBaoCountVO(hoList); + + Integer hongBaoState = hongBaoCountVO.getCurrentState(); + String stateDesc = ""; + String predictDesc = ""; + if (HongBaoV2.STATE_KELINGQU == hongBaoState || HongBaoV2.STATE_BUKELINGQU == hongBaoState) { + stateDesc = "鏈埌璐�"; + predictDesc = "棰勪及"; + } else if (HongBaoV2.STATE_YILINGQU == hongBaoState) { + stateDesc = "宸插埌璐�"; + } else if (HongBaoV2.STATE_SHIXIAO == hongBaoState) { + stateDesc = "宸插け鏁�"; + } + + int type = 0; + String typeName = ""; + int hongBaoType = hoList.get(0).getHongBaoV2().getType(); + if (HongBaoV2.TYPE_ZIGOU == hongBaoType || 2 == hongBaoType) { + type = 1; + typeName = "杩斿埄"; + } else if (HongBaoV2.TYPE_SHARE_GOODS == hongBaoType) { + type = 2; + typeName = "濂栭噾"; + } else if (HongBaoV2.TYPE_SHARE_YIJI == hongBaoType || HongBaoV2.TYPE_SHARE_ERJI == hongBaoType + || HongBaoV2.TYPE_YAOQING == hongBaoType || HongBaoV2.TYPE_YIJI == hongBaoType + || HongBaoV2.TYPE_ERJI == hongBaoType) { + type = 3; + typeName = "鏀剁泭"; + } + List<Long> goodsIdList = new ArrayList<>(); - if (hongBaoOrderList != null) - for (HongBaoOrder hongBaoOrder : hongBaoOrderList) { + if (hoList != null) + for (HongBaoOrder hongBaoOrder : hoList) { if (hongBaoOrder.getCommonOrder() != null) goodsIdList.add(hongBaoOrder.getCommonOrder().getCommonOrderGoods().getId()); } + Map<Long, CommonOrderGoods> orderGoodsMap = new HashMap<>(); List<CommonOrderGoods> goodsList = commonOrderGoodsService.listByByPrimaryKeys(goodsIdList); if (goodsList != null) for (CommonOrderGoods goods : goodsList) orderGoodsMap.put(goods.getId(), goods); - - if (userLevel == UserLevelEnum.daRen) { - for (HongBaoOrder hongBaoOrder : hongBaoOrderList) { - if (hongBaoOrder.getHongBaoV2().getState() == HongBaoV2.STATE_SHIXIAO) - hongBaoOrder.getHongBaoV2().setMoney(new BigDecimal(0)); - CommonOrder commonOrder = hongBaoOrder.getCommonOrder(); - GoodsRebateVO goodsVO = new GoodsRebateVO(); - if (orderGoodsMap.get(commonOrder.getCommonOrderGoods().getId()) != null) { - goodsVO.setTitle(orderGoodsMap.get(commonOrder.getCommonOrderGoods().getId()).getTitle()); - goodsVO.setPicture(orderGoodsMap.get(commonOrder.getCommonOrderGoods().getId()).getPicture()); - } - BigDecimal payment = hongBaoOrder.getCommonOrder().getPayment(); - if (hongBaoOrder.getCommonOrder().getSettlement() != null) - payment = hongBaoOrder.getCommonOrder().getSettlement(); - if (payment == null) - payment = new BigDecimal(0); - - goodsVO.setActualPay("楼" + payment); - - if (payment.compareTo(new BigDecimal(0)) <= 0) { - goodsVO.setFanliRate("X0%"); + + + OrderRebateVO orderRebateVO = new OrderRebateVO(); + // 绾㈠寘淇℃伅 + BigDecimal hongBao = hongBaoCountVO.getValidMoney(); + if (sourceType == Constant.SOURCE_TYPE_TAOBAO) { + List<TaoBaoWeiQuanOrder> listWQ = taoBaoWeiQuanOrderService.getWeiQuanSuccessOrders(orderNo); + if (listWQ != null && listWQ.size() > 0) { + BigDecimal weiQuanMoney = commonOrderService.getWeiQuanMoney(listWQ, sourceType, uid); + + orderRebateVO.setWq(true); + orderRebateVO.setWqMoney("-楼"+ weiQuanMoney.setScale(2, BigDecimal.ROUND_DOWN)); + if (hongBao.compareTo(weiQuanMoney) > 0) { + orderRebateVO.setWqDesc("閮ㄥ垎鍞悗閫�鍥�"); } else { - goodsVO.setFanliRate("X" - + MoneyBigDecimalUtil - .div(hongBaoOrder.getHongBaoV2().getMoney().multiply(new BigDecimal(100)), payment) - + "%"); + orderRebateVO.setWqDesc("鍞悗閫�鍥�"); } - goodsVO.setFanliExpect("楼" + hongBaoOrder.getHongBaoV2().getMoney()); - voList.add(goodsVO); - totalMoney = totalMoney.add(hongBaoOrder.getHongBaoV2().getMoney()); - if (upperLevel != null) { - upperTotalMoney = upperTotalMoney - .add(orderHongBaoMoneyComputeService.computeFanliMoney(commonOrder, upperLevel)); - } + // 璁$畻鍓╀綑绾㈠寘 + hongBao = MoneyBigDecimalUtil.sub(hongBao, weiQuanMoney); } - orderRebateVO.setListGoods(voList); - } else { - for (HongBaoOrder hongBaoOrder : hongBaoOrderList) { - if (hongBaoOrder.getHongBaoV2().getState() == HongBaoV2.STATE_SHIXIAO) - hongBaoOrder.getHongBaoV2().setMoney(new BigDecimal(0)); - CommonOrder commonOrder = hongBaoOrder.getCommonOrder(); - GoodsRebateVO goodsVO = new GoodsRebateVO(); - if (orderGoodsMap.get(commonOrder.getCommonOrderGoods().getId()) != null) { - goodsVO.setTitle(orderGoodsMap.get(commonOrder.getCommonOrderGoods().getId()).getTitle()); - goodsVO.setPicture(orderGoodsMap.get(commonOrder.getCommonOrderGoods().getId()).getPicture()); - } - BigDecimal payment = hongBaoOrder.getCommonOrder().getPayment(); - if (hongBaoOrder.getCommonOrder().getSettlement() != null) - payment = hongBaoOrder.getCommonOrder().getSettlement(); - if (payment == null) - payment = new BigDecimal(0); - - goodsVO.setActualPay("楼" + payment); - - BigDecimal commission = orderHongBaoMoneyComputeService.computeBaseFanliMoney(commonOrder); - goodsVO.setCommision("楼" +commission); - - BigDecimal darenFanli = orderHongBaoMoneyComputeService.computeFanliMoney(commonOrder, - UserLevelEnum.daRen); - - BigDecimal vipFanli = hongBaoOrder.getHongBaoV2().getMoney(); - - goodsVO.setOriginSubsidy(darenFanli.subtract(commission) + ""); - goodsVO.setSubsidy("楼" +vipFanli.subtract(commission)); - voList.add(goodsVO); - totalMoney = totalMoney.add(vipFanli); - if (upperLevel != null) { - upperTotalMoney = upperTotalMoney - .add(orderHongBaoMoneyComputeService.computeFanliMoney(commonOrder, upperLevel)); - } - } - orderRebateVO.setListGoods(voList); } - orderRebateVO.setTotalFanLi("楼" + totalMoney); + orderRebateVO.setFanLiDesc(predictDesc + typeName); + orderRebateVO.setFanLi("楼" + hongBao.setScale(2)); + + HongBaoV2 hongBaoV2 = hoList.get(0).getHongBaoV2(); + UserLevelEnum userLevel = UserLevelUtil.getByOrderRank(hongBaoV2.getUrank()); + if (userLevel == null) + userLevel = UserLevelEnum.daRen; + + UserLevelEnum upperLevel = UserLevelUtil.getNextLevel(userLevel); + + BigDecimal upperTotalMoney = new BigDecimal(0); + List<GoodsRebateVO> voList = new ArrayList<>(); + for (HongBaoOrder hongBaoOrder : hoList) { + if (hongBaoOrder.getHongBaoV2().getState() == HongBaoV2.STATE_SHIXIAO) + hongBaoOrder.getHongBaoV2().setMoney(new BigDecimal(0)); + + GoodsRebateVO goodsVO = new GoodsRebateVO(); + + // 鏍囬銆佸浘鐗� + CommonOrder commonOrder = hongBaoOrder.getCommonOrder(); + if (orderGoodsMap.get(commonOrder.getCommonOrderGoods().getId()) != null) { + goodsVO.setTitle(orderGoodsMap.get(commonOrder.getCommonOrderGoods().getId()).getTitle()); + goodsVO.setPicture(orderGoodsMap.get(commonOrder.getCommonOrderGoods().getId()).getPicture()); + } + + // 瀹炰粯娆� + BigDecimal payment = hongBaoOrder.getCommonOrder().getPayment(); + if (hongBaoOrder.getCommonOrder().getSettlement() != null) + payment = hongBaoOrder.getCommonOrder().getSettlement(); + if (payment == null) + payment = new BigDecimal(0); + goodsVO.setActualPay("楼" + payment.setScale(2)); + + + BigDecimal commission = orderHongBaoMoneyComputeService.computeBaseFanliMoney(commonOrder); + if (type == 3) { // 濂栭噾 + goodsVO.setBonus(hongBaoOrder.getHongBaoV2().getMoney() +""); + } else { // 浣i噾 + goodsVO.setCommision("楼" +commission); + } + + // 骞冲彴琛ヨ创 + BigDecimal vipFanli = hongBaoOrder.getHongBaoV2().getMoney(); + goodsVO.setSubsidy(vipFanli.subtract(commission).setScale(2) + ""); + // 杈句汉琛ヨ创 + if (userLevel != UserLevelEnum.daRen) { + BigDecimal darenFanli = orderHongBaoMoneyComputeService.computeFanliMoney(commonOrder, UserLevelEnum.daRen); + goodsVO.setOriginSubsidy("楼" + darenFanli.subtract(commission).setScale(2) + ""); + } + + voList.add(goodsVO); + if (upperLevel != null) { + upperTotalMoney = upperTotalMoney + .add(orderHongBaoMoneyComputeService.computeFanliMoney(commonOrder, upperLevel)); + } + } + + // 鍥㈤槦琛ヨ创 + if (type == 3) { + BigDecimal teamSubsidy = null; + BigDecimal lowerSubsidy = null; + InviteOrderSubsidy inviteOrderSubsidy = inviteOrderSubsidyServiceV2.getByOrderNoAndType(uid, orderNo, sourceType); + if (inviteOrderSubsidy != null) { + teamSubsidy = inviteOrderSubsidy.getMoney(); + if (userLevel != UserLevelEnum.daRen) { + CommonOrder commonOrder = hoList.get(0).getCommonOrder(); + Integer urank = commonOrder.getUrank(); + UserLevelEnum buyerUserLevel = UserLevelUtil.getByOrderRank(urank); + boolean direct = false; + if (hongBaoV2.getType() == HongBaoV2.TYPE_YIJI || hongBaoV2.getType() == HongBaoV2.TYPE_SHARE_YIJI) { + direct = true; + } + // 璁$畻涓婁竴绾цˉ璐� + lowerSubsidy = getLowerSubsidy(inviteOrderSubsidy.getMoney(), commonOrder.getThirdCreateTime(), buyerUserLevel, userLevel, direct); + } + } else { + teamSubsidy = BigDecimal.valueOf(0.00); + lowerSubsidy = BigDecimal.valueOf(0.00); + } + + if (userLevel != UserLevelEnum.daRen) { + orderRebateVO.setOriginSubsidy("楼" + lowerSubsidy.setScale(2)); + } + orderRebateVO.setSubsidyDesc("鍥㈤槦琛ヨ创"); + orderRebateVO.setSubsidy(teamSubsidy.setScale(2) +""); + } + + orderRebateVO.setType(type); + orderRebateVO.setStateDesc(stateDesc); + orderRebateVO.setListGoods(voList); + + // 涓婄骇杩斿埄 if (upperLevel != null) { orderRebateVO.setUpperFanLi("楼" + upperTotalMoney); orderRebateVO.setUserLevel(upperLevel.name()); orderRebateVO.setJumpLink(upperLevel.getDetailLink()); } + // 濂栧姳鍒镐娇鐢� + Date accountTime = hongBaoCountVO.getAccountTime(); + if (accountTime != null) { + boolean vip = userInviteService.verifyVIP(uid); + Date endDay = DateUtil.plusDayDate(Constant.COUPON_REWARD_LIMIT_DAY, accountTime); + long currentTime = java.lang.System.currentTimeMillis(); + if (endDay.getTime() > currentTime && !vip) { + UserSystemCouponRecord couponRecord = userSystemCouponRecordService.getRecordByOrderNo(orderNo, null); + if (couponRecord == null + || (couponRecord.getCouponType() == CouponTypeEnum.rebatePercentCoupon.name() && couponRecord.getState() != UserSystemCouponRecord.STATE_SUCCESS)) { + orderRebateVO.setCoupon(true); + } + } + } + JSONObject data = new JSONObject(); data.put("result", orderRebateVO); JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); } + + + private BigDecimal getLowerSubsidy(BigDecimal money, Date downTime, UserLevelEnum buyerUserLevel, UserLevelEnum userLevel, boolean direct) { + // 鍘熷姣斾緥 + BigDecimal originRate = orderHongBaoMoneyComputeService.getTeamSubsidyRate(downTime, + buyerUserLevel, userLevel, direct); + + // 灏忎竴绾ф瘮渚� + BigDecimal darenRate = orderHongBaoMoneyComputeService.getTeamSubsidyRate(downTime, buyerUserLevel, UserLevelEnum.daRen, direct); + + return MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.div(money,originRate), darenRate); + } + + + /** + * 鏁版嵁缁熻 + * @param acceptData + * @param uid + * @param type 1鑷喘 2鍒嗕韩 3鍥㈤槦 + * @param out + */ + @RequestMapping(value = "getCurrentBonus", method = RequestMethod.POST) + public void getCurrentBonus(AcceptData acceptData, Long uid, Integer type, PrintWriter out) { + if (uid == null) { + out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�")); + return; + } + + JSONObject data = new JSONObject(); + if (type == 1 || type == 2) { + CurrentBonusVO bonus = new CurrentBonusVO(); + bonus.setToday(hongBaoV2CountService.geBonusByuid(uid, 1, type, 2).setScale(2, BigDecimal.ROUND_DOWN).toString()); + bonus.setYesterday(hongBaoV2CountService.geBonusByuid(uid, 2, type, 2).setScale(2, BigDecimal.ROUND_DOWN).toString()); + bonus.setThisMonth(hongBaoV2CountService.geBonusByuid(uid, 3, type, 2).setScale(2, BigDecimal.ROUND_DOWN).toString()); + bonus.setLastMonth(hongBaoV2CountService.geBonusByuid(uid, 4, type, 2).setScale(2, BigDecimal.ROUND_DOWN).toString()); + + CurrentBonusVO bonusNot = new CurrentBonusVO(); + bonusNot.setToday(hongBaoV2CountService.geBonusByuid(uid, 1, type, 1).setScale(2, BigDecimal.ROUND_DOWN).toString()); + bonusNot.setYesterday(hongBaoV2CountService.geBonusByuid(uid, 2, type, 1).setScale(2, BigDecimal.ROUND_DOWN).toString()); + bonusNot.setThisMonth(hongBaoV2CountService.geBonusByuid(uid, 3, type, 1).setScale(2, BigDecimal.ROUND_DOWN).toString()); + bonusNot.setLastMonth(hongBaoV2CountService.geBonusByuid(uid, 4, type, 1).setScale(2, BigDecimal.ROUND_DOWN).toString()); + + + data.put("bonus",bonus); + data.put("bonusNot",bonusNot); + data.put("total", hongBaoV2CountService.geBonusByuid(uid, null, type, 2).setScale(2, BigDecimal.ROUND_DOWN).toString()); + data.put("totalNot", hongBaoV2CountService.geBonusByuid(uid, null, type, 1).setScale(2, BigDecimal.ROUND_DOWN).toString()); + } else { + CurrentBonusVO bonus = new CurrentBonusVO(); + bonus.setToday(hongBaoV2CountService.geBonusByuid(uid, 1, type, 4).setScale(2, BigDecimal.ROUND_DOWN).toString()); + bonus.setYesterday(hongBaoV2CountService.geBonusByuid(uid, 2, type, 4).setScale(2, BigDecimal.ROUND_DOWN).toString()); + bonus.setThisMonth(hongBaoV2CountService.geBonusByuid(uid, 3, type, 4).setScale(2, BigDecimal.ROUND_DOWN).toString()); + bonus.setLastMonth(hongBaoV2CountService.geBonusByuid(uid, 4, type, 2).setScale(2, BigDecimal.ROUND_DOWN).toString()); + + + CurrentBonusVO subsidy = new CurrentBonusVO(); + subsidy.setToday(inviteOrderSubsidyServiceV2.sumValidMoneyByUidAndDate(uid,1,null).setScale(2, BigDecimal.ROUND_DOWN).toString()); + subsidy.setYesterday(inviteOrderSubsidyServiceV2.sumValidMoneyByUidAndDate(uid,2,null).setScale(2, BigDecimal.ROUND_DOWN).toString()); + subsidy.setThisMonth(inviteOrderSubsidyServiceV2.sumValidMoneyByUidAndDate(uid,3,null).setScale(2, BigDecimal.ROUND_DOWN).toString()); + subsidy.setLastMonth(inviteOrderSubsidyServiceV2.sumMoneyByUidAndDateAndState(uid,4,null,3).setScale(2, BigDecimal.ROUND_DOWN).toString()); + + // TODO 鍒嗙孩缁熻 + CurrentBonusVO dividend = new CurrentBonusVO(); + dividend.setThisMonth("0.00"); + dividend.setLastMonth("0.00"); + + BigDecimal totalBonus = hongBaoV2CountService.geBonusByuid(uid, null, type, 2); + BigDecimal totalubsidy = inviteOrderSubsidyServiceV2.sumRecievedMoneyByUid(uid,null); + BigDecimal totalDividend = new BigDecimal(0); + + BigDecimal total = totalDividend.add(totalBonus).add(totalubsidy); + + + data.put("bonus",bonus); + data.put("subsidy",subsidy); + data.put("dividend",dividend); + data.put("subsidy",subsidy); + data.put("total", total.setScale(2, BigDecimal.ROUND_DOWN).toString()); + data.put("totalBonus", totalBonus.setScale(2, BigDecimal.ROUND_DOWN).toString()); + data.put("totalubsidy", totalubsidy.setScale(2, BigDecimal.ROUND_DOWN).toString()); + data.put("totalDividend", totalDividend.setScale(2, BigDecimal.ROUND_DOWN).toString()); + } + + String key = null; + if (type == 1) { + key = ConfigKeyEnum.bonusCountLinkFanli.getKey(); + } else if (type == 2) { + key = ConfigKeyEnum.bonusCountLinkShare.getKey(); + } else { + key = ConfigKeyEnum.bonusCountLinkTeam.getKey(); + } + + data.put("link",configService.get(key)); + out.print(JsonUtil.loadTrueResult(data)); + } } -- Gitblit v1.8.0