admin
2020-04-02 ae18b82458f50dd07ea5afff9b8cd0be4608fb45
删除团队奖励相关代码
5个文件已删除
10个文件已修改
1348 ■■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserOrderControllerV2.java 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/order/OrderTeamRewardMapper.java 142 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/order/OrderTeamReward.java 194 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/order/taobao/UpdateOrderJob.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/order/OrderTeamRewardMapper.xml 194 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/money/tb/TaoBaoWeiQuanDrawBackServiceImpl.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImplV2.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneySettleServiceImpl.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderTeamRewardServiceImpl.java 187 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/order/OrderMoneySettleService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/order/OrderProcessService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/order/OrderTeamRewardService.java 150 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/CMQManager.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserOrderControllerV2.java
@@ -27,7 +27,6 @@
import com.yeshi.fanli.entity.order.ESOrder;
import com.yeshi.fanli.entity.order.HongBaoOrder;
import com.yeshi.fanli.entity.order.InviteOrderSubsidy;
import com.yeshi.fanli.entity.order.OrderTeamReward;
import com.yeshi.fanli.entity.system.ConfigKeyEnum;
import com.yeshi.fanli.exception.order.CommonOrderException;
import com.yeshi.fanli.log.LogHelper;
@@ -39,7 +38,6 @@
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.OrderTeamRewardService;
import com.yeshi.fanli.service.inter.user.UserCustomSettingsService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
@@ -88,9 +86,6 @@
    @Resource
    private ESOrderService esOrderService;
    @Resource
    private OrderTeamRewardService orderTeamRewardService;
    @Resource
    private UserVIPInfoService userVIPInfoService;
@@ -433,21 +428,6 @@
        data.put("inviteMoney", inviteMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
        // 团队奖励 TODO
        if (VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion())) {
            BigDecimal teamSubsidy = inviteOrderSubsidyServiceV2.sumValidMoneyByUidAndDate(uid, dateType, null);
            if (teamSubsidy == null) {
                teamSubsidy = new BigDecimal(0);
            }
            BigDecimal teamReward = orderTeamRewardService.sumValidMoneyByUidAndDate(uid, dateType, null);
            if (teamReward == null) {
                teamReward = new BigDecimal(0);
            }
            data.put("teamSubsidy", teamSubsidy.setScale(2, BigDecimal.ROUND_DOWN).toString());
            data.put("teamReward", teamReward.setScale(2, BigDecimal.ROUND_DOWN).toString());
            data.put("tutorSubsidy", "0.00");
        }
        out.print(JsonUtil.loadTrueResult(data));
    }
@@ -479,7 +459,7 @@
            sumTeamSubsidy(out, user);
        } else if (type == 2) {
            // 奖励
            sumTeamReward(out, user);
            //TODO 团队奖励已经删除
        } else {
            // 导师津贴
            JSONObject data = new JSONObject();
@@ -598,113 +578,7 @@
        out.print(JsonUtil.loadTrueResult(data));
    }
    /**
     * 统计团队奖励
     * @param out
     * @param user
     */
    private void sumTeamReward(PrintWriter out, UserInfo user) {
        Long uid = user.getId();
        // 是否VIP
        boolean vip = userVIPInfoService.isVIP(uid);
        JSONObject data = new JSONObject();
        data.put("link", configService.get(ConfigKeyEnum.orderTeamRewardLink.getKey()));
        if (!vip) {
            data.put("exist", false);
            out.print(JsonUtil.loadTrueResult(data));
            return;
        }
        data.put("exist", true);
        data.put("portrait", user.getPortrait());
        // 今日统计
        BigDecimal todayDirect = orderTeamRewardService.sumValidMoneyByUidAndDate(uid, 1, OrderTeamReward.LEVEL_ONE);
        if (todayDirect == null) {
            todayDirect = new BigDecimal(0);
        }
        BigDecimal todayIndirect = orderTeamRewardService.sumValidMoneyByUidAndDate(uid, 1, OrderTeamReward.LEVEL_TWO);
        if (todayIndirect == null) {
            todayIndirect = new BigDecimal(0);
        }
        TeamBonusVO today = new TeamBonusVO();
        today.setDirect(todayDirect.setScale(2, BigDecimal.ROUND_DOWN).toString());
        today.setIndirect(todayIndirect.setScale(2, BigDecimal.ROUND_DOWN).toString());
        today.setTotal(
                MoneyBigDecimalUtil.add(todayDirect, todayIndirect).setScale(2, BigDecimal.ROUND_DOWN).toString());
        // 昨日统计
        BigDecimal yesterdayDirect = orderTeamRewardService.sumValidMoneyByUidAndDate(uid, 2,
                OrderTeamReward.LEVEL_ONE);
        if (yesterdayDirect == null) {
            yesterdayDirect = new BigDecimal(0);
        }
        BigDecimal yesterdayIndirect = orderTeamRewardService.sumValidMoneyByUidAndDate(uid, 2,
                OrderTeamReward.LEVEL_TWO);
        if (yesterdayIndirect == null) {
            yesterdayIndirect = new BigDecimal(0);
        }
        TeamBonusVO yesterday = new TeamBonusVO();
        yesterday.setDirect(yesterdayDirect.setScale(2, BigDecimal.ROUND_DOWN).toString());
        yesterday.setIndirect(yesterdayIndirect.setScale(2, BigDecimal.ROUND_DOWN).toString());
        yesterday.setTotal(MoneyBigDecimalUtil.add(yesterdayDirect, yesterdayIndirect)
                .setScale(2, BigDecimal.ROUND_DOWN).toString());
        // 本月统计
        BigDecimal thisMonthDirect = orderTeamRewardService.sumValidMoneyByUidAndDate(uid, 3,
                OrderTeamReward.LEVEL_ONE);
        if (thisMonthDirect == null) {
            thisMonthDirect = new BigDecimal(0);
        }
        BigDecimal thisMonthIndirect = orderTeamRewardService.sumValidMoneyByUidAndDate(uid, 3,
                OrderTeamReward.LEVEL_TWO);
        if (thisMonthIndirect == null) {
            thisMonthIndirect = new BigDecimal(0);
        }
        TeamBonusVO thisMonth = new TeamBonusVO();
        thisMonth.setDirect(thisMonthDirect.setScale(2, BigDecimal.ROUND_DOWN).toString());
        thisMonth.setIndirect(thisMonthIndirect.setScale(2, BigDecimal.ROUND_DOWN).toString());
        thisMonth.setTotal(MoneyBigDecimalUtil.add(thisMonthDirect, thisMonthIndirect)
                .setScale(2, BigDecimal.ROUND_DOWN).toString());
        // 本月统计
        BigDecimal lastMonthDirect = orderTeamRewardService.sumValidMoneyByUidAndDate(uid, 4,
                OrderTeamReward.LEVEL_ONE);
        if (lastMonthDirect == null) {
            lastMonthDirect = new BigDecimal(0);
        }
        BigDecimal lastMonthIndirect = orderTeamRewardService.sumValidMoneyByUidAndDate(uid, 4,
                OrderTeamReward.LEVEL_TWO);
        if (lastMonthIndirect == null) {
            lastMonthIndirect = new BigDecimal(0);
        }
        TeamBonusVO lastMonth = new TeamBonusVO();
        lastMonth.setDirect(lastMonthDirect.setScale(2, BigDecimal.ROUND_DOWN).toString());
        lastMonth.setIndirect(lastMonthIndirect.setScale(2, BigDecimal.ROUND_DOWN).toString());
        lastMonth.setTotal(MoneyBigDecimalUtil.add(lastMonthDirect, lastMonthIndirect)
                .setScale(2, BigDecimal.ROUND_DOWN).toString());
        BigDecimal direct = orderTeamRewardService.sumRecievedMoneyByUid(uid, OrderTeamReward.LEVEL_ONE);
        if (direct == null) {
            direct = new BigDecimal(0);
        }
        BigDecimal indirect = orderTeamRewardService.sumRecievedMoneyByUid(uid, OrderTeamReward.LEVEL_TWO);
        if (indirect == null) {
            indirect = new BigDecimal(0);
        }
        BigDecimal total = MoneyBigDecimalUtil.add(direct, indirect);
        data.put("today", today);
        data.put("yesterday", yesterday);
        data.put("thisMonth", thisMonth);
        data.put("lastMonth", lastMonth);
        data.put("total", total.setScale(2, BigDecimal.ROUND_DOWN).toString());
        data.put("direct", direct.setScale(2, BigDecimal.ROUND_DOWN).toString());
        data.put("indirect", indirect.setScale(2, BigDecimal.ROUND_DOWN).toString());
        out.print(JsonUtil.loadTrueResult(data));
    }
    /**
     * 返利说明
     * @param acceptData
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/order/OrderTeamRewardMapper.java
File was deleted
fanli/src/main/java/com/yeshi/fanli/entity/order/OrderTeamReward.java
File was deleted
fanli/src/main/java/com/yeshi/fanli/job/order/taobao/UpdateOrderJob.java
@@ -385,18 +385,6 @@
        return ReturnT.SUCCESS;
    }
    // 团队奖励到账
    @XxlJob("fanliOrderTeamRewardHandler")
    public ReturnT<String> fanliOrderTeamRewardHandler(String param) throws Exception {
        if (StringUtil.isNullOrEmpty(param))
            orderProcessService.fanliOrderTeamReward();
        else {
            orderProcessService.fanliOrderTeamReward(Long.parseLong(param));
        }
        return ReturnT.SUCCESS;
    }
    // 维权订单处理-处理最近60天的
    // 30分钟一次
    @Scheduled(cron = "0 0/30 * * * ? ")
fanli/src/main/java/com/yeshi/fanli/mapping/order/OrderTeamRewardMapper.xml
File was deleted
fanli/src/main/java/com/yeshi/fanli/service/impl/money/tb/TaoBaoWeiQuanDrawBackServiceImpl.java
@@ -23,19 +23,16 @@
import com.yeshi.fanli.entity.bus.user.HongBaoV2;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.money.InviteOrderSubsidyDebt;
import com.yeshi.fanli.entity.money.OrderTeamRewardDebt;
import com.yeshi.fanli.entity.money.UserMoneyDebt;
import com.yeshi.fanli.entity.money.UserMoneyDebt.UserMoneyDebtTypeEnum;
import com.yeshi.fanli.entity.money.UserMoneyDetail;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.entity.order.HongBaoOrder;
import com.yeshi.fanli.entity.order.InviteOrderSubsidy;
import com.yeshi.fanli.entity.order.OrderTeamReward;
import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanDrawBack;
import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
import com.yeshi.fanli.exception.money.InviteOrderSubsidyDebtException;
import com.yeshi.fanli.exception.money.OrderTeamRewardDebtException;
import com.yeshi.fanli.exception.money.UserMoneyDebtException;
import com.yeshi.fanli.exception.money.UserMoneyDetailException;
import com.yeshi.fanli.exception.order.TaoBaoWeiQuanException;
@@ -48,7 +45,6 @@
import com.yeshi.fanli.service.inter.money.msg.UserMoneyMsgNotificationService;
import com.yeshi.fanli.service.inter.money.tb.TaoBaoWeiQuanDrawBackService;
import com.yeshi.fanli.service.inter.order.InviteOrderSubsidyService;
import com.yeshi.fanli.service.inter.order.OrderTeamRewardService;
import com.yeshi.fanli.service.inter.order.tb.TaoBaoWeiQuanOrderService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
@@ -91,9 +87,6 @@
    @Resource
    private InviteOrderSubsidyService inviteOrderSubsidyService;
    @Resource
    private OrderTeamRewardService orderTeamRewardService;
    @Resource
    private InviteOrderSubsidyDebtService inviteOrderSubsidyDebtService;
@@ -607,40 +600,10 @@
                throw new TaoBaoWeiQuanException(101, "邀请订单补贴异常");
            }
            doOrderTeamReard(subSidy.getId(), settleMent, weiQuanMoney, tradeId);
            //TODO 删除团队奖励维权处理
        }
    }
    /**
     * 团队奖励维权处理
     * @Title: doOrderTeamReard
     * @Description:
     * @param subsidyId
     * void 返回类型
     * @throws
     */
    private void doOrderTeamReard(Long subsidyId, BigDecimal settleMent, BigDecimal weiQuanMoney, String tradeId)
            throws TaoBaoWeiQuanException {
        List<OrderTeamReward> list = orderTeamRewardService.listBySubsidyId(subsidyId);
        if (list != null)
            for (OrderTeamReward reward : list) {
                BigDecimal drawBackMoney = computeDrawBackMoney(settleMent, weiQuanMoney, reward.getOriginalMoney());
                if (drawBackMoney.compareTo(new BigDecimal(0)) <= 0)
                    return;
                OrderTeamRewardDebt debt = new OrderTeamRewardDebt();
                debt.setBeiZhu("订单售后");
                debt.setOriginMoney(drawBackMoney);
                debt.setUid(reward.getUid());
                debt.setCreateTime(new Date());
                debt.setTradeId(tradeId);
                debt.setSourceId(reward.getId());
                try {
                    orderTeamRewardDebtService.addDebt(debt);
                } catch (OrderTeamRewardDebtException e) {
                    throw new TaoBaoWeiQuanException(102, "团队奖励异常");
                }
            }
    }
    @Override
    public TaoBaoWeiQuanDrawBack selectByOrderItemId(String orderItemId) {
fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImplV2.java
@@ -4,11 +4,9 @@
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import javax.annotation.Resource;
@@ -18,13 +16,10 @@
import com.yeshi.fanli.dao.mybatis.order.InviteOrderSubsidyMapper;
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.vip.UserLevelEnum;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.entity.order.HongBaoOrder;
import com.yeshi.fanli.entity.order.InviteOrderSubsidy;
import com.yeshi.fanli.entity.order.OrderTeamReward;
import com.yeshi.fanli.exception.order.CommonOrderException;
import com.yeshi.fanli.exception.order.InviteOrderSubsidyException;
import com.yeshi.fanli.exception.order.OrderTeamRewardException;
@@ -34,7 +29,6 @@
import com.yeshi.fanli.service.inter.order.InviteOrderSubsidyServiceV2;
import com.yeshi.fanli.service.inter.order.OrderHongBaoMapService;
import com.yeshi.fanli.service.inter.order.OrderHongBaoMoneyComputeService;
import com.yeshi.fanli.service.inter.order.OrderTeamRewardService;
import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService;
@@ -73,9 +67,6 @@
    private OrderHongBaoMoneyComputeService orderHongBaoMoneyComputeService;
    @Resource
    private OrderTeamRewardService orderTeamRewardService;
    @Resource
    private ThreeSaleSerivce threeSaleSerivce;
    @Override
@@ -110,86 +101,12 @@
            update.setState(orderSubsidy.getState());
            update.setUpdateTime(new Date());
            inviteOrderSubsidyMapper.updateByPrimaryKeySelective(update);
            // 添加奖励
            addTeamReward(old.getId());
            //TODO 删除添加奖励
        } else {// 添加
            if (orderSubsidy.getCreateTime() == null)
                orderSubsidy.setCreateTime(new Date());
            inviteOrderSubsidyMapper.insertSelective(orderSubsidy);
            // 添加奖励
            addTeamReward(orderSubsidy.getId());
        }
    }
    // 添加团队奖励
    private void addTeamReward(Long subsidyId) throws OrderTeamRewardException, CommonOrderException {
        // 查询团队奖励的人
        // 计算相应的比例
        InviteOrderSubsidy subsidy = inviteOrderSubsidyMapper.selectByPrimaryKeyForUpdate(subsidyId);
        if (subsidy == null)
            throw new OrderTeamRewardException(20, "补贴不存在");
        // 获取上4级用户
        List<CommonOrder> commonOrderList = commonOrderService.listBySourceTypeAndOrderId(subsidy.getSourceType(),
                subsidy.getOrderNo());
        if (commonOrderList == null || commonOrderList.size() == 0) {
            throw new CommonOrderException(1, "订单不存在");
        }
        Date orderTime = commonOrderList.get(0).getThirdCreateTime();
        Long sourceUid = commonOrderList.get(0).getUserInfo().getId();
        List<ThreeSale> bossList = threeSaleSerivce.getMyBossDeepList(sourceUid, 4);
        // 无需要团队奖励的上级
        if (bossList.size() < 3)
            return;
        Set<Long> rewardUid = new HashSet<>();
        for (int i = 2; i < bossList.size(); i++) {
            rewardUid.add(bossList.get(i).getBoss().getId());
        }
        // 删除补贴用户的下级用户
        for (int i = 0; i < bossList.size(); i++) {
            if (bossList.get(i).getBoss().getId().longValue() == subsidy.getUid()) {
                break;
            } else {
                bossList.remove(i);
                i--;
            }
        }
        for (int i = 1; i < bossList.size(); i++) {
            if (rewardUid.contains(bossList.get(i).getBoss().getId())) {
                UserInfo boss = bossList.get(i).getBoss();
                if (i == 1) {
                    if (bossList.get(i).getSucceedTime() < subsidy.getCreateTime().getTime()) {
                        UserLevelEnum userLevel = userLevelManager.getUserLevel(boss.getId(), orderTime);
                        BigDecimal rewardMoney = orderHongBaoMoneyComputeService
                                .computeFirstTeamReward(subsidy.getMoney(), subsidy.getCreateTime(), userLevel);
                        if (rewardMoney != null) {
                            // 添加奖励
                            orderTeamRewardService.addOrUpdate(subsidy, rewardMoney, boss.getId(),
                                    OrderTeamReward.LEVEL_ONE);
                        }
                    }
                } else if (i == 2) {
                    if (bossList.get(i).getSucceedTime() < subsidy.getCreateTime().getTime()) {
                        UserLevelEnum userLevel = userLevelManager.getUserLevel(boss.getId(), orderTime);
                        BigDecimal rewardMoney = orderHongBaoMoneyComputeService
                                .computeSecondTeamReward(subsidy.getMoney(), subsidy.getCreateTime(), userLevel);
                        if (rewardMoney != null) {
                            // 添加奖励
                            orderTeamRewardService.addOrUpdate(subsidy, rewardMoney, boss.getId(),
                                    OrderTeamReward.LEVEL_TWO);
                        }
                    }
                }
            }
            //TODO 删除添加奖励
        }
    }
@@ -346,7 +263,6 @@
                    update.setUpdateTime(new Date());
                    update.setInValidTime(new Date());
                    inviteOrderSubsidyMapper.updateByPrimaryKeySelective(update);
                    orderTeamRewardService.invalidByOrderIdAndSourceType(subsidy.getId());
                }
            }
    }
@@ -379,7 +295,6 @@
                    update.setValidTime(new Date());
                    update.setPreGetTime(preGetTime);
                    inviteOrderSubsidyMapper.updateByPrimaryKeySelective(update);
                    orderTeamRewardService.validByOrderIdAndSourceType(subsidy.getId(), preGetTime);
                }
            }
    }
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneySettleServiceImpl.java
@@ -37,11 +37,9 @@
import com.yeshi.fanli.entity.order.HongBaoOrder;
import com.yeshi.fanli.entity.order.HongBaoV2SettleTemp;
import com.yeshi.fanli.entity.order.InviteOrderSubsidy;
import com.yeshi.fanli.entity.order.OrderTeamReward;
import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
import com.yeshi.fanli.exception.money.InviteOrderSubsidyDebtException;
import com.yeshi.fanli.exception.money.OrderMoneySettleException;
import com.yeshi.fanli.exception.money.OrderTeamRewardDebtException;
import com.yeshi.fanli.exception.money.UserMoneyDetailException;
import com.yeshi.fanli.exception.order.TaoBaoWeiQuanException;
import com.yeshi.fanli.log.LogHelper;
@@ -55,7 +53,6 @@
import com.yeshi.fanli.service.inter.order.CommonOrderService;
import com.yeshi.fanli.service.inter.order.InviteOrderSubsidyService;
import com.yeshi.fanli.service.inter.order.OrderMoneySettleService;
import com.yeshi.fanli.service.inter.order.OrderTeamRewardService;
import com.yeshi.fanli.service.inter.order.tb.TaoBaoOrderService;
import com.yeshi.fanli.service.inter.user.UserSystemCouponService;
import com.yeshi.fanli.util.Constant;
@@ -116,8 +113,6 @@
    @Resource
    private HongBaoV2SettleTempService hongBaoV2SettleTempService;
    @Resource
    private OrderTeamRewardService orderTeamRewardService;
    @Resource
    private OrderTeamRewardDebtService orderTeamRewardDebtService;
@@ -1073,89 +1068,4 @@
        return debtMoney;
    }
    private BigDecimal kouKuanReward(List<OrderTeamReward> rewardList, BigDecimal debtMoney) {
        BigDecimal average = debtMoney.divide(new BigDecimal(rewardList.size()), 2, RoundingMode.UP);
        for (int i = 0; i < rewardList.size(); i++) {
            OrderTeamReward sidy = rewardList.get(i);
            BigDecimal subMoney = null;
            if (average.compareTo(sidy.getMoney()) >= 0) {
                subMoney = sidy.getMoney();
            } else {
                subMoney = average;
            }
            if (subMoney.compareTo(debtMoney) > 0)
                subMoney = debtMoney;
            debtMoney = debtMoney.subtract(subMoney);
            sidy.setMoney(sidy.getMoney().subtract(subMoney));
            if (sidy.getMoney().compareTo(new BigDecimal(0)) == 0) {
                rewardList.remove(i);
                i--;
            }
        }
        return debtMoney;
    }
    @Transactional(rollbackFor = Exception.class)
    @Override
    public void orderTeamRewardSettle(Long uid) throws OrderMoneySettleException {
        long count = orderTeamRewardService.countCanSettle(uid);
        if (count <= 0) {
            return;
        }
        int pageSize = 2000;
        int page = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
        // 查询出需要到账的奖励
        List<OrderTeamReward> totalList = new ArrayList<>();
        for (int i = 0; i < page; i++) {
            List<OrderTeamReward> list = orderTeamRewardService.listCanSettle(uid, i + 1, pageSize);
            if (list != null && list.size() > 0)
                totalList.addAll(list);
        }
        if (totalList.size() > 0) {
            BigDecimal debtMoney = orderTeamRewardDebtService.getTotalDebtMoney(uid);
            BigDecimal originalDebtMoney = new BigDecimal(debtMoney.toString());// 总的欠款
            List<OrderTeamReward> copyRewardList = new ArrayList<>();
            copyRewardList.addAll(totalList);
            while (debtMoney.compareTo(new BigDecimal(0)) > 0 && copyRewardList.size() > 0) {// 有欠款,还有还的
                debtMoney = kouKuanReward(copyRewardList, debtMoney);
            }
            // 偿还欠款金额
            BigDecimal repayMoney = originalDebtMoney.subtract(debtMoney);
            BigDecimal bannce = null;
            if (repayMoney.compareTo(new BigDecimal(0)) > 0) {
                try {
                    bannce = orderTeamRewardDebtService.repayDebtByUid(uid, repayMoney);
                    // 剩余的补贴金额
                } catch (OrderTeamRewardDebtException e) {
                    throw new OrderMoneySettleException(2, "还款异常");
                }
            }
            if (bannce != null && bannce.compareTo(new BigDecimal(0)) > 0) {
                // 如果有还剩下的钱就加到第一个上面
                totalList.get(0).setMoney(totalList.get(0).getMoney().add(bannce));
            }
            BigDecimal totalMoney = new BigDecimal(0);
            for (OrderTeamReward reward : totalList) {
                orderTeamRewardService.settleById(reward.getId(), reward.getMoney());
                totalMoney = totalMoney.add(reward.getMoney());
            }
            // 实际到账奖励
            UserMoneyDetail userMoneyDetail = null;
            try {
                userMoneyDetail = UserMoneyDetailFactory.createOrderTeamReward(uid, totalMoney, new Date());
            } catch (UserMoneyDetailException e) {
                throw new OrderMoneySettleException(1, "账户明细构建出错");
            }
            // 添加资金
            userMoneyService.addUserMoney(uid, totalMoney, userMoneyDetail);
            // 添加消息
            userMoneyMsgNotificationService.orderTeamReward(uid, new Date(), "系统自动下发", totalMoney,
                    userInfoMapper.selectAvailableByPrimaryKey(uid).getMyHongBao());
        }
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java
@@ -73,7 +73,6 @@
import com.yeshi.fanli.service.inter.order.LostOrderService;
import com.yeshi.fanli.service.inter.order.OrderMoneySettleService;
import com.yeshi.fanli.service.inter.order.OrderProcessService;
import com.yeshi.fanli.service.inter.order.OrderTeamRewardService;
import com.yeshi.fanli.service.inter.order.jd.JDOrderService;
import com.yeshi.fanli.service.inter.order.pdd.PDDOrderService;
import com.yeshi.fanli.service.inter.order.tb.TaoBaoOrderService;
@@ -167,8 +166,6 @@
    @Resource
    private HongBaoV2AddManager hongBaoV2AddManager;
    @Resource
    private OrderTeamRewardService orderTeamRewardService;
    /**
     * 是否是分享订单
@@ -1351,30 +1348,6 @@
            }
        }
        return false;
    }
    @Override
    public void fanliOrderTeamReward() {
        Date time = new Date();
        long count = orderTeamRewardService.countCanSettleUid(time);
        int pageSize = 500;
        int page = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
        List<Long> uidList = new ArrayList<>();
        for (int i = 0; i < page; i++) {
            List<Long> list = orderTeamRewardService.listCanSettleUid(time, i + 1, pageSize);
            if (list != null && list.size() > 0)
                uidList.addAll(list);
        }
        // 添加到队列
        if (uidList != null)
            for (Long uid : uidList)
                if (!Constant.IS_TEST)
                    CMQManager.getInstance().addFanLiOrderTeamRewardMsg(uid);
    }
    @Override
    public void fanliOrderTeamReward(Long uid) throws OrderMoneySettleException {
        orderMoneySettleService.orderTeamRewardSettle(uid);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderTeamRewardServiceImpl.java
File was deleted
fanli/src/main/java/com/yeshi/fanli/service/inter/order/OrderMoneySettleService.java
@@ -48,13 +48,4 @@
     */
    public void inviteSubsidySettle(Long uid, String taskKey) throws OrderMoneySettleException;
    /**
     * 团队奖励到账
     * @Title: orderTeamRewardSettle
     * @Description:
     * @param uid
     * void 返回类型
     * @throws
     */
    public void orderTeamRewardSettle(Long uid) throws OrderMoneySettleException;
}
fanli/src/main/java/com/yeshi/fanli/service/inter/order/OrderProcessService.java
@@ -76,25 +76,6 @@
    public void fanliInvaiteAndShare(Long uid) throws TaoBaoWeiQuanException;
    /**
     * 团队奖励到账
     * @Title: fanliOrderTeamReward
     * @Description:
     * void 返回类型
     * @throws
     */
    public void fanliOrderTeamReward();
    /**
     * 团队奖励到账(按用户)
     * @Title: fanliOrderTeamReward
     * @Description:
     * @param uid
     * void 返回类型
     * @throws
     */
    public void fanliOrderTeamReward(Long uid) throws OrderMoneySettleException;
    /**
     * 订单维权
     * 
     * @param orderList
fanli/src/main/java/com/yeshi/fanli/service/inter/order/OrderTeamRewardService.java
File was deleted
fanli/src/main/java/com/yeshi/fanli/util/CMQManager.java
@@ -296,29 +296,6 @@
    }
    
    // 团队奖励
    public void addFanLiOrderTeamRewardMsg(Long uid) {
        cmqUtil.sendMsg(FANLI_ORDER_TEAM_REWARD, uid + "");
    }
    public Map<String, Long> consumeOrderTeamRewardMsg(int count) {
        List<Message> list = cmqUtil.recieveMsg(count, FANLI_ORDER_TEAM_REWARD);
        Map<String, Long> map = new HashMap<>();
        if (list != null)
            for (Message msg : list) {
                String result = msg.msgBody;
                if (!StringUtil.isNullOrEmpty(result)) {
                    map.put(msg.receiptHandle, Long.parseLong(result));
                }
            }
        return map;
    }
    public void deleteOrderTeamRewardMsg(String receiptHandle) {
        cmqUtil.deleteMsg(FANLI_ORDER_TEAM_REWARD, receiptHandle);
    }
    // 维权订单
    public void addWeiQuanOrderMsg(TaoBaoWeiQuanOrder order) {
        cmqUtil.sendMsg(ORDER_WEIQUAN, new Gson().toJson(order));
fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java
@@ -35,7 +35,6 @@
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
import com.yeshi.fanli.exception.money.OrderMoneySettleException;
import com.yeshi.fanli.exception.order.TaoBaoWeiQuanException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.ad.DouYinClickEventService;
@@ -164,7 +163,6 @@
            doTaoBaoNewOrders();// 处理淘宝订单(刚刚产生的)
            doOrderFanLiNew();// 新版返利
            doOrderTiChengFanLi();// 处理订单提成返利
            doOrderTeamRewardFanLi();// 团队奖励到账
            doWeiQuanOrder();// 处理维权订单
            doPushIOS();// 处理发送IOS消息
            doUserMoneyDebtJob();// 债务偿还
@@ -381,47 +379,6 @@
                                    orderProcessService.fanliInvaiteAndShare(map.get(handler));
                                    CMQManager.getInstance().deleteFanLiTiChengMsg(handler);
                                } catch (TaoBaoWeiQuanException e) {
                                    try {
                                        LogHelper.errorDetailInfo(e);
                                    } catch (Exception e1) {
                                        e1.printStackTrace();
                                    }
                                } catch (Exception e) {
                                    try {
                                        LogHelper.errorDetailInfo(e, map.get(handler).toString(), "");
                                    } catch (Exception e1) {
                                        e1.printStackTrace();
                                    }
                                }
                            }
                        }
                    } catch (Exception e) {
                    }
                }
            }
        });
    }
    /**
     * 订单团队奖励到账
     */
    public void doOrderTeamRewardFanLi() {
        executor.execute(new Runnable() {
            @Override
            public void run() {
                while (true) {
                    try {
                        Map<String, Long> map = CMQManager.getInstance().consumeOrderTeamRewardMsg(16);
                        if (map != null) {
                            Iterator<String> its = map.keySet().iterator();
                            while (its.hasNext()) {
                                String handler = its.next();
                                try {
                                    orderProcessService.fanliOrderTeamReward(map.get(handler));
                                    CMQManager.getInstance().deleteOrderTeamRewardMsg(handler);
                                } catch (OrderMoneySettleException e) {
                                    try {
                                        LogHelper.errorDetailInfo(e);
                                    } catch (Exception e1) {